ANSYS基础教程—APDL基础
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ANSYS基础教程—APDL基础
发表时间:2011-3-17
关键字:ANSYS ANSYS教程 APDL基础
信息化调查找茬投稿收藏评论好文推荐打印社区分享
本文主要介绍APDL基础功能,包括:定义参数、利用参数、获取数据库信息方面展开。
概述
·APDL 是ANSYS 参数化设计语言的缩写,它是一种允许使用参数并能完成一系列任务的强大的程序语言。
·使用APDL, 可以:
–用参数而不是用数值输入模型尺寸,材料类型等。
–从ANSYS 数据库中获取信息, 比如节点位置或最大应力。
–在参数中进行数学运算,包括矢量和矩阵运算。
–把常用的命令或宏定义成缩写形式。
–建立一个宏使用if-then-else分支和do循环等来执行一系列任务。
A. 定义参数
·用以下格式定义参数
Name=Value
–可以在输入窗口或标量参数对话框中输入(Utility Menu > Parameters > Scalar Parameters...)
–参数名不能超过8个字符。
–值可以是一个数值,一个以前定义过的参数,一个函数,一个参数表达式,或者一个字符串(用单引号括住)。
·例子:
inrad=2.5 g=386
outrad=8.2 massdens=density/g
numholes=4 circumf=2*pi*rad
thick=outrad-inrad area=pi*r**2
e=2.7e6 dist=sqrt((y2-y1)**2+(x2-x1)**2)
density=0.283 slope=(y2-y1)/(x2-x1)
bb=cos(30) theta=atan(slope)
pi=acos(-1) jobname=‘proj1’
用*SET 看有用参数列表
·以上例子是关于标量参数的, 它只有一个值—数字或者字符。
·ANSYS 也提供数组参数, 它有若干个值。数字数组和字符数组都是有效的。字符数组在本教程中不讨论。
一些命名规则:
·参数名不超过8个字符,并以字母开头。
·参数名中只能出现字母,数字和下划线。
·避免以下划线开头,这在ANSYS 中另有它用。
·参数名不分大小写,如“RAD”和“Rad”是一样的。所有的参数都以大写形式存储。
·避免使用ANSYS 标识,如STAT, DEFA, 和ALL。
B.使用参数
·使用参数时,只需在对话框中或通过命令输入参数名就行了。
·例如, 利用参数定义一个w=10,h=5的矩形,
–您可以使用以下菜单:
Preprocessor > Create > Rectangle > By 2 Corners +
–或命令:
/prep7
blc4,,,w,h
注意:
·当使用参数时, ANSYS 将立刻把参数名换为它的值。
上一个例子中的矩形将被存为10x5 , 而不是wxh。也就是说,如果你在生成矩形后再改变w 或h 的值,矩形将不被修改。
·其它一些关于参数用法的例子:
jobname=‘proj1’
/filnam,jobname ! 作业名
/prep7
youngs=30e6
mp,ex,1,youngs ! 杨氏模量
force=500
fk,2,fy,-force ! 2号关键点的力
fk,6,fx,force/2 ! 6号关键点的力
C. 从数据库中获取信息
·从数据库中获取信息并给参数赋值, 使用*GET命令或Utility Menu > Parameters > Get Scalar Data...
·对获取大量信息是很有用的,包括模型和结果数据,请参看*GET命令的详细资料。
·例子:
*get,x1,node,1,loc,x ! x1 =节点1的x坐标[CSYS]*
/post1
*get,sx25,node,25,s,x ! sx25 = 节点25的x方向应力[RSYS]*
*get,uz44,node,44,u,z ! uz44 =节点44的UZ方向的位移[RSYS]*
nsort,s,eqv ! 对节点的von Mises 应力排序
*get,smax,sort,,max ! smax= 排序的最大值
etable,vol,volu ! 用vol 存储单元体积
ssum ! 对单元表的列求和
*get,totvol,ssum,,vol ! totvol= 对vol的列求和
*CSYS = 激活坐标系(CSYS)
RSYS = 激活的结果坐标系(RSYS)
·一些数据可以通过函数获取。
例如:
x1=nx(1) ! x1 = 节点1的x坐标[CSYS]*
nn=node(2.5,3,0) ! nn= 在(2.5,3,0)处的节点[CSYS]*
/post1
ux25=ux(25) ! ux25 = 25号节点的UX 值[RSYS]*
temp93=temp(93) ! temp93 = 节点93的温度值
width=distnd(23,88) ! width = 23号节点和88号节点间的距离
*CSYS = 激活坐标系(CSYS)
RSYS = 激或的结果坐标系(RSYS)
·在一些地方您可以直接取函数值,就象用一个参数一样。例如:
k,10,kx(1),ky(3) ! 10号关键点x坐标取1号关键点的x坐标,y坐标取!3号关键点的y坐标
k,11,kx(1)*2,ky(3) ! [CSYS]*
f,node(2,2,0),fx,100 !在节点(2,2,0)施加力FX [CSYS]*