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

[子程序] 塑性应变在温度循环中持续增加

[复制链接]
发表于 2017-12-5 17:21:38 | 显示全部楼层 |阅读模式 来自 荷兰
我写了一个塑性材料的子程序,用于模拟塑性材料在温度循环条件下,由于热膨胀系数不匹配导致的塑性变形。温度条件为-65C, 30 minutes; 150C, 30 minutes。由于材料是与时间,温度无关的,所以可以判断当材料处于恒温阶段,没有塑性变形发生。可是仿真结果发现,即使材料处于恒温阶段,也看到有塑性应变增加的情况。而软件提供的算法则没有看到有类似的现象。子程序采用的算法是newton-raphson,求解一组非线性方程得到的应力应变。请教论坛的各位,怎样才能使塑性应变在恒温阶段保持不变?

本帖子中包含更多资源

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

×
 楼主| 发表于 2017-12-7 15:39:42 | 显示全部楼层 来自 荷兰
Simdroid开发平台
既然高手都不说话,我就自问自答吧。这个问题主要是因为状态变量存储的方式不对。如帖中所示,等效塑性应变即为其中一个状态变量。在材料子程序中,已经迭代得到其增量,那么更新后的等效塑性应变为eqpl+deqpl. 此时如果直接把这个结果直接赋给状态变量,如SV(1)=eqpl+deqpl,就会得到如上的曲线,结果不正确。这是因为,软件在运算过程中会多次调用材料子程序,因此SV(1)=eqpl+deqpl也会重复计算多次。导致的结果就是塑性应变被重复加了几次。正确的赋值方法应该是: dSV(1)=deqpl, sv(1)=eqpl. 这样软件在迭代结束后,自动把塑性应变增量加到相应的状态变量,即:SV(1)=SV(1)+dSV(1), 且这样的更新只进行一次,不会重复计算。
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 17:18 , Processed in 0.026471 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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