深蓝梦境 发表于 2016-10-27 11:09

关于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]
查看完整版本: 关于ANSYS中的变量的问题