一、ANSYS 查询函数(Inquiry Function)在ANSYS操作过程或条件语句中,常常需要知道有关模型的许多参数值,如选择集中的单元数、节点数,最大节点号等。
此时,一般可通过*GET命令来获得这些参数。
现在,对于此类问题,我们有了一个更为方便的选择,那就是查询函数— Inquiry Function。
Inquiry Function类似于ANSYS的 *GET 命令,它访问ANSYS数据库并返回要查询的数值,方便后续使用。
ANSYS每执行一次查询函数,便查询一次数据库,并用查询值替代该查询函数。
假如你想获得当前所选择的单元数,并把它作为*DO循环的上界。
传统的方法是使用*GET命令来获得所选择的单元数并把它赋给一个变量,则此变量可以作为*DO循环的上界来确定循环的次数*get, ELMAX,elem,,count*do, I, 1, ELMAX……*enddo现在你可以使用查询函数来完成这件事,把查询函数直接放在*DO循环内,它就可以提供所选择的单元数*do, I, ELMIQR(0,13)……*enddo这里的ELMIQR并不是一个数组,而是一个查询函数,它返回的是现在所选择的单元数。
括弧内的数是用来确定查询函数的返回值的。
第一个数是用来标识你所想查询的特定实体(如单元、节点、线、面号等等),括弧内的第二个数是用来确定查询函数返回值的类型的(如选择状态、实体数量等)。
同本例一样,通常查询函数有两个变量,但也有一些查询函数只有一个变量,而有的却有三个变量。
查询函数的种类和数量很多,下面是一些常用、方便而快速快捷的查询函数1 AREA—arinqr(areaid,key)areaid—查询的面,对于key=12,13,14可取为0;key—标识关于areaidr的返回信息=1,选择状态=12,定义的数目=13,选择的数目=14,定义的最大数=-1,材料号=-2,单元类型=-3,实常数=-4,节点数=-6,单元数…arinqr(areaid,key)的返回值对于key=1=0, areaid未定义=-1,areaid未被选择=1, areaid被选择…2 KEYPOINTS—kpinqr(kpid,key)kpid—查询的关键点,对于key=12,13,14为0 key —标识关于kpid的返回信息=1,选择状态=12,定义的数目=13,选择的数目=14,定义的最大数目=-1,数料号=-2,单元类型=-3,实常数=-4,节点数,如果已分网=-7,单元数,如果已分网kpinqr(kpid,key)的返回值对于key=1=-1,未选择=0,未定义=1,选择3 LINE—lsinqr(lsid,key)lsid—查询的线段,对于key=12,13,14为0 key—标识关于lsid的返回信息=1,选择状态=2, 长度=12,定义的数目=13,选择的数目=14,定义的最大数=-1,材料号=-2,单元类型=-3,实常数=-4,节点数=-6,单元数…4 NODE—ndinqr(node,key)node—节点号,对于key=12,13,14为0 key—标识关于node的返回信息=1,选择状态=12,定义的数目=13,选择的数目=14,定义的最大数=-2,超单元标记=-3,主自由度=-4,激活的自由度=-5,附着的实体模型ndinqr(node,key)的返回值对于key=1=-1,未选择=0,未定义=1,选择5 VOLUMES—vlinqr(vnmi,key)vnmi—查询的体,对于key=12,13,14为0 key—标识关于vnmi的返回信息=1,选择状态=12,定义的数目=13,选择的数目=14,定义的最大数目=-1,数料号=-2,单元类型=-3,实常数=-4,节点数=-6,单元数=-8,单元形状=-9,中节点单元=-10,单元坐标系vlinqr(vnmi,key)的返回值对于key=1=-1,未选择=0,未定义=1,选择二、如何定制Beam188/189单元的用户化截面ANSYS提供了几种通用截面供用户选用,但有时不能满足用户的特殊需求。
为此,ANSYS提供了用户创建截面(库)的方法。
如果你需要创建一个非通用横截面,必须创建一个用户网格文件。
具体方法是,首先创建一个2-D实体模型,然后利用SECWRITE命令将其保存(Main Menu>Preprocessor>Sections>-Beam-Write Sec Mesh)。
该过程的细节如下:1.创建截面的几何模型(二维面模型)。
2.对所有线设置单元份数或者单元最大尺寸 (Main Menu>Preprocessor> -Meshing-SizeCntrls>-Lines-Picked Lines或使用MeshTool)。
记住:保证模型中的区格(cell)数目不能超过250个。
3.选择菜单Main Menu>Preprocessor>Sections>-Beam-Write Sec Mesh,弹出一个拾取窗口,单击Pick All拾取包含区格的所有面。
4.ANSYS自动在所有面上创建区格。
在划分网格时,ANSYS可能显示单元形状差的消息,也可以被忽略不显示,但是总能看到一条消息“Unable to mesh area....”。
如果已经完成上述工作,你清除所有面上的单元(Main Menu>Preprocessor>-Meshing-Clear> Areas),并重复第2、3、4步,即必须重新控制网格密度。
5.如果第4步成功则弹出Write Section Library File对话框,File Name域填入一个未用过SECT 文件名,Drives域指定一个截面文件存放驱动器,Directories域指定一个截面文件存放目录,然后单击按钮OK,完成用户截面文件建立。
如果在第3步中给线指定太多单元份数,区格和节点的数目可能超过限制范围,必须清除所有面上的单元2~4步,直到获得合适数量的区格和节点。
一旦完成上述工作,用户可以在以后分析中读取用户网格文件 (Main Menu > Preprocessor > Sections > -Beam-Read Sect Mesh),定义成适当的截面ID号,就与通用梁完全一致。
要想检查用户截面,只要绘制截面(网格)图(Main Menu>Preprocessor>Sections>Plot Section)或者列表截面属性(Main Menu>Preprocessor>Sections>List Sections)。
三、如何考虑结构分析中的重力在结构分析中,如何模拟结构自重和设备重量是一个经常遇到的问题,对于结构自重有两点要注意:1.在材料性质中输入密度,如果不输入密度,则将不会产生重力效果。
2.因为ANSYS将重力以惯性力的方式施加,所以在输入加速度时,其方向应与实际的方向相反。
对于结构上的设备重量可以用MASS21单元来模拟,该单元为一个空间“点”单元。
设备重量可通过单元实常数来输入。
下面附上一个小例子(设重力方向向下)。
/prep7et,1,42et,2,21r,2,10,10,10mp,ex,1,2e5mp,nuxy,1,0.3mp,dens,1,1rect,,10,,1esize,.5amesh,alltype,2real,2e,node(5,1,0)fini/soludk,1,alldk,2,uy,acel,,10solvefini/post1plnsol,u,sum,2四、如何提取模态质量模态分析过程中打开振型型则化开关(MODOPT命令的Nrmkey设置为ON),ANSYS程序将自动将每阶模态的最大位移单位化,就可以提取模态质量。
计算方法如下:1、利用SSUM对ETABLE 动能数据求和获得结构总动能();2、将结构总动能除以得到,其中是系统的角频率。
下面是《ANSYS Verification Manual》中VM89.DAT稍加修改后提取模态质量的例子:/PREP7/TITLE, VM89, NATURAL FREQUENCIES OF A TWO-MASS-SPRING SYSTEMC*** VIBRATION THEORY AND APPLICATIONS, THOMSON, 2ND PRINTING, PAGE 163,EX 6.2-2ET,1,COMBIN14,,,2ET,2,MASS21,,,4R,1,200 ! SPRING CONSTANT = 200R,2,800 ! SPRING CONSTANT = 800R,3,.5 ! MASS = .5R,4,1 ! MASS = 1N,1N,4,1FILLE,1,2 ! SPRING ELEMENT (TYPE,1) AND K = 200 (REAL,1)TYPE,2REAL,3E,2 ! MASS ELEMENT (TYPE,2) AND MASS = .5 (REAL,3)TYPE,1REAL,2E,2,3 ! SPRING ELEMENT (TYPE,1) AND K = 800 (REAL,2)TYPE,2REAL,4E,3 ! MASS ELEMENT (TYPE,2) AND MASS = 1 (REAL,4)TYPE,1REAL,1E,3,4 ! SPRING ELEMENT (TYPE,1) AND K = 200 (REAL,1)M,2,UX,3OUTPR,BASIC,1D,1,UY,,,4D,1,UX,,,4,3FINISH/SOLUANTYPE,MODALMODOPT,subspa,2,,,2,ONMXPAND,2,,,YESSOLVEFINISH/post1set,1,1etabl,kene,kenessum*get,keneval1,ssum,,item,kene *get,freqval1,mode,1,freq eigen1=(2*3.14159*freqval1)**2 pmass1=2*keneval1/eigen1set,1,2etabl,kene,kenessum*get,keneval2,ssum,,item,kene *get,freqval2,mode,2,freq eigen2=(2*3.14159*freqval2)**2 pmass2=2*keneval2/eigen2finish五、ANSYS的几种动画模式Q: ANSYS中有好几种动画模式,但并非同时可用。
那么有哪几种类型,何时可用呢?A: ANSYS中有四种动画模式:Bitmap,A VI,Display List,Pixmap。