熟悉apdl语言,解析简单的命令流
这是从网上找到的ansys加载的例子,我就这个例子查找了网上一些介绍apdl语言的知识,对每个句子给与了相应的解释。ANSYS5.7版本具有函数加载功能,可以很方便地在模型表面施加函数变化的各种载荷,在ANSYS5.6版本中,也可以通过变通的方式来实现此功能,其思路是:
首先选定所要施加函数变化表面载荷的表面上的节点,利用ANSYS的参数数组和嵌入函数知识写一简单的命令流,定义好相应节点位置的面载荷值,然后通过在节点上施加面载荷来完成。
下面以在一圆柱表面施加函数变化载荷为例:
/prep7 进入前处理器
et,1,45 单元类型
cyl4,,,0.5,,,,3
vsweep,all 网格划分
asel,s,loc,y,0.01,1 选择面?
nsla
!
*get,nmax,node,,num,max, 提取节点并赋值
*get,nmin,node,,num,min, 提取节点并赋值
*afun,deg 设定角度单位为度数
*dim,t1,array,nmax,1,1, 定义数组
csys,1 激活坐标系
*do,k,nmin,nmax 开始循环
*if,nsel(k),eq,1,then 条件语句 (eq表示等于)
t1(k)=1000*sin(ny(k)) 如果条件为真则执行这句
*else 否则执行t1(k)=0
t1(k)=0
*endif 条件语句结束
*enddo 循环结束
!
sffun,pres,t1(1) 加函数力
sf,all,pres,0 选择所有
*get的意义:
1、从某个特定的项目中提取数据,并赋给某个特定的参数
2、内嵌获取函数
*dim的意义:
定义数组参数,通常可用array,char(定义字符串数组),table表示。
*do,*enddo:
分别表示循环的开始和结束的标识字
Do循环允许按指定的次数循环执行一系列的命令
*if,*endif的意义:
分别表示条件分支语句的开始和该结构的结束。*IF常与*ELSEIF或是*ELSE联合起来使用。
Apdl允许根据条件执行某些供选择程序体中的一个,条件的值通过比较两个数的值来确定。
*IF命令的语法为:
*IF,VAL1,OPER,VAL2,BASE
其中,
VAL1是比较的第一个数值
OPER是比较的运算符
VAL2是比较的第二个数值
若比较的值为真,则执行BASE指定的操作
转自:http://blog.sina.com.cn/s/blog_62e74f1b0100fm1a.html
页:
[1]