风振时程分析一直是大跨度结构的研究重点,例如大跨度网壳结构,大跨度悬索桥等。一般而言,对于风振时程分析,常用 通用有限元软件来做,其中ANSYS软件的APDL以其强大的语言优势深得广大工程师喜爱。本文就简单介绍如何用APDL进行网壳结构风振时程分析。
常见的网壳结构风振时程步骤如下:
1、根据所选功率谱,采用谐波叠加法,或者线性AR法采用Matlab生成脉动风风速。
2、根据伯努利方程将风压时程转为风压时程
3、根据有限元节点投影面积,将风压时程转为力的时程,当然也可以直接用表面效应单元直接加载风压时程。
4、利用ANSYS软件的瞬态分析功能 进行风振时程分析。
下面以某弦支穹顶结构为例,简单说明采用APDL进行风振时程分析的过程,所选结构跨度为72m,矢高为7.2m,结构有限元模型如下所示:
1、首先采用*do循环获取每个节点的离地高度(根据Z坐标和地面标高的关系换算),得到坐标文件,然后导入Matlab,根据谐波叠加法的原理生成各个节点的脉动风风速,最后导出为风速文件供APDL读取。
单个节点的风速功率谱和目标功率谱如下所示,从图中可见,功率谱吻合较好,说明matlab风速代码比较可靠。
Matlab批量生成风速的函数输入参数如下所示:
Matlab中各个节点的脉动风风速如下所示:
不同节点的脉动风风速如下所示:
上述matlab代码来源于下面这篇文章:
Matlab谐波迭加法风速时程生成代码
2、将上述操作生成的脉动风风速,通过*Vread命令将其读入ANSYS中,由于这里是采用的表面效应单元进行风压时程分析,所以无需单独计算每个节点的投影面积,但是需要计算每个表面效应单元对应的风速,这里采用平均化的思想,将一个表面效应单元三个节点的风速相加最后求其平均值得到表面效应单元对应的风速时程。
3、根据风速和风压的关系,将风速转为风压。值得说明的是,在转为风压的时候,要根据《建筑结构荷载规范》计算每个效应单元所在位置对应的体型系数。
第2、3步的典型代码如下所示:
!读取每个节点的风速时程
*dim,Windx,,500,133
*dim,WindZ,,500,133
*create,AA,mac
*vread,windx(1,1),fengshux,txt,,jik,133,500
(133F10.5)
*vread,windz(1,1),fengshuz,txt,,jik,133,500
(133F10.5)
*end
AA
!==================
!计算每个表面效应单元的风压
esel,s,ename,,154
*dim,SurfP,,500,elemax-elemin+1 !储存风压力
*do,i,elemin,elemax
!返回节点编号
node_1=nelem(i,1)
node_2=nelem(i,2)
node_3=nelem(i,3)
!计算三个节点风速的平均值
*do,j,1,500
!水平风速平均值
Surfx=(Windx(j,node_1)+Windx(j,node_2)+Windx(j,node_3))/3
!竖向风速平均值
Surfz=(Windz(j,node_1)+Windz(j,node_2)+Windz(j,node_3))/3
!根据伯努利方程,风压和风速的关系
!wo=0.5*dens*v^2,N/M^2,要转为Mpa
SurfP(j,i-elemin+1)=(surfx*fengfai(i-elemin+1)+surfz)**2*0.5*1.2*1e-6
*enddo
*enddo
4、进入ANSYS的瞬态分析,计算风压,在计算之前,要进行结构模态分析,得到结构的频率,根据结构的频率计算阻尼参数。
风压加载动力时程分析代码如下所示:
timint,on
*do,i,1,500
time,0.1*i
!加载每个效应单元的风压
*do,j,elemin,elemax
sfe,j,1,pres,,surfp(i,j-elemin+1)
*enddo
allsel,all
acel,,,9800
solve
5、结果查看
1)1号节点X方向的位移响应
2)1号节点X方向的速度响应
3)1号节点X方向的加速度响应
4)127号支座竖向支反力的响应
5)483号索单元轴力的响应
以上内容 均来源于 水哥最新视频教程《ANSYS APDL弦支穹顶专题教程》,点击下方文章了解详情。
ANSYS APDL弦支穹顶专题课程–快速提升APDL水平
更多即时资讯,欢迎扫描如下二维码关注本站微信公众号:ANSYS结构院
暂无评论内容