资源描述:
《ansys里面的宏命令》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、宏模块1010.宏基础APDL(ANSYS参数设计语言)最强有力的一个特征是创建宏的能力。宏就是一系列贮存在一个文件中的ANSYS命令,并且能象一个ANSYS命令一样来运行。一些有用的宏的能力:-它可以如同ANSYS命令一样具有参数。-分枝和循环用来控制一系列命令。-交互式特征如图形拾取,提示,以及对话框。-宏可以嵌套――一个宏引用第二个宏,第二个宏引用第三个宏,等等。――一直可嵌套20级。January30,2001Inventory#00144310-…宏基础在这一章,我们将给出创建宏的基本步骤:A.创建一个宏B.带参数的宏C.分枝D.循环E.总的指导方针F.练习更多的细节,请参考你的A
2、PDL程序指南或ANSYS系列软件。January30,2001Inventory#00144310-宏基础A.创建宏为了创建一个宏,在文本编辑器中,创建一系列命令,并以文件名name.mac保存它们.name以一个字母开始,可以达32个字符。在文件名中空格不允许。避免特殊字符。确保name不是一个有效的ANSYS命令。可以在开始或所有处理器(PREP7,POST1,等等)中进行检验。如果得到这种信息...不是有效的命令或宏…那么这个名字是“安全的”。扩展名.mac允许你运行宏如同运行一个命令一样:只需敲入name。January30,2001Inventory#00144310-宏基础…
3、创建宏例子:宏totvolume.mac用来计算所有单元的整个体积:esel,all!选择所有单元etable,volume,volu!将所有单元体积建立单元表ssum!求解单元表选项总和*get,totvol,ssum,,item,volume!totvol=体积总和*stat,totvol!列totvol值-在Post1(在求解之后)中发出totvolume来计算整个体积。January30,2001Inventory#00144310-宏基础…创建宏…创建一个宏寻找路径:-ANSYS首先在下列搜寻路径中寻找文件fame并运行它:1./ansys57/docu2.在ANSYS_MACR
4、OLIB环境变量路径中。3.在WINDOWS系统中的注册路径。4.当前工作路径。-如果在上级路径和下级路径同时寻找到同样的文件名,则采用上级路径。January30,2001Inventory#00144310-宏基础B.带参数的宏通过特殊的字符名,你可以创建多达20个参数的宏:-NAME,arg1,arg2,arg3,…,ar10,ar11,ar12,…,ar20参数如同标准的ANSYS命令中的参数,可以为:-数字-字符(被包括在单引号中)-参数(标量或数组)-参数表达式参数的意义由所定义的宏来决定。January30,2001Inventory#00144310-宏基础…带参数的宏例如
5、,我们可以定义宏totvolume.mac来计算指定类型的所有单元有体积和:-TOTVOLUME,TYPE宏具体如下:esel,s,type,,arg1etable,volume,volussum*get,totvol,ssum,,item,volume*vwrite,arg1,totvol(‘Totalvolumefortype’,f4.0,’elements=’,f8.2)求解之后在通用后处理器中发出totvolume,1将得出下列结果:January30,2001Inventory#00144310-宏基础…带参数的宏注意:-特殊的字符名ARG1-ARG9和AR10-AR99仅仅是局
6、部参数,仅仅在该宏中有效。一旦宏运行结束后并返回ANSYS主程序,它们将无意义。避免在模型的其它地方应用这些名称。-无论何时应用参数时,一定通过在宏中包含注释来描述它们的意义。例如,下面在宏totvolume.mac的开始处的注释是非常有用的。!MacroTOTVOLUME.MACtocalculatetotalvolumeofelements!Usage:TOTVOLUME,TYPE.validonlyinPOST1afterasolve!TYPE=validelementtypenumberesel,stype,,arg1……January30,2001Inventory#0014431
7、0-宏基础C.分枝通过应用IF-THEN-ELSE结构,在只有一定的条件满足的情况下,你可以运行一个命令或命令块。在*IF和*ELSEIF命令中,可以运用AND,OR,或XOR比较符。IF,A,EQ,B,AND,C,GT,D,THEN分枝以*IF开始和*ENDIF结束。*ELSEIF和*ELSE在它们中也可以使用:*if,x,eq,y,then,,,,,,,,,,,,*elseif,x,eq,z,then,,