ansys-APDL编程 - 图文 下载本文

NDFACE(E,FACE,LOC) NMFACE(E) 相同。仅仅考虑那些有相同维数和形状的单元。若邻近的单元多于一个,则返回-1,若无邻近单元,返回0。 单元E的某个表面(FACE)上的LOC处的节点。面号与面载荷关键号相同。LOC指表面上的节点位置(对于IJLK表面,LOC=1指节点I,2指节点J等) 包含选定节点的单元E的表面号。面号输出就是面载荷关键号。如果一个面上出现多个载荷关键号(例如线单元和面单元), 该面上的最小载荷关键号将被输出。 对于二维平面实体和三维体实体,返回包含选定节点的单元E的表面面积。对于轴对称单元,返回总表面积(360度)。 自由度结果: 节点N在X向的结构位移 节点N在Y向的结构位移 节点N在Z向的结构位移 节点N绕X向的结构转角 节点N绕Y向的结构转角 节点N绕Z向的结构转角 节点N上的温度 节点N上的压力 节点N在X向的流动速度 节点N 在Y向的流动速度 节点N 在Z向的流动速度 在节点N上的湍流动能 (FLOTRAN) 在节点N上的湍流能量耗散 (FLOTRAN) 节点N处的电压 在节点N上的磁标势 在节点N上的X向磁矢势 在节点N上的Y向磁矢势 在节点N上的Z 向磁矢势 ARFACE(E) UX(N) UY(N) UZ(N) ROTX(N) ROTY(N) ROTZ(N) TEMP(N) PRES(N) VX(N) VY(N) VZ(N) ENKE(N) ENDS(N) VOLT(N) MAG(N) AX(N) AY(N) AZ(N) 3.3.4 排列显示参数

一旦定义了参数,就可以用*STATUS命令把它们排列显示出来。如果仅用*STATUS命令(没有附加参数),将列表显示目前所有已定义的参数。下面的例子说明了该命令的用法及典型的排列显示:

*STATUS

PARAMETER STATUS- ( 5 PARAMETERS DEFINED) NAME VALUE TYPE DIMENSIONS ABC -24.0000000 SCALAR HEIGHT 57.0000000 SCALAR QR 2.070000000E+11 SCALAR X_OR_Y -24.0000000 SCALAR

CPARM CASE1 CHARACTER

第 10 页

通过Utility Menu>List>Other>Parameters 或 Utility Menu>List>Status>Parameters>All Parameters菜单项也可以得到参数的列表显示。

注意-以下划线(_)开头或结尾的参数不能由*STATUS命令显示出来。 可以通过给*STATUS命令定义附加参数来单独显示某些参数。下面的例子说明了如何显示参数ABC的状态:

*STATUS,ABC

PARAMETER STATUS- abc ( 5 PARAMETERS DEFINED) NAME VALUE TYPE DIMENSIONS ABC -24.0000000 SCALAR

也可以通过Utility Menu>List>Other>Named Parameter 或 Utility Menu>List>Status> Parameters>Named Parameters菜单项指定参数的列表显示。

注意-虽然ANSYS最多允许有1000个参数,但是由于GUI和ANSYS宏需要用到一些参数,所以用户可用参数不到1000个。用户界面定义的参数(内部参数)数目可由*STATUS命令列出。*GET,par,PARM,,MAX命令返回所有已定义参数的数目。

3.4 删除参数

可通过两种途径来删除参数:

1. 使用\命令,其右边为空。例如,使用该命令来删除参数QR:

QR=

2. 使用*SET命令(Utility Menu>Parameters>Scalar Parameters),但不给参数赋值。例如,

使用该命令来删除参数QR: *SET,QR,

令某个数值参数为0并没有删除该参数。同样,令某个字符参数为空的单引号(` `)或单引号中为空格也没有删除该参数。

3.5 字符参数的用法

一般地,字符参数用来提供文件名和扩展名。先把文件名赋给某个字符参数,然后,在需要用到文件名的地方用对应的参数来代替。同样,文件扩展名也可以先赋给某个字符参数,然后,在需要用到文件扩展名的地方用对应的参数代替(如作为Ext命令的参数)。这样,在批处理模式中,只需在输入文件中简单地改变字符参数的初始值就改变了用于多重运行的文件名。

注意-字符参数最多只能有8个字符。 下面说明字符参数的一般用法:

? 作为命令的参数(若该参数为文字数字类型);

? 在使用*USE命令时,作为代表宏名的参数(Utility Menu>Macro>Execute Data

Block);

NAME='MACRO' ! MACRO 为宏文件名 *USE,NAME ! 调用 MACRO宏

? 作为被调用宏的参数,该宏可由*USE命令调用或作为”未知命令”宏。允许使用下

面的任何方法: ABC='SX'

第 11 页

*USE,NAME,ABC 或

*USE,NAME,'SX'

DEF='SY'

NEWMACRO,DEF ! 调用已经存在的宏文件 NEWMACRO.MAC 或

NEWMACRO,'SY'

3.6 数字参数值的置换

只要在有关数字命令的地方用到参数,该参数值都会被自动置换。假如没有给该参数赋值(即该参数还没被定义),程序会自动赋给它一个接近0的值(2?100),通常不会发出警告。

注意-大多数情况下,某参数在一个命令中使用之后,再被定义,不会再更新该命令。(除命令 /TITLE, /STITLE, *ABBR, 和 /TLABEL之外。详细说明见3.6.2.1部分。)例如:

Y=0 X=2.7

N,1,X,Y ! 节点1在 (2.7,0)

Y=3.5 ! 重新定义参数Y不会更新节点1

3.6.1 防止置换

可以通过把参数名括在单引号(')中(如'XYZ')来防止参数被置换,这时被使用的是文字串,所以,这个特性仅对非数字参数有用。

反过来,也可以通过把用于标题、子标题和文件名的参数名括在百分号(%)中,对其强迫进行置换。例如,

/TITLE, TEMPERATURE CONTOURS AT TIME=%TM%

在这个标题中,参数TM的数值被置换了。注意-一旦该标题被使用,参数即被置换。

3.6.2 字符参数值的置换

在文字数字命令域中使用字符参数通常会自动地导致该字符参数值的置换。下面说明强制置换和对字符参数的限制。

3.6.2.1 强制置换

和数字参数一样,也能在某些不会发生置换的情况下强迫字符参数进行置换。只要把字符参数名括在百分号(%)中就可以达到该目的。以下命令可以实现对字符参数的强制置换: ? /TITLE 命令 (标题域),为各种打印输出指定标题。

? /STITLE 命令 (标题域),指定子标题,同/TITLE。 (不能在GUI中直接得到 /STITLE

第 12 页

? ? ? ? ? ?

命令)

/TLABEL 命令 (文本域),为注释指定文本串。

/SYP 命令 (ARG1 - ARG8 域),传递命令(包括参数)到操作系统。 (不能在GUI中直接得到/SYP 命令)

*ABBR 命令 (缩写域),定义缩写。 强制置换在以下类型的域中也有效:

任何文件名或扩展名命令参数。这些参数应用到诸如/FILENAME, RESUME, /INPUT, /OUTPUT, 和 FILE等命令中(在这些域中也允许直接参数置换)。 任何32位字符域:典型的例子是目录路径,它被用于很多命令。(在这些域中也允许直接参数置换)

在任何命令名域作为命令名。也可在域1中作为一个\未知命令\的宏名。例如: R='RESUME' %R%,MODEL,DB

以下命令输入方式说明了如何对一个子标题和目录名进行强制置换: A='TEST' B='.RST' C='/ANSYS' D='/MODELS/'

/STITLE,,RESULTS FROM FILE %C%%D%%A%%B% SUBTITLE 1 =

RESULTS FROM FILE /ANSYS/MODELS/TEST.RST /POST1

FILE,A,RST,%C%%D% ! 从文件/ANSYS/MODELS/TEST.RST读结果

3.6.2.2 字符参数有效的其它地方

除已经讨论的一般应用之外,在某些特定的场合,应用字符参数会带来更多的便利。下面的内容描述了所涉及的命令和用法。 ? *ASK

该命令用于用户给字符标量参数赋值时弹出的提示字符串(最多8个字符,且括在单引号中)。该命令不能由GUI直接得到。 ? *CFWRITE

该命令把ANSYS命令写到由*CFOPEN打开的文件中。可用于写一个分配给该文件的字符参数。例如,*CFWRITE,B='FILE' 是有效的。*CFWRITE和*CFOPEN 命令不能由GUI直接得到。

? *IF 和 *ELSEIF

字符参数可用于这两个命令的VAL1和VAL2参数。对于Oper参数,使用字符参数时,只有EQ (等于) 和NE (不等于)标识字是有效的。*IF 和 *ELSEIF 命令不能由GUI直接得到。例如: CPARM='NO'

*IF,CPARM,NE,'YES',THEN ? *MSG

该命令的VAL1到 VAL8参数均为字符参数。数据描述符%C用于在格式行中指明字符

第 13 页