本文摘要(由AI生成):
本文介绍了宏文件在ANSYS中的高级定制技巧,特别是如何通过ARGn变量实现外部参数输入。以创建矩形和地震反应谱分析为例,详细说明了宏文件的创建和调用过程,包括定义变量、计算反应谱和存储结果等步骤。文章强调了对基本概念的理解与提升在提升个人能力中的重要性,并鼓励读者深入掌握基本命令的使用。
APDL中的变量与其他编程语言一样,具有全局变量、局部变量和系统变量之分,一般情况下,我们定义的变量为全局变量,也即定义变量后,在删除变量或者退出ANSYS之前,该变量一直存在于内存中,可以随时调用。而局部变量则一般用于宏文件中,其生命周期与宏文件的使用周期相同,当宏文件运行完毕后,宏文件中的局部变量都会在内存中消失,这里的局部变量包括两种类型:
宏文件内部定义的变量很好理解,其实和我们平时定义变量雷同,只是其使用范围仅限于宏文件整个运行周期而已。这里重点说下宏文件外部输入的变量。
通过外部输入变量,能实现很多参数化宏文件的定制,是宏文件使用的高级技巧,应重点掌握。一个宏命令,可以同时输入19个变量,变量代号分别是ARG1~ARG2,也即在创建过程中,如果需要外部输入参数,我们只需要以ARGn 的格式代替就行,变量类型包括但不仅限于数值型变量,使用格式如下:
!创建宏文件
*Create,File_name,mac
!========
………
!以创建矩形为例,定义长宽为外部输入的参数
Blc4,,,ARG1,ARG2
!========
*enddo
!宏文件创建完毕
!===========
!宏文件调用
File_name,A1,A2
!其中A1、A2分别按顺序赋值给ARG1、ARG2
下面以地震反应谱分析为例,说明创建求解地震反应谱的宏文件创作过程。按《抗规》第5.1节相关内容创建,在生成地震反应谱的时候,需要输入如下几个参数:
1)特征周期;
2)最大反应影响系数;
3)阻尼比;
4)加速度调整系数,创建宏文件以N-m单位制为准,如果采用N-mm,则需要乘以1000的系数。
*Create, EQ_response,mac
!==========
!创建外部参数
tg=arg1 !设计特征周期
refmax=arg2 !地震反应影响系数
kes=arg3 !阻尼比
cha=arg4 !加速度调整系数
!=========================
!按《抗规》5.1.5 求解对应参数。
gra=9.8*arg4
eta1=0.02+(0.05-kes)/(4+32*kes)
eta2=1+(0.05-kes)/(0.08+1.6*kes)
gama=0.9+(0.05-kes)/(0.3+6*kes)
!求解反应谱
*if,eta1,lt,0,then
eta1=0
*endif
*if,eta2,lt,0.55,then
eta2=0.55
*endif
!=================
frenum=20
*dim,TTT,,Frenum
*dim,fres,,frenum
*dim,aces,,frenum
!===================
TTT(1)=0.0
TTT(2)=0.1
*do,i,3,15
TTT(i)=i*tg/3.0
*enddo
Tz=6.0-5*tg
NTD=TZ/tg/5
*do,i,16,frenum
TTT(i)=5*tg+(i-15)*NTD*TG
*enddo
!====================
aces(1)=0.45*refmax*gra
aces(2)=eta2*refmax*gra
aces(3)=aces(2)
*do,i,4,15
aces(i)=(tg/TTT(i))**gama*eta2*refmax*gra
*enddo
*do,i,16,frenum
temp1=eta2*0.2**gama-eta1*(TTT(1)-5*tg)
aces(i)=temp1*refmax*gra
*enddo
!====================
!存储反应谱
fres(frenum)=1e5
*do,i,2,frenum
fres(frenum+1-i)=1/TTT(i)
*enddo
*do,i,1,frenum
TTT(Frenum=1-i)=aces(i)
*enddo
*vfun,aces(1),copy,ttt(1)
!===================
!删除多余变量
TTT=$eta1=$eta2=$tg=$refmax=$kes=$gama=
gra=$TZ=$NTD=$i=$temp1=$cha=
*enddo
!结束创建
例:针对某钢筋混凝土结构,设防烈度为7度0.1g,场地类别为二类,设计分组为第一组,以N-mm单位制建模,则计算反应谱时输入格式如下:
!==========
EQ_response,0.35,0.08,0.05,1000
!==========
关于宏文件的系列讲解就到这儿,当然这里讲的都是最基本的,但万变不离其宗,实际工程中很多巧妙用法其实都是源于对基本概念的理解与提升,作为刚学习APDL的人员,把握好基本命令的使用才是提升个人能力的捷径。
祝好
ANSYS 结构院