ansys 中如何用命令流编辑一个函数?

来源:百度知道 编辑:UC知道 时间:2024/06/03 18:35:42
需要做一个跟时间有关的荷载 比如编辑一个正弦函数 我都是用GUI 的Function编辑个函数 然后把这些命令行复制到我的命令流文本里。比如如下:

*DEL,_FNCNAME
*DEL,_FNCMTID
*DEL,_FNCCSYS
*SET,_FNCNAME,'cx'
*SET,_FNCCSYS,0

:FUNC
*DIM,%_FNCNAME%,TABLE,6,10,1,,,,%_FNCCSYS%
!
! Begin of equation: 0.05*sin(2.8*2*3.1415926*{TIME})
%_FNCNAME%(0,0,1)= 0.0, -999
%_FNCNAME%(2,0,1)= 0.0
%_FNCNAME%(3,0,1)= 0.0
%_FNCNAME%(4,0,1)= 0.0
%_FNCNAME%(5,0,1)= 0.0
%_FNCNAME%(6,0,1)= 0.0
%_FNCNAME%(0,1,1)= 1.0, -1, 0, 2.8, 0, 0, 0
%_FNCNAME%(0,2,1)= 0.0, -2, 0, 2, 0, 0, -1
%_FNCNAME%(0,3,1)= 0, -3, 0, 1, -1, 3, -2
%_FNCNAME%(0,4,1)= 0.0, -1, 0, 3.1415926, 0, 0, -3
%_FNCNAME%(0,5,1)= 0.0, -2, 0, 1, -3, 3, -1
%_FNCNAME%(0,6,1)= 0.0, -1, 0, 1, -2, 3, 1
%_FNCNAME%(0,7,1)= 0.0, -1, 9, 1, -1, 0, 0
%_FNCNAME%(0,8,1)= 0.0, -2, 0, 0.05, 0, 0, -1
%_FNCNAME%(0,9,1)= 0.0, -3, 0, 1, -2, 3, -1
%_FNCNAME%(0,10,1)= 0.0, 99, 0, 1, -3, 0

ANSYS写数组类似于Fortrun,而非Matlab似的矩阵形式,你上面写出的应该是离散时间的70个数据点,时间间隔看不出来。
如果用命令流格式写你的命令你可以这样(下面是一个例子,你需要用文本写出来,最好删掉汉语,然后通过File-->read input from导入):
n=5
dt=0.1
w=3
*dim,F,,n,1
*dim,Tm,,n,1
*Do,M,1,n,1 % n是数据点数,你需要提前设定
F(M)=0.05*sin(w*M*dt) % w圆频率
*enddo

得出的F就是一个数组了,你再修改频率之类的就比较容易些

函数必须通过GUI操作。。。命令流里的是ansys的内部矩阵,修改某个数字并不能改成想要的结果。