ansys函数查询.docx
《ansys函数查询.docx》由会员分享,可在线阅读,更多相关《ansys函数查询.docx(16页珍藏版)》请在冰豆网上搜索。
ansys函数查询
2.5.5 ANSYS查询函数
在用命令流建模、求解及后处理过程中,常常需要获得模型的许多参数,如几何图素和有限元图素的数量等。
普通的方法是通过*GET命令或内部函数等得到这些参数,并在ANSYS中有详细的帮助文件。
而较为便捷的方法是采用ANSYS的查询函数,查询函数在帮助文件中没有详细介绍,查询函数通过访问数据库返回要查询的数值。
查询函数通常有两个变量,第一个变量为所要查询的图素或图素编号,第二个变量为所要查询的内容。
查询函数的种类和数量很多,这里仅介绍KPINQR、LSINQR、ARINQR、VLINQR、NDINQR、ELMIQR、ETYIQR、RLINQR、SECTINQR、CSYIQR及ERINQR等11个函数及其主要查询标识。
1. 关键点查询函数
命令:
KPINQR(kpid,key)
kpid-为要查询的关键点号,当key=12,13,14时为0。
key-查询信息标识,其值可取:
=1:
选择状态; =12:
已定义数目; =13:
被选择的数目;
=14:
定义的最大编号; =-1:
材料号; =-2:
单元类型号;
=-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命令参考手册(ANSYSCommands
Reference),此处不再介绍。
*GET命令有许多等价的内部函数(称GET函数),可以替代*GET命令直接提取数据,这些内部提取函数既可将返回值赋给变量,也可直接在命令流中使用,比*GET命令更加方便,这里介绍如下。
常用GET函数表如表所示。
2.5.7几何建模其它命令与技巧
几何建模命令众多,除上述内容外,尚有其它一些问题和技巧,这里就几何建模的常见问题或技巧予以介绍,以提高建模水平和速度。
1. 撤销操作命令UNDO
在GUI方式操作下,可使用/UNDO,on来打开UNDO命令,但只能撤销上一次的操作;或使用UNDO,NEW建立一个可编辑的GUI窗口,允许用户修改最后一次执行RESUME或SAVE命令后的命令流。
一般不建议使用。
具体命令解释:
GUI:
MainMenu>SessionEditor
命令:
UNDO,Kywrd
其中Kywrd为关键词,仅且必须为NEW,表示使用UNDO,NEW 建立一个可编辑的GUI 窗口,允许用户修改最后一次执行RESUME或SAVE命令后的命令流。
发布UNDO,new命令后,打开文字窗口编辑器(SESSIONEDITOR),其中显示了最后一次执行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,ALLandWAVES(默认)。
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程序时读入(见基本分析指南BasicAnalysisGuide中的ConfigurationFile)。
如果在配置文件和本命令中出现同样的配置参数,以本命令中的设置为准。
菜单路径
UtilityMenu>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,copyfile.logtest.log !
在工作目录下,将文件FILE.log复制为TEST.log