型号;
=-3:实常数号;
=-4:节点号(已分网);
=-7:单元号(已分网)
当 key=1 时函数的返回值:
=-1:未选择;
=0:未定义;
=1:被选择
例如:a=kpinqr(0,12) 则返回已定义的关键点最大数目,并赋值给参数
A。
2.
线查询函数
命令:LSINQR(lsid,key)
lsid -
为要查询的线号,当 key=12,13,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态;
=2:长度;
=12:已定义数目;
=13:被选择的数目;
=14:定义的最大编号;
=-1:材料号;
=-2:单元类型号;
=-3:实常数号;
=-4:节点数(已分网);
=-6:单元数目(分网)
=-8:分网的线拟化分数目
=-9:关键点1;
=-10:关键点2;
=-15:截面号ID
=-16:单元拟划分数目;
当 key=1
时函数的返回值同上。
例如:a=LSinqr(0,12) 则返回线的最大数目,并赋值给参数 A。
3.
面查询函数
命令:ARINQR(arid,key)
arid -
为要查询的面号,当 key=12,13,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态;
=12:已定义数目;
=13:被选择的数目;
=14:定义的最大编号;
=-1:材料号;
=-2:单元类型号;
=-3:实常数号;
=-4:节点数(已分网);
=-6:单元数(已分网);
=-8:单元形状;
=-10:单元坐标系;
=-11:面约束信息;
当 key=1
时函数的返回值同上。
当 key=-11
时函数返回值:
=0:没有约束;
=1:对称约束;
=2:反对称约束;
=3:对称与反对称约束
4.
体查询函数
命令:vlinqr(vlid,key)
vlid -
为要查询的体号,当 key=12,13,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态; =12:已定义数目; =13:被选择的数目;
=14:定义的最大编号; =-1:材料号;
=-2:单元类型号;
=-3:实常数号;
=-4:节点数(已分网);
=-6:单元数;
=-8:单元形状;
=-10:单元坐标系
当key=1时函数的返回值同上。
5.
节点查询函数
命令:ndinqr(node,key)
node -
为要查询的节点号,当 key=12,13,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态;
=12:已定义数目;
=13:被选择的数目;
=14:定义的最大编号;
=-1:材料号;
=-2:超单元标记;
=-3:主自由度;
=-4:活动自由度
=-5:依附的实体模型;
当 key=1
时函数的返回值同上。
6.
单元查询函数
命令:ELMIQR(elid,key)
elid -
为要查询的单元号,当 key=12,13,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态;
=12:已定义数目;
=13:被选择的数目
=14:定义的最大编号;
=-1:材料号;
=-2:单元类型号;
=-3:实常数号;
=4:截面号ID;
=5:单元坐标系号;
=7:实体模型号;
当 key=1
时函数的返回值同上
7.
单元类型查询
命令:ETYIQR(itype,key)
itype -
为要查询的单元类型号,当 key=12,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态;
=12:已定义数目;
=14:定义的最大编号;
当 key=1
时函数的返回值同上。
8.
实常数查询函数
命令:rlinqr(nreal,key)
nreal -
为要查询的实常数号,当 key=12,13,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态;
=12:已定义数目;
=13:被选择的数目;
=14:定义的最大编号;
当 key=1
时函数的返回值同上。
9.
截面号查询函数
命令:SECTINQR(nsect,key)
nsect -
为要查询的截面号,当 key=12,13,14 时为 0。
key -
查询信息标识,其值可取及其返回值:
=1:选择状态;
=12:已定义数目;
=13:被选择的数目;
=14:定义的最大编号;
当 key=1
时函数的返回值同上。
2.5.6
*get 命令与 GET 函数
*GET 命令几乎可以提取 ANSYS
数据库中的任何数据,并赋值给全局变量。例如任何图素(关键点、线、面、体、节点和单元)的相关数据信息、各处理器的设置与状态、系统或环境等等数据信息。
*GET 命令的使用格式为:
*GET,Par,Entity,ENTNUM,Item1,IT1NUM,Item2,IT2NUM
Par - 欲赋值的变量名称,即提取结果将赋给该变量,由用户定义。
Entity - 被提取图素的关键字,如
NODE,ELEM,KP,LINE,AREA,VOLU,PDS 等。
ENTNUM - 图素编号,如为 0 则表示全部图素。
Item1,IT1NUM,Item2,IT2NUM -
某个图素的项目及其编号。
由于几乎可提取数据库中的任何数据,因此该命令参数极多,且有些比较复杂,详细可参见
ANSYS 命令参考手册(ANSYS Commands
Reference),此处不再介绍。
*GET 命令有许多等价的内部函数(称 GET 函数),可以替代 *GET
命令直接提取数据,这些内部提取函数既可将返回值赋给变量,也可直接在命令流中使用,比 *GET 命令更加方便,这里介绍如下。常用 GET
函数表如表所示。
2.5.7 几何建模其它命令与技巧
几何建模命令众多,除上述内容外,尚有其它一些问题和技巧,这里就几何建模的常见问题或技巧予以介绍,以提高建模水平和速度。
1.
撤销操作命令 UNDO
在 GUI 方式操作下,可使用 /UNDO,on 来打开 UNDO
命令,但只能撤销上一次的操作;或使用 UNDO,NEW 建立一个可编辑的 GUI 窗口,允许用户修改最后一次执行 RESUME 或
SAVE 命令后的命令流。
一般不建议使用。
具体命令解释:
GUI:Main
Menu > Session Editor
命令:UNDO,Kywrd
其中 Kywrd 为关键词,仅且必须为 NEW,表示使用 UNDO,NEW
建立一个可编辑的 GUI
窗口,允许用户修改最后一次执行 RESUME 或 SAVE
命令后的命令流。发布 UNDO,new 命令后,打开文字窗口编辑器(SESSION EDITOR),其中显示了最后一次执行
RESUME 或 SAVE 命令后的所有操作命令。可以编辑该命令文件,删除拟删除的操作命令,点击 OK 即可完成 UNDO
操作。
2.
ANSYS 配置参数命令 /CONFIG
命令:/CONFIG, Lab, VALUE
Lab
为要修改的配置参数,VALUE 为配置参数数值(整数),其值可取:
Lab - 要修改的配置参数,可以是:
NRES
—
VALUE 表示结果文件中允许的最大结果组个数 (子步数)。默认为 1000。对于 MFX 分析,默认为 5000。最小值
10。
NORSTGM
—
在结果文件中是否写入几何数据。VALUE 可以为 0 (写几何数据) 或 1 (不写几何数据)。
对于可能创建过大的文件的复杂分析情况很有用。默认为 0。
NBUF
—
VALUE 为在求解时每个文件的缓冲 (buffers) 大小 (1
~ 32),默认为 4。
LOCFL
—
文件打开和关闭操作。当 VALUE 为:0 - 整体 (默认); 1 - 局部。用于文件 File.EROT, File.ESAV,
File.EMAT 和 File.TRI。
SZBIO
—
VALUE 表示二进制文件中记录的大小 (1024 到 4194304,按整型字计算)。默认 16384 (与系统有关)。
ORDER
—
自动记录方案。当 VALUE 为: 0 - WSORT,ALL; 1 - WAVES; 2 - 同时 WSORT,ALL and
WAVES (默认)。
FSPLIT
—
定义二进制文件的分割点。VALUE 是按照兆字节的分割点,默认为系统允许的最大文件尺寸。
例如 FAT32
文件系统单个文件最大限制为 4GB;如果文件格式为 NTFS,理论上单个文件最大 64GB,但操作系统限制在
8GB
以下,而将一个文件用此命令分割为多个文件后其总的大小可超过 8GB(例如设结果文件 20GB,则可分割为 3 个 7GB
的文件)。如果设置
VALUE=750,则所产生的文件大小在 3GB 左右。用该命令参数可以自动分割文件,从而突破操作系统对文
件大小的限制,并且结果文件虽被分为多个文件,但对结果的处理没有影响。
MXND
—
最大节点数,如未指定,第一次使用时默认为 100。在超过最大值时,自动扩展为双倍,包括第一次使用时。
MXEL
—
最大单元数。默认和扩展与 MXND 相同。
MXKP
—
最大关键点数。默认和扩展与 MXND 相同。
MXLS
—
最大线数。默认和扩展与 MXND 相同。
MXAR
—
最大面数。默认和扩展与 MXND 相同。
MXVL
—
最大体数。默认和扩展与 MXND 相同。
MXRL
—
最大实常数组数 (单元属性)。默认和扩展与 MXND 相同。
MXCP
—
最大耦合自由度组数。默认和扩展与 MXND 相同。
MXCE
—
最大约束方程组数。默认和扩展与 MXND 相同。
NOELDB
—
求解后是否将结果写入数据库选项。当 VALUE = 0 (默认), 将结果写入数据库。当 VALUE = 1, 不将结果写入数据库。
DYNA_DBL
—
对于显式动力求解器 LS-DYNA 使用双精度版本选项。当 VALUE = 0 (默认), 使用单精度版本。当 VALUE = 1,
使用双精度版本。
STAT
—
显示
/CONFIG 命令的当前设置。
注解:
所有配置参数都有初始的默认值,多数情况不需要改变。当需要某个特定的 ANSYS
程序配置时,可以使用此命令进行配置参数设置。
首先发布 /CONFIG,STAT
命令以显示当前值。必须在使用参数之前进行修改。这些修改 (及其它的) 也可以写到 config110.ans 文件中,在执行
ANSYS 程序时读入 (见基本分析指南 Basic Analysis Guide 中的 Configuration
File)。如果在配置文件和本命令中出现同样的配置参数,以本命令中的设置为准。
菜单路径
Utility Menu > List >
Status > Configuration
3.
关闭警告信息
在命令流建模和求解过程中,由于各种原因系统会产生许多“警告”和“错误”信息,如这些信息过多会引起系统中断,或者有时不希望出现这些不影响计算结果的警告信息,可采用:
/NERR 和 /UIS 命令进行控制。命令解释从略。
/NERR,0
!
关闭所有警告和错误信息的显示,但不能关闭写入 .ERR 文件。
/UIS,MSGPOP,3
! 则仅显示错误对话框信息
4.
编号控制与操作
编号控制有 NUMOFF、NUMSTR、NUMCMP 和 NUMMRG
等命令。前两个命令为编号控制命令,NUMCMP 为编号管理命令,而 NUMMRG 实际上为合并图素命令。
(1)
为已创建的图素指定一个编号增量
命令:NUMOFF, Label, VALUE
Label -
图素类型参数,其值可取:
=NODE:节点;
=ELEM:单元;
=KP:关键点;
=LINE:线;
=AREA:面;
=VOLU:体;
=MAT:材料号;
=TYPE:单元类型号;
=REAL:实常数号
=CP:耦合组号;
=SECN:截面号;
=CE:约束方程组;
=CSYS:坐标系号
VALUE -
增量号(不能为负值)。
该命令用于当读入一个模型时,避免覆盖现有模型中的编号数据而对既有图素设置一个增量。
例如用命令流分别创建了两个模型,首先读入第一个命令流创建模型,如直接读入第二个命令流必然会造成数据混乱或覆盖,这时可使用 NUMOFF
命令为既有模型设置编号增量(此增量足够使得第二个模型的数据不覆盖原有模型数据),然后再读入第二个命令流,从而实现命令流及其模型的合并(或装配)。
例如:
!
name1.txt,第一个命令流文件
finish
$/clear
/prep7
$csys,1
*do,i,1,36
$k,i,10,10*i
$*enddo
! 创建编号为 1~37 的关键点
csys,0$k,37
$*do,i,1,36
$l,37,i
$*enddo
! 创建编号为
1~36 的线
!
name2.txt,第二个命令流文件,也可将此两个文件合并为一个文件保存
numoff,kp,100
!设置关键点编号增量,即将既有关键点编号增加 100
numoff,line,100
!设置线编号增量,即将既有线编号增加 100
/prep7
$ csys,1
*do,i,1,36
$k,i,20,10*i-5
$*enddo
! 再创建编号编号为 1~37 的关键点
csys,0
$k,37
$*do,i,1,36
$l,37,i
$*enddo
!
再创建编号为 1~36 的线
LPLOT
!
实现两个独立命令流的合并,不必担心数据混乱或覆盖
(2)
为自动图素编号设置起始编号
命令:NUMSTR, Label, VALUE
其中 Label
为图素类型, 其值可取
NODE、ELEM、KP、LINE、AREA、VOLU。
VALUE 为所选图素的起始编号。当 Label
为有限元图素时,VALUE 缺省为既有模型中的节点或单元编号+1;当 Label 为几何图素时,VALUE
缺省为1,且只有未使用的编号才能使用,已经存在的图素不会覆盖。
(3)
编号压缩
在建模过程中,用户可任意定义编号(如
KP)或者因布尔运算等造成某类图素的编号不连续,使用该命令能通过重新编号方式对没有使用的编号进行压缩,可使新的编号从 1
开始对整个模型连续编号。但对于通过 FACETED 转换器读入的 IGES 模型不能使用编号压缩命令。
命令:NUMCMP, Label
其中 Label
可取
NODE、ELEM、KP、LINE、AREA、VOLU、MAT、TYPE、REAL、CP、CE 及 ALL。使用 ALL
选项则压缩上述所有参数的编号。
(4)
合并图素
命令:NUMMRG, Label, TOLER, GTOLER, Action,
Switch
Label -
要合并的图素类型,其值可取:NODE、ELEM、KP、MAT、TYPE、REAL、CP、CE 及 ALL。
TOLER -
重合范围容差,对 Label=NODE 和 KP,缺省值为 1.0E-4;对 Label=MAT、REAL 和 CE,缺省值为
1.0E-7。只有在
TOLER
范围之内才认为是重合的或相同的,才能合并。
GTOLER -
全局实体模型公差,仅适用于依附线上关键点的合并。
Action -
合并与选择操作控制。如 Action=SELE 则仅选择但不合并 (仅适用于节点);如
Action=空(缺省),则合并重合或相同
项。该参数可用于检查合并操作是否为预期的内容。
Switch -
在合并操作时,编号保留小号和大号的控制参数,该选项对于关键点无效,关键点合并时总是保留较小的编号;
如 Switch=LOW(缺省)则保留较小编号;如 Switch=HIGH
则保留较大编号。
合并操作虽然在某些情况下与“粘接”布尔运算相似,但对于几何模型,建议使用粘接布尔运算,如 LGLUE、AGLUE 和
VGLUE命令。例如对于体的粘接,执行 NUMMRG,KP
命令,虽然关键点合并了(同时会合并重合的线和面等),但可能仍会有重合或叠合的线和面;如使用粘接运算则不存在这种问题,但可能对网格划分造成影响。因
此何时使用 NUMMRG 或 xGLUE 需要根据具体模型而定。
例如两个同样大小的体,采用合并和粘接布尔运算效果是相同的。但是对于两个相邻但形状或大小不完全相同时,则情况就不同了。
5.
改变面小方格疏密命令 /FACET
命令:/FACET, Lab
其中 Lab 为疏密控制参数,其值可取:
=FINE:使用较多的小方格(facets)数目,显示效果最好,但降低了显示速度
=NORML(缺省):使用基本小方格数显示。
=COAR:使用较少的小方格数显示,操作速度较快,但降低了显示质量。
=WIRE:使用“线框”显示模型,操作速度最快,但不显示表面(不填色)。
该命令仅对 APLOT、VPLOT、ASUM 和 VSUM
有影响,即对面和体的显示质量和几何特性计算有影响,同时对操作速度也有一定影响,尤其是模型特别复杂时。
如要查看小方格数目或隐藏面的小方格数目,可使用 SPLOT 命令。
6.
ANSYS 调用外部执行程序 EXE 的命令 /SYS
命令:/SYS, String
其中 String 为命令串,最长可达 75 个字符(包括空格和逗号)。
该命令的缺省路径为当前工作目录,但其搜索范围为 ANSYS
设置的路径。例如:
/sys,copy
file.log test.log
! 在工作目录下,将文件 FILE.log 复制为 TEST.log
/sys,copy
d:zfortranreadme.txt r1.txt
!
复制某个目录下的文件到当前目录
/sys,notepad
! 启动 WINDOW
操作系统的“记事本”程序。
该命令后面的 String 正如在 DOS
操作系统下的操作命令一样。当然,除操作系统命令外,还能运行可执行文件或命令,如 FORTRAN 语言程序编译形成的 EXE 文件,与
APDL 恰当结合可进行二次开发等。