ANSYS载荷步设置问题?
练习一个生死单元的问题,设置温度超过1400度就杀死。本来设置的时间步长是0.001s,可是只有前两步时间是0.001s,0.002s这样加上去的,第三步开始变成了1.002,第四步变成2.002,依此类推。不知道为什么会出现这种情况?我希望的情况是按0.001s的时间一直计算下去。
相关代码和结果图附在了后面。
dt1=0.001 T=0 allsel T=T+dt1 time,T NSUBST,1 solve !设置的时间先计算一下 save finish *do,i,1,10 /post1 etable,temper1,temp !将温度存储在temperature表中 esel,s,etab,temper1,1400 !选择所有温度大于等于1400的单元 finish /solu *get,elemnum,elem,0,count *if,elemnum,gt,0,then ekill,all esel,s,live *else allsel *endif eplot resume ANTYPE,,REST T=T+dt1 time,T nropt,full NSUBST,1 solve save finish *enddo

全部回答 (4)
默认 最新
主要看你在前一次求解后是否修改过会影响后续计算的参数,如果没有修改过,是否保存参数都没有关系;如果修改过则需要保存-恢复参数。
至于哪些参数会影响后续计算,必须保存,没有找到具体的说明。因此,为保险起见,还是保存一下为好。
2017年10月25日
已采纳 评论 点赞
试了一下你的命令流,发现几个问题:
1 循环中为什么要执行一次 RESUME,这是多余的。
2 关键问题是:重启动之前没有保存参数,重启动之后没有恢复参数,这样,重启动之前修改的参数,在重启动之后又回到修改之前的数值了。
3 循环变量 i 似乎不会保存,因此将循环中设置 T 的命令又做了修改,提供了两种处理方法,可任选一种,最后结果相同。
对你的命令流做了修改,请见附件。计算时间 T 从 0.001 到 0.011,间隔 0.001.
你试试看是否符合你的要求 (动画部分未作验证,你自己看一下)。
2017年10月23日
已采纳 评论 1 点赞
想要试算一下,但是只有求解部分无法试算。需要你把完整命令流发上来。
2017年10月22日
评论 2 点赞
就你的命令流来看,将循环中的:
T=T+dt1
改为:
T=(i+1)*dt1
应该可以解决问题。
2017年10月21日
评论 1 点赞

邹正刚 2017年10月25日


















