用户登录

你在这里

来自新用户的ANSYS qu:请帮我写一个for循环!

嗨:我是一个新的ANSYS用户,非常感谢帮助编写一个“for”类型的循环,以在这里找到一个例子:

http://www.mece.ualberta.ca/tutorials/ansys/CL/CAT/BirthDeath/Print.html

在这个例子的末尾是下面的段落。我想知道怎么做!有人能帮我修改一下代码吗?我都不知道从何说起。我将非常感激!

可以使用命令行代码在循环中编写此过程,以更准确地模拟元素随时间的死亡。与其在60秒内运行分析并在结束时杀死任何高于熔化温度的元素,不如在每个子步骤之后进行检查,以查看是否有任何元素高于指定温度并在该点杀死。这样,规定的对流就可以作用于那些被杀死的元素下面,更准确地模拟加热过程。

评论

查看关于*do命令的帮助。语法类似于

*do,

* enddo

您必须将解决方案加载步骤分解为许多子步骤。每个子步骤都有自己的solve命令。

例如

/。
Total_time = 1
Time_steps = 100
Time_inc = total_time/time_steps

*do, step_no, 1, num_step
时间,step_no * time_inc
nsub 1
所有的,所有的
…任何关于边界条件的东西…
解决
完成
/ post1
集,最后
etable发出,临时,!创建一个元素表
esel s etab发出273 !选择表273中的所有元素
完成
/溶解!重新进入溶液阶段
antype,休息!重新启动分析
ekill,所有!杀死所有选中的元素
esel,所有
* enddo

等。

嗨Biswajit:

非常感谢你的帮助。我尝试了你的建议,如果你有时间,我有几个问题要问。对不起——我知道这可能是非常简单的东西,但我正在努力学习!

我得到了几个错误信息(我的所有代码都在下面,我从你那里得到和修改的部分是蓝色粗体):首先,在输入我从你那里得到的代码后,我得到了“No DO trips needed, enter *ENDDO”。第二,在进入后处理程序后,我得到:“当前数据库不是来自以前的解决方案。这个数据库不可能重新启动”;那么“累积迭代1可能已经使用不同于当前存储的模型或边界条件数据来解决。POST1结果可能是错误的,除非您从Jobname.DB文件中进行此子步骤的RESUME。

如果你知道这些东西是什么意思,以及如何修复它,我将非常感谢听到它!我的代码如下。

/标题,元素死亡瞬态熔化(传导)
/ prep7 !进入预处理器

!定义几何

BLC4, 0, 0, 20日15 !创建矩形
BLC4 0 0 10 4 !创建较小的矩形(岩浆)
ASBA 1 2 !布尔减法(用面积1(大)减去面积2(小))

ET 1 Plane55 !元素类型

MP,洞穴,2262 e9 !定义密度
mp, c, 1, 0.001604 !定义比热
0.001 mp, kxx, !定义传热系数

SMRT 6 !筛孔尺寸
厘米,_Y吗,
Asel,,,, 3
厘米,_Y1,区域
CHKMSH,“区域”
CMSEL S _Y吗

亚_Y1 !网格区域
CMDEL, _Y吗!细化网格
CMDEL, _Y1
CMDEL, _Y2
FLST 5 6 2奥德4
FITEM 5 6
FITEM 5 22
FITEM 5 -25
FITEM 5 44
厘米,_Y吗,ELEM
Esel,,,, p51x
厘米,_Y1, ELEM
CMSEL S _Y吗
CMDEL, _Y吗
f, _y1,,,3,0,1,1
CMDEL, _Y1
完成

/溶解!进入溶液阶段
antype 4 !瞬态分析
nropt,完整!牛顿·拉夫森-富勒
SOLCONTROL,, 0
Total_t = 3.1536e13
T_steps = 100
T_inc = total_t/t_steps

*do, step_no, 1, num_step
时间,step_no * t_inc
nsub 1
所有的,所有的
!…任何关于边界条件的东西…
TUNIF, 200,
不洁净的,200,
集成电路,所有临时200 !初始条件,温度= 200
PRED 1
2628年FLST, 1,订货单,2
FITEM 2 1
FITEM 2 -628
200年IC、P51X TEMP,
FLST 2, 2, 4,订货单,2
FITEM 2 6
FITEM 2 7
/去

Dl, p51x,, temp,1200,1 !公元前
FLST 2, 2, 4,订货单,2
FITEM 2 2
FITEM 2 3
/去

DL P51X,临时,200年,1

/ STAT。
解决
完成
/ post1
集,最后
etable发出,临时,!创建一个元素表
esel s etab发出600 !选择表中600℃以上的所有元素
完成
/溶解!重新进入溶液阶段
antype,休息!重新启动分析
ekill,所有!杀死所有选中的元素
esel,所有
* enddo


/ post1 !进入postprocesser

集,第一
etable发出,临时,!创建一个元素表
esel s etab发出600 !从表中选择所有元素!超过600
完成

/溶解!重新进入溶液阶段
antype,休息!重新启动分析
ekill,所有!杀死所有选中的元素
esel,所有!重新选择所有元素

完成

/ post1 !进入后处理程序
集,第一!读入最后一个数据子集
esel,年代,生活!选择所有活动元素
plnsol,临时!绘制带电元件的温度曲线

! /续,10200100,1200
! pln,温度,
! /改建

*,我,1,10日,1
组,我
etable、删除
etable发出,临时,!创建一个元素表
esel s etab发出600 !从表中选择所有元素!超过600
完成

/溶解!重新进入溶液阶段
antype,休息!重新启动分析
ekill,所有!杀死所有选中的元素
esel,所有!重新选择所有元素

完成

/ post1 !进入后处理程序
集,我!读入最后一个数据子集
esel,年代,生活!选择所有活动元素
plnsol,临时
/控制,10200100,1200
pln、临时
/改建


* ENDDO

ANTIME, 100, 0.5, 0 2 0, 0.31536 e + 14

我只是注意到我在do循环中写了num_step而不是t_steps。在你继续之前,你必须纠正这个错误。

如果你想要一个注释,你必须在每一步结束时保存结果。我不确定之后该怎么做。

当你找到得到你想要的东西的正确方法时,请告诉我们。

——Biswajit

非常感谢你的耐心……我正在取得进展,当我弄清楚的时候我会告诉你的!

我只是想澄清,我仍然不能动画渐进元素死亡(即,元素消失随着温度的演变)。在什么时候(在“DO”循环中或之后)以及如何将结果从/solu放入动画的后处理器中?主要由于……

好吧,我被如何为这个例子制作动画难住了。非常感谢Biswajit;你的建议很有帮助。命令张贴在下面,不包括动画步骤。我打算发一个新帖子询问有关动画的问题。

/title,对流示例
/ prep7 !进入预处理器

!定义几何

k, 1 0 0 !定义要点
k, 2, 0.03, 0
k, 3、0.03、0.03
0.03 k, 4 0
, 1、2、3、4 !将关键点连接到窗体区域

!网格二维区域

ET 1 Plane55 !元素类型

MP,洞穴,2262 e9 !定义密度
mp, c, 1, 0.001604 !定义比热
1.8 mp, kxx, !定义传热系数

esize, 0.0025 !筛孔尺寸
亚!网格区域

完成

/溶解!进入溶液阶段

antype 4 !瞬态分析

Tot_time = 1e6
T_steps = 50
Time_inc = tot_time/t_steps

时间,1 e6 !分析结束时的时间

nropt,完整!牛顿·拉夫森-富勒
lumpm 0 !集总质量
nsubst 20 !子步骤数,20
neqit 10 !马克斯。的迭代
autots, !自动时间搜索关闭
lnsrch, !网上查询

TUNIF, 200,
集成电路,所有临时200 !初始条件,温度= 200

*do, i,1,t_steps, 1
/。
时间=我* time_inc
nsub 1
荒诞的,所有的一切!所有子步骤的输出数据

!…任何关于边界条件的东西…

!固定温度BC
nsel s ext !节点选择所有外部节点
科幻,conv 1600
NSEL,所有!重新选择所有节点
kbc, 1 !负载按步骤施加,而不是倾斜
/销售税,!关闭图形收敛监视器

解决
完成

/ post1
集,最后
etable发出,临时,!创建一个元素表
esel s etab发出900 !选择表500以上的所有元素
完成
/溶解!重新进入溶液阶段
antype,休息!重新启动分析
ekill,所有!杀死所有选中的元素
esel,所有

完成
* enddo

嗨,我试过你发布的代码,但它不能正确工作。问题发生在这里:


etable发出,临时,!创建一个元素表
esel s etab发出900 !选择表500以上的所有元素
完成
/溶解!重新进入溶液阶段
antype,休息!重新启动分析
ekill,所有!杀死所有选中的元素

似乎“esel”在“antype,,rest”之后无效,因此所有元素都已被杀死....

你能告诉我怎么处理这个吗?谢谢。

先生. .,

我是一名热能工程专业的研究生,我在这个代码上尝试了好几次……,在ANSYS APDL中。但是,我没有得到融化的过程。看来这里面有个错误。你能给我正确的APDL代码吗?

订阅新用户的“ANSYS qu”评论:帮我写一个“for”。循环请!”

最近的评论

更多的评论

辛迪加

认购辛迪加