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

[子程序] umat里怎么调取单元的最大Mises应力值

[复制链接]
发表于 2016-4-20 21:48:40 | 显示全部楼层 |阅读模式 来自 中国
悬赏10仿真币已解决
我在UMAT子程序里一个方程要用到分析部位所有单元的最大MISES应力值,怎么找到这个值啊求大神指点

最佳答案

查看完整内容

DIMENSION EleMIses(Eletotal,Nptotal)(单元总数 X 单个单元积分点总数目) 需要保证单元数目 是从1开始顺序编号。 common EleMIses **** *** *** EleMIses(NOEL,NPT)=Smises 直接赋值就可以 其中Noel 为单元编号(从1到Eletotal) Npt 为积分点编号(从1到Nptotal) ========= 好久不用有点忘记了 其实不用数组也可以 直接设定公共变量 MisesTemp 在同一增量步中 和 每个计算得到的 Smises 做比较 就可以得到最大值了 ...
发表于 2016-4-20 21:48:41 | 显示全部楼层 来自 上海
Simdroid开发平台
小猴子123 发表于 2016-4-21 16:38
C      CALCULATE MISES STRESS   
      SMISES=(STRESS(1)-STRESS(2))**2+(STRESS(2)-STRESS(3))**2
   ...



DIMENSION EleMIses(Eletotal,Nptotal)(单元总数 X 单个单元积分点总数目)
需要保证单元数目 是从1开始顺序编号。

common EleMIses

****
***
***

EleMIses(NOEL,NPT)=Smises
直接赋值就可以
其中Noel 为单元编号(从1到Eletotal)
Npt 为积分点编号(从1到Nptotal)
=========

好久不用有点忘记了
其实不用数组也可以

直接设定公共变量 MisesTemp

在同一增量步中
和 每个计算得到的 Smises 做比较
就可以得到最大值了。MaxMises

==========
另外如果学习使用子程序URDFIL就更简单了

帮助文档里面的例子 就是查询最大值
回复

使用道具 举报

发表于 2016-4-21 09:02:43 | 显示全部楼层 来自 上海
1. 计算单元的mises应力
2. 写个循环找到最大应力
3. 设置一个状态变量存储这个最大值
4. 调用
回复

使用道具 举报

 楼主| 发表于 2016-4-21 09:39:43 | 显示全部楼层 来自 中国
cartographer 发表于 2016-4-21 09:02
1. 计算单元的mises应力
2. 写个循环找到最大应力
3. 设置一个状态变量存储这个最大值

大神,第二步的写个循环的循环条件是怎么给的?umat里面计算出的mises应力是每个积分点处的应力吧
回复

使用道具 举报

发表于 2016-4-21 15:32:04 | 显示全部楼层 来自 上海
小猴子123 发表于 2016-4-21 09:39
大神,第二步的写个循环的循环条件是怎么给的?umat里面计算出的mises应力是每个积分点处的应力吧 ...

可以设置公共数组 存储每个单元每个积分的的值

在每个增量步结束的时候,对数组做循环 找到最大的值  存储为公共变量

========

当前步应该只能用上一步的最大值
回复

使用道具 举报

 楼主| 发表于 2016-4-21 16:38:54 | 显示全部楼层 来自 中国
cartographer 发表于 2016-4-21 15:32
可以设置公共数组 存储每个单元每个积分的的值

在每个增量步结束的时候,对数组做循环 找到最大的值   ...

C      CALCULATE MISES STRESS   
      SMISES=(STRESS(1)-STRESS(2))**2+(STRESS(2)-STRESS(3))**2
     1                               +(STRESS(3)-STRESS(1))**2
      DO K1=NDI+1,NTENS
      SMISES=SMISES+6*STRESS(K1)**2
      END DO
      SMISES=SQRT(SMISES/2.0)

这样计算的MISES应力,SMISES就是一个数,不知道怎么指定某个单元某个积分点,不同单元不同积分点的SMISES值怎么调取赋给定义的数组的?
回复

使用道具 举报

 楼主| 发表于 2016-4-21 20:01:56 | 显示全部楼层 来自 北京
cartographer 发表于 2016-4-20 21:48
DIMENSION EleMIses(Eletotal,Nptotal)(单元总数 X 单个单元积分点总数目)
需要保证单元数目 是从1开始 ...

多谢大神指点
回复

使用道具 举报

发表于 2017-2-16 21:31:44 | 显示全部楼层 来自 江苏徐州
不知道楼主这个程序最终编出来么?想请教下
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-28 17:55 , Processed in 0.038015 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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