声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1174|回复: 1

[前后处理] *do 循环调用宏文件的问题

[复制链接]
发表于 2012-11-23 16:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
首先是一个子函数宏文件
submodal2
velo=arg1
parsav,all,mypara
/clear,start
/batch
parres,new,mypara
v=velo*1000/3.6 !velocity
/prep7
...
.!这一段是建立模型,求解..
...
solve
/output,'%velo%','txt'    !输出结果到'%velo%.txt' 中
SELIST,FILE,3,1
/output
finish
/CLEAR,NOSTART  ! Clear model since no SAVE found   
/input,start140,ans,'D:\Program Files\ANSYS Inc\v140\ANSYS\apdl\',,,,,,,,,,,,,,,,1  
/eof
把上面一段APDL保存在submodal2.mlib 中,供主函数调用。
下面一段是主函数。
*ulib,submodal2,mlib
*do,veloc,10,30,10
*use,submodal2,veloc
*enddo
将主函数保存为submodal3.mac .我的本意是主函数调用3次 子函数,输出3个文件,10.txt ,20.txt,30.txt.每个文件里含有每次计算的刚度矩阵和质量矩阵。但是实际结果是只有第一个文件10.txt里面含有结果,而后两个文件里是空白的。
如果我使用下面的APDL作为主函数,那么三个文件都有结果。
*ulib,submodal2,mlib
*use,submodal2,10
*use,submodal2,20
*use,submodal2,30
这两段主程序的差别只在于一个使用了*do循环,而另一个则没有使用。但是输出结果却不一样。这是为什么呢?有没有什么好办法呢?
回复
分享到:

使用道具 举报

发表于 2013-1-8 00:00 | 显示全部楼层
你这个问题,我以前见到过,你得注意循环过程中变量在重新导入模型过程中的丢失问题!! 很高兴遇到一个APDL高手
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-21 11:13 , Processed in 0.056012 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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