找回密码
 注册
Simdroid-非首页
查看: 347|回复: 12

[二次开发] 如何在一个uel子程序中调用多个用户自定义单元

[复制链接]
发表于 2013-6-9 17:54:17 | 显示全部楼层 |阅读模式 来自 陕西西安
我做的问题中,由于一个结构中存在多种材料,每种材料的力学特性不同,所以我做了多个自定义单元,但现在要将自定义这些单元放在一个uel程序中应该怎么写?我看帮助文档里关于umat的内容“Using more than one user-defined mechanical material model"中的处理方法是加入如下语句:
If (cmname(1:4).EQ.'mat1') Then
   CALL UAMT_MAT1(..)
ELSE IF(CMNAME(1:4).EQ.'MAT2') THEN
   CALL UAMT_MAT2(..)
END IF
上面的语句能否用在处理uel调用多个用户自定义单元中?
发表于 2013-6-15 04:03:27 | 显示全部楼层 来自 美国
Simdroid开发平台
UEL中JTYPE变量就定义了单元的类别。假定你的问题定义了3种单元。在UEL中,使用
if (JTYPE.EQ.1) THEN
计算AMATRIX和RHS
endif
if (JTYPE.EQ.2) THEN
计算AMATRIX和RHS
endif
if (JTYPE.EQ.3) THEN
计算AMATRIX和RHS
endif
而在inp文件中,3种单元的调用为
*User element, type=U1,nodes=.........
*User element, type=U2,nodes=.........
*User element, type=U3,nodes=.........
回复 不支持

使用道具 举报

发表于 2014-3-5 16:32:38 | 显示全部楼层 来自 北京
bird08 发表于 2013-6-15 04:03
UEL中JTYPE变量就定义了单元的类别。假定你的问题定义了3种单元。在UEL中,使用
if (JTYPE.EQ.1) THEN
计算 ...

这几种自定义单元的自由度可以不同吗?
回复 不支持

使用道具 举报

发表于 2014-3-12 06:39:05 | 显示全部楼层 来自 美国
当然可以不同。
回复 不支持

使用道具 举报

发表于 2014-3-12 14:42:31 | 显示全部楼层 来自 北京
bird08 发表于 2014-3-12 06:39
当然可以不同。

你做过这方面的例子吗?我用两个自定义单元,一个算热力耦合,另一个想用来模拟断裂。最后出现
了错误(错误的意思是:子程序的连接有问题,我看了看程序都是按照人家已经编好了的程序的基础
上改的,不知道为什么怎么还会有错?)。
回复 不支持

使用道具 举报

发表于 2014-3-12 15:24:34 | 显示全部楼层 来自 北京
bird08 发表于 2013-6-15 04:03
UEL中JTYPE变量就定义了单元的类别。假定你的问题定义了3种单元。在UEL中,使用
if (JTYPE.EQ.1) THEN
计算 ...

你这个写错了吧?我刚试了试,if (JTYPE.EQ.1) THEN   ;计算AMATRIX和RHS  ; endif 无法计算出现code 693。把if (JTYPE.EQ.u1) 时,就可以算了。
回复 不支持

使用道具 举报

发表于 2014-4-19 13:12:23 | 显示全部楼层 来自 四川成都
本帖最后由 hou2012 于 2014-4-25 16:50 编辑

2楼bird08兄说的是正确的,应该采用if (JTYPE.EQ.1) 才能正常运行,发一张我在uel调试时截图为证,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

发表于 2015-6-15 21:43:02 | 显示全部楼层 来自 浙江杭州
本帖最后由 julessy 于 2015-6-15 21:44 编辑

2楼bird08兄和7楼hou2012兄说得都是正确的, inp中有这么两句”*User element, type=U11, nodes=......“以及“*Element, type=U11”,则此时输入UEL的参数JTYPE=11,这是JTYPE的含义。
回复 不支持

使用道具 举报

发表于 2015-7-12 15:37:54 | 显示全部楼层 来自 河北秦皇岛
hou2012 发表于 2014-4-19 13:12
2楼bird08兄说的是正确的,应该采用if (JTYPE.EQ.1) 才能正常运行,发一张我在uel调试时截图为证, ...

请问您这张截图是啥软件?
回复 不支持

使用道具 举报

发表于 2015-7-13 21:18:55 | 显示全部楼层 来自 四川成都
jakiepeng 发表于 2015-7-12 15:37
请问您这张截图是啥软件?

microsoft visual studio
回复 不支持

使用道具 举报

发表于 2015-7-16 19:43:03 | 显示全部楼层 来自 河北秦皇岛
hou2012 发表于 2015-7-13 21:18
microsoft visual studio

谢谢。。。。。。
回复 不支持

使用道具 举报

发表于 2018-1-14 21:58:58 | 显示全部楼层 来自 天津
hou2012 发表于 2014-4-19 13:12
2楼bird08兄说的是正确的,应该采用if (JTYPE.EQ.1) 才能正常运行,发一张我在uel调试时截图为证, ...

哇哦,你这个是VS联合abaqus的调试吗?可以一步步调试看结果的?
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-23 19:42 , Processed in 0.038238 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表