第二章 在工具条上添加命令
可以随时利用ANSYS函数和宏往工具条上添加命令(在4 .1部分讲述如何生成宏)。通过定义缩写来达到这一目的。缩写就是ANSYS命令、GUI函数名或宏名的化名(最多可包含8个字符)。例如,MATPROP可以是一个列出材料特性的宏的缩写,SAVE_DB是SAVE 命令的缩写,QUIT是函数Fnc_/EXIT(调出\对话框)的缩写。
ANSYS程序提供了两种途径来利用缩写:1.在命令行的起始处键入缩写(执行缩写代表的宏、命令等)。2.通过ANSYS GUI中工具条上的按钮来执行宏或命令。
下图中的工具条包含代表已存在缩写的按钮。
图2-1 显示缺省按钮的工具条
一旦缩写,如SAVE_DB,已预先被定义,那么在工具条中该缩写及其执行的功能就可用了。一个工具条最多可包含100个缩写(可嵌套工具条来扩展这一数目)。可以根据需要重新定义或删除缩写,但是缩写不能自动保存,必须明确地保存到一个文件中,并且每次执行ANSYS都要重新加载。
2.1 修改工具条
生成缩写的途径有:通过*ABBR命令;通过Utility Menu > Macro > Edit Abbreviations或Utility Menu >MenuCtrls > Edit Toolbar菜单项。最好通过菜单项生成缩写,原因是:
? 单击OK按钮就自动更新工具条(若用*ABBR命令,则还需要用Utility
Menu >MenuCtrls > Update Toolbar菜单项来使新的缩写显现在工具条上)。 ? 可以很方便地按需要编辑缩写。 *ABBR命令的语法及相应的对话框是: *ABBR, Abbr, String 其中:
Abbr 表示将要显示在工具条上的缩写名,最多可包含8个字符。 String 为Abbr所代表的宏或命令的名称。如果String是一个宏的名称,该宏必须在宏的搜索路径之中。有关宏的更多信息在4.1部分。如果String涉及到ANSYS的拾取菜单或对话框(通过UIDL),就需要指定为\。例如,在定义上图\和 \缩写中,\\和 \都是唯一的UIDL函数名,用来确定与QUIT, POWRGRPH,和 ANSYSWEB缩写对应的ANSYS的拾取菜单或对话框。有关UIDL的更多信息在5.6部分。String最多可包含60个字符,但不能含有以下字符:字符 \,命令C***, /COM, /GOPR, /NOPR, /QUIT, /UI, 或 *END 。
缺省的ANSYS工具条包含如下预定义的缩写: *ABBR, SAVE_DB, SAVE
*ABBR, RESUM_DB, RESUME
第 2 页
*ABBR, QUIT, Fnc_/EXIT
*ABBR, POWRGRPH, Fnc_/GRAPHICS *ABBR, ANSYSWEB, Fnc_HomePage
例如,要加一个按钮到工具条中来调用宏文件mymacro.mac,如下图所示在Utility Menu >MenuCtrls > Edit Toolbar对话框中输入值。
图 2-2 加新缩写
新按钮被添加到如下图所示的工具条按钮条中。
图 2-3 新缩写的按钮
当执行的ANSYS任务发生改变时,工具条按钮也会改变。但是,工具条按钮被保存在数据库中,因此在ANSYS任务中执行任何一条\命令都将仍然包含原来的工具条按钮。要保存定制的按钮定义,必须通过Utility Menu >MenuCtrls > Save Toolbar菜单项明确地把它们保存到文件中,并通过Utility Menu >MenuCtrls > Restore Toolbar菜单项(*ABBRES命令)在每个ANSYS任务中进行恢复。可以在宏中编程完成这项功能。
注意-如果在同名文件中已经存在某些缩写,*ABBSAV命令将覆盖它们。
缩写文件的格式就是一些用来产生缩写的APDL命令序列。因此,如果要编辑很多按钮或要改变其顺序,通过一个文本编辑器来实现是最方便的了。例如,下面的文件就是由保存缺省工具条按钮而产生的:
/NOPR
*ABB,SAVE_DB ,SAVE *ABB,RESUM_DB,RESUME *ABB,QUIT ,Fnc_/EXIT *ABB,POWRGRPH,Fnc_/GRAPHICS *ABB,ANSYSWEB,Fnc_HomePage /GO
*ABB命令(*ABBR的缩写形式)定义按钮。第一行的/NOPR使下面的操作不被写入log文件,最后一行的/GO使后面的操作被写入log文件。
第 3 页
2.2 嵌套工具条缩写
上面讲的保存-恢复特性使嵌套缩写成为可能。通过在一个按钮下嵌套缩写,可以定义专用的工具条(假如有很多缩写放在一个工具条下,将会引起混乱,很难找到正确的按钮)。为了嵌套缩写,可以简单地定义一个恢复缩写文件的缩写。例如,下面的命令定义PREP_ABR作为一个缩写,该缩写从文件prep.abbr中恢复缩写。
*ABBR,PREP_ABR,ABBRES,,PREP,ABBR PREP_ABR 将作为一个按钮显示在工具条上。单击它,现在的按钮将被文件prep.abbr中所定义的那套按钮代替。
通过定义缩写来恢复文件,并在这些文件中包含缩写,就可以在某个特定的ANSYS任务中定义不受数目限制的缩写。甚至可以通过嵌套一些缩写文件把这一方法扩展到产生自己的菜单层次。在实现菜单层次的过程中,最好在每一个文件中添加一个\按钮的缩写以通过菜单返回。
第 4 页
第三章 使用参数
3.1 参数
参数是APDL的变量(它们更象Fortran变量,而不象Fortran参数)。不必明确声明参数类型。所有数值变量(整形或实形)都以双精度数储存。被使用但未声明的参数都被赋一个接近0的值,或\极小值\,大约为2?100。例如,若参数A被定义为A=B,但B没被定义,则赋给A一个极小值。
ANSYS包含两种类型的参数:标量和数组。本章前一部分的内容适用于这两种类型。3.11后的内容只适用于数组类型的参数。
括在单引号中的字符串(最多8个字符)可以赋给参数。APDL提供的数组参数的类型有:数值,字符和表(一种特殊的数值数组,能自动产生插值)。
可以用一个参数(代替数值或字符串)作为任何一个ANSYS命令的变量,该参数被求值并被赋给命令变量。例如,把值2.7赋给参数AA,然后执行命令:
N,12,AA,4
ANSYS程序将把该命令解释为:
N,12,2.7,4 (定义节点12为点X=2.7,Y=4)。
3.2 参数命名规则
参数名称必须以字母开头,且只能包含字母、数值和下划线。 下面列出一些有效和无效的参数名: 有效参数名: ABC PI
X_OR_Y 无效参数名:
NEW_VALUE (超过8个字符) 2CF3 (以数值开头) M&E (含非法字符\
在命名参数时,注意以下几点:
? 要避免参数名与经常使用的ANSYS标识字相同,如:
自由度(DOF)标识字(TEMP, UX, PRES等); 常用标识字(ALL, PICK, STAT等);
用户定义标识字(如用ETABLE命令定义的标识字); 数组类型标识字(如CHAR, ARRAY, TABLE等) ? 记住,名称为从ARG1 到 ARG9 和从AR10 到 AR99的参数被保留为局部参数。
通常,局部参数用于宏中(见4.4)。
? 参数名不能与用*ABBR命令定义的缩写相同。有关缩写的更多内容在2.1中。
第 5 页