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

[子程序] GETVRM公用子程序的调用形式与UMATHT或UMATHT的参数值形式两个疑问

[复制链接]
发表于 2018-4-17 19:45:23 | 显示全部楼层 |阅读模式 来自 华中科技大学紫菘公寓
问题1.比方说我在USDFLD子程序中希望调用一个平面八节点单元中的9个积分点的静水压力值来计算梯度,在我的一次调用中,使用
      CALL GETVRM('HP',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,
      MATLAYO,LACCFLA)
来调用,那么我得到的静水压力是某一个积分点上的还是这个单元中所有9个积分点上的值呢,也就是说此时的ARRAY数组大小是ARRAY(1),还是ARRAY(9)呢

还有这个问题的进阶版,就是我想调用的是积分点的坐标,这时候我所得到的是a).ARRAY(2)也就是某个点的X,Y坐标值,还是b).ARRAY(9,2),还是c).ARRAY(2,9)呢

问题2,我想计算的是静水压力梯度,需要在USDFLD中得到9个积分点的静水压力值,然后计算他们的静水压力梯度来供另一个子程序UMATHT使用,那我需要传给UMATHT的是这9个积分点每一个上的梯度值,还是一个平均值什么的啊(这个问题的本质是UMATHT(和UMAT基本差不多)计算时需要的参数值是积分点上的还是单元平均值还是其它什么具体形式)
 楼主| 发表于 2018-4-17 20:11:50 | 显示全部楼层 来自 华中科技大学紫菘公寓
Simdroid开发平台
第二个问题主要是,如果第一个问题调用的只是一个积分点上的值,那就不知道该怎么实现9个积分点处值的综合计算,如果第一个问题调用的是所有积分点上的值,那就不知道USDFLD该返回该单元中何处的梯度值或者还是平均值到UMATHT中

ps,梯度值为利用9个点处的静水压力值和9个形函数计算所得,但计算出来的是一个关于单元等参坐标X,Y([-1,1]X[-1,1])的函数,所以还需要选择代入什么样的坐标值
回复 不支持

使用道具 举报

发表于 2018-4-18 19:43:32 | 显示全部楼层 来自 德国
看样子楼主是做氢扩散的 ,是吧,哈哈
回复 不支持

使用道具 举报

 楼主| 发表于 2018-4-24 19:59:50 | 显示全部楼层 来自 华中科技大学紫菘公寓
pxyg 发表于 2018-4-18 19:43
看样子楼主是做氢扩散的 ,是吧,哈哈

是的,毕设论文,好难啊好多东西没学过
回复 不支持

使用道具 举报

 楼主| 发表于 2018-4-24 20:02:46 | 显示全部楼层 来自 华中科技大学紫菘公寓
这个问题是我自己理解错了哈哈,原来abaqus每次调用用户子程序时都是在一个积分点上计算,所以要实现我的使用单元所有积分点上的静水压力值来计算静压梯度的目的得要储存一个迭代步中的所有单元的节点上的静压值在下一次迭代中才能实现计算
回复 不支持

使用道具 举报

发表于 2018-10-9 10:03:34 | 显示全部楼层 来自 河南开封
大神,这个程序能否调用模型中指定节点的z向位移信息呢?烦请指教一下!
回复 不支持

使用道具 举报

发表于 2023-2-17 16:02:17 | 显示全部楼层 来自 湖北武汉
楼主,我也想问这个问题。
如果一个单元有多个积分点,那GETVRM程序获得的是这个单元哪一个积分点上的数据呢?
以及,如果一个模型由许多单元构成,那GETVRM程序获得的是所有单元的数据吗,这些数据改如何查看呢?
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 05:10 , Processed in 0.037646 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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