新浪博客

[转载]ANSYS 入门教程 (17) - ANSYS 查询函数,GET 函数,参

2017-05-24 17:04阅读:

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 命令参考手册(ANSYS Commands
Reference),此处不再介绍。
*GET 命令有许多等价的内部函数(称 GET 函数),可以替代 *GET 命令直接提取数据,这些内部提取函数既可将返回值赋给变量,也可直接在命令流中使用,比 *GET 命令更加方便,这里介绍如下。常用 GET 函数表如表所示。
[转载]ANSYS <wbr>入门教程 <wbr>(17) <wbr>- <wbr>ANSYS <wbr>查询函数,GET <wbr>函数,参
[转载]ANSYS <wbr>入门教程 <wbr>(17) <wbr>- <wbr>ANSYS <wbr>查询函数,GET <wbr>函数,参
[转载]ANSYS <wbr>入门教程 <wbr>(17) <wbr>- <wbr>ANSYS <wbr>查询函数,GET <wbr>函数,参
[转载]ANSYS <wbr>入门教程 <wbr>(17) <wbr>- <wbr>ANSYS <wbr>查询函数,GET <wbr>函数,参
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
! 实现两个独立命令流的合并,不必担心数据混乱或覆盖
ANSYS 入门教程 (17) - ANSYS 查询函数,GET 函数,参数配置和其它 - htbbzzg - htbbzzg的博客

(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 恰当结合可进行二次开发等。

我的更多文章

下载客户端阅读体验更佳

APP专享