关于ANSYS中的变量的问题
ANSYS中的变量总的来说分为两大类:一类是标量参数;一类是数组参数。其意义与C语言中的参数和数组类似。标量参数是指单个的变量,而数组则是由一系列具有相同意义的数据组成。一:标量参数
标量参数分为两种:数值型的和字符型的。
1:标量参数的定义或修改:可以使用*SET命令或直接写出赋值表达式。修改时,只需改变数据即可。
例如:
*SET,LENGTH,10 !定义了一个名为LENGTH的数值型变量,并且值为10
*SET,COMMENT,'DISP' !定义了一个名为COMMENT的字符型变量,并且赋值为DISP
以上两句等价于:
LENGTH=10
COMMENT='DISP'
2:标量参数的删除:同样可以使用*SET命令或直接写出赋值表达式或使用*DEL命令。将需要删除的变量赋空值,注意不是数字0或空格。
例如:我们将上面定义的两个参数删除。语句如下:
*SET,LENGTH,
*SET,COMMENT,
或:
LENGTH=
COMMENT=
又或:
*DEL,LENGTH
*DEL,COMMENT
3:标量参数的GUI操作菜单。GUI路径为:Utility Menu->Parameters->Scalar Parameters。标量参数的定义,删除和修改都可以在这个窗口中完成。
二:数组参数
数组参数按维数可分为:一维数组,二维数组和三维数组。
按存储的数据类型可分为:
1)一般数组参数,也成为ARRAY Parameter。是一种默认的数据类型,也就是说,如果用户不声明数据类型,系统就会自动使用该数据类型。该数组的行、列、面的索引均为从1开始的连续整数,元素值可以为整数或实数。
2)字符数组参数,又名CHAR Array Parameter。元素值为不多于8个的字符或数字组成。其行,列,面的索引值也是从1开始的连续整数。
3)表数组参数,也叫TABLE Array Parameter。这种数组较前两种非常特殊,它允许程序通过线性插值计算数组以确定元素之间的任何值。行,列,面的索引可以定义为任何实数,元素值可以为整数或实数。
1:数组参数的定义。使用*DIM命令。直接看例子,然后在详细讲*DIM的语法。
例如:
*DIM,DISP_1,,4 !定义了一个名为DISP_1的数值型数组,大小为4X1X1
*DIM,STRS_A,ARRAY,3,3 !定义了一个名为STRS_A的数值型数组,大小为3X3X1
*DIM,LABEL,CHAR,5!定义了一个名为LABEL的字符型数组,大小为5X1X1
*DIM,SEQ_2,TABLE,4,4 !定义了一个名为SEQ_2的表数型数组,大小为4X4X1
*DIM的语法格式如下:
*DIM,Par,Type,IMAX,JMAX,KMAX,Var1,Var2,Var3
含义如下:
Par:参数名,必须符合ANSYS中变量的命名规则(字母开头;数字,字母,下划线组成;不超过8字符)
Type:需要定义的数组类型。若为数值型,可省略不填,但是逗号不能省略。
IMAX,JMAX,KMAX:分别指行数,列数和面数。默认均为1。省略均表示为1。
Var1,Var2,Var3:只在定义表数组参数时使用,分别指行数,列数和面的标签。
2:数组参数的赋值。
1) 用*SET命令或=进行赋值。用*SET一次只能给一个元素赋值,=最多能给10个元素赋值。看例子。
例如:
*SET,DISP_1(2),20 !DISP_1(2)=20
DISP_1(3)=10,15 !DISP_1(3)=10 DISP_1(4)=15
STRS_A(1,1)=10,20,30 !STRS_A(1,1)=10 STRS_A(2,1)=20 STRS_A(3,1)=30
STRS_A(2,3)=50,70 !STRS_A(2,3)=50STRS_A(3,3)=70
2)用*VFILL命令。*VFILL命令可以用来填充一个一般的数组或表数组的列向量。具体见ANSYS帮助文档。
例如:
*VFILL,LABEL(1),DATA,'S1','S2','S3','S4','S5'
3)用*VREAD或者*TREAD命令。*VREAD或者*TREAD命令可将数据文件填充到数组中去。具体见ANSYS帮助文档。
3:数组参数的删除与标量参数相同。
4:数组参数操作的GUI。Utility Menu->Parameters->Array Parameters。下面又四个子菜单,可以进行上述所有的操作。
来源:nnpacific的博客
页:
[1]