【算例分享】地震作用下水箱晃动分析(附命令流和K文件)
从其他论坛看到的,给大家分享一下~最用ANSYS LS-DYNA做的地震载荷作用下(唐山地震数据)水箱晃动的练习,分享给大家。由于液面晃动不明显,所以采用Lagrange构型,没有用Euler或ALE
APDL命令流:
地震加速度数据,单位是cm/s^2:
k文件:
筒体为钢,shell163单元,水体为solid164,与筒体共节点。
水的状态方程参数取自文献:Numerical Simulation of 2D Sloshing by using ALE2D Technique of LS-DYNA and CCUP Methods
液面的晃动,z方向位移云图:
液面中心相对位移:
地震加速度载荷:
!****************************************************************
finish
/clear
/FILNAME,Sloshing-of-the-water-tank-Lagrange,1
/prep7
/Titie,Sloshing of the water tank
/DSCALE,ALL,1
/eshape,1
!---------视角调整
/VIEW,1,1,1,1
/ANG,1
/REP,FAST
/ANG,1,-120,ZS,1
/REP,FAST
!---------背景色
/RGB,INDEX,100,100,100, 0
/RGB,INDEX, 80, 80, 80,13
/RGB,INDEX, 60, 60, 60,14
/RGB,INDEX, 0, 0, 0,15
/REPLOT
!****************************************************************
!---------------------------控制参数-----------------------------
!****************************************************************
ShockTime = 5 !地震持续时间
TotalTime = 10 !总时间
!---------
Thickness=10e-3 !筒体的厚度
HeightB=5 !筒体的高度
RadiusB=5 !筒体的半径
!---------
HeightW=2.5 !液面的高度
!---------
meshSize=HeightB/11 !网格控制,要确保原点位置处存在节点,也就是中心四边形的单元划分数为偶数
!---------
MassScale =5e-7 !质量缩放控制
!****************************************************************
!--------------------------单元和实常数--------------------------
!****************************************************************
ET,1,SOLID164 !用于模拟水的实体单元
KEYOPT,1,1,1
KEYOPT,1,5,0 !Lagrange构型
ET,2,SHELL163 !用于模拟筒体的壳单元
R,1,5/6,2,Thickness,Thickness,Thickness,Thickness,
!****************************************************************
!----------------------------材料参数----------------------------
!****************************************************************
!---1:Steel--- !钢桶的材料属性
MP,DENS,1,7850
MP,EX,1,210e9
MP,NUXY,1,0.3
TB,BKIN,1,,,,
TBDAT,1,250e6,21e9
!---2:Water--- !水的材料属性
MP,DENS,2,1000
TB,EOS,2,,,2,1
TBDAT,16,0
TBDAT,17,2.002e9
TBDAT,18,8.436e9
TBDAT,19,8.010e9
TBDAT,20,0.4395
TBDAT,21,1.3937
TBDAT,22,0
TBDAT,23,2.067e5
TBDAT,24,1
!---3:桶底---- !桶底为刚体
EDMP,RIGI,3,0,0
MP,DENS,3,7850
MP,EX,3,210e9
MP,NUXY,3,0.3
!****************************************************************
!--------------------------建模及网格划分------------------------
!****************************************************************
CYL4,0,0,RadiusB, , , ,HeightW !建立水体
CSYS,4
wpro,45.0,,
BLC5,0,0,RadiusB/2,RadiusB/2,HeightW!建立立方体,用于切割,以便划分均匀大小的网格
VSBV,1,2
BLC5,0,0,RadiusB/2,RadiusB/2,HeightW
VGLUE,ALL
!---------
wpro,-45.0,,
wpro,,,90.000000
vsel,s,,,2,4,1
VSBW,all
wpro,,90.0,
allsel
vsel,s,,,3,4,1
VSBW,all
allsel
!---------
WPCSYS,-1,0
k,100,0,0,HeightW
k,101,0,0,HeightB
l,100,101
allsel
lsel,s,,,5,8,1
ADRAG,all, , , , , , 21
allsel
!---------给水划分网格
vatt,2,,1,,,
MSHAPE,0,3D
MSHKEY,1
lesize,all,meshSize !网格密度
vmesh,all
!---------给钢桶边划分网格
allsel
asel,s,,,7,8,1
asel,a,,,11,12,1
asel,a,,,17,20,1
MSHAPE,0,2D
MSHKEY,1
aatt,1,1,2,,,
amesh,all
!---------给钢桶底边划分网格
allsel
asel,s,,,1,3,2
asel,a,,,16,
asel,a,,,23,25,2
aatt,3,1,2,,,
amesh,all
!---------建立节点集合
allsel
cm,allstuff,node
!---------
allsel
asel,s,,,1,3,2
asel,a,,,16,
asel,a,,,23,25,2
CM,BottomA,AREA !创建桶底面集合BottomA
NSLA,S,1
NSEL,R,LOC,X,0
NSEL,R,LOC,Y,0
CM,Bottom,node !创建桶底集合Bottom,由于是刚体,所以只需一个节点
!****************************************************************
!----------------------------边界条件----------------------------
!****************************************************************
!
WPCSYS,-1,0
CSYS,0
DA,BottomA,UZ, !约束桶底竖向位移
allsel
!
!---------建立加速度表
!---------重力加速度,施加到allstuff
*DIM,timeZ,ARRAY,2,1,1, , ,
*SET,timeZ(2,1,1) , TotalTime
*DIM,ACCGZ,ARRAY,2,1,1, , ,
*SET,ACCGZ(1,1,1) , 9.8
*SET,ACCGZ(2,1,1) , 9.8
edload,add,ACLZ,,allstuff,timeZ,ACCGZ
!
!---------地震加速度,施加到Bottom
tnum=TotalTime/0.01+1
dnum=ShockTime/0.01+1 !地震波数据间隔是0.01s,总数据个数为dnum
*dim,eqw,array,tnum,1,1,,,
*VREAD,eqw,Earthquake-wave,dat,,,,,,0,
(e16.0)
*dim,time,array,tnum,1,1,,,
*do,i,1,tnum,1
time(i,1,1)=(i-1)*0.01
*if,i,le,dnum,then
eqw(i,1,1)=0.01*eqw(i,1,1) !加速度单位从cm/s^2转换成m/s^2
*else
eqw(i,1,1)=0
*endif
*enddo
edload,add,ax,0,Bottom,time,eqw
!edload,add,vx,0,Bottom,time,eqw
finish
!
!$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
!-------------------------Solution-------------------------------
!$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
!
/solution
time,TotalTime
!---------
!EDOPT,ADD,blank,LSDYNA
EDWRITE,BOTH
EDRST,200,
EDHTIME,10
EDENERGY,1,1,1,1 !turn all energy options on
!EDCTS,-MassScale, !质量缩放
!---------
solve
save
finish
!$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
!----------------------------POST1-------------------------------
!$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
/post1
set,last
!---------绘制位移云图(sum)
PLNSOL, U,SUM, 0,1.0
!---------保存动画
!PLNS,U,SUM
!ANTIME,100,0.2, ,1,0,0,0
!/ANFILE,save,Usum,avi
finish
!$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
!----------------------------POST26------------------------------
!$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
/post26
!---------
!水面中心节点号
allsel
ESEL,S,MAT,,2
NSLE,R
NSEL,R,LOC,X,0
NSEL,R,LOC,Y,0
NSEL,R,LOC,Z,HeightW
*get,numWaterCer,Node,0,num,max
!---------
!钢桶底部中心节点号
allsel
ESEL,S,MAT,,3
NSLE,R
NSEL,R,LOC,X,0
NSEL,R,LOC,Y,0
NSEL,R,LOC,Z,0
*get,numBottCer,Node,0,num,max
!---------
allsel
NSOL,2,numWaterCer,U,X, UX_2 !水面中心的x方向绝对位移
NSOL,3,numWaterCer,V,X, VX_3 !水面中心的x方向绝对速度
NSOL,4,numWaterCer,A,X, AX_4 !水面中心的x方向绝对加速度
!---------
NSOL,22,numBottCer,U,X, UX_22 !钢桶底部中心的x方向绝对位移
NSOL,23,numBottCer,V,X, VX_23 !钢桶底部中心的x方向绝对速度
NSOL,24,numBottCer,A,X, AX_24 !钢桶底部中心的x方向绝对加速度
!---------计算相对值
ADD,25,2,22,,absWaUx,,,1,-1,1, !水面中心的x方向相对位移
ADD,26,3,23,,absWaVx,,,1,-1,1, !水面中心的x方向相对速度
ADD,27,4,24,,absWaAx,,,1,-1,1, !水面中心的x方向相对加速度
!---------
XVAR,1
!---------
PLVAR,25, 好资料啊~谢谢楼主分享 不错的练习资料,谢谢分享 亲,我打算用lsdyna做晃荡,请问有没有教程啊。。 谢谢分享 jxdlxsys 发表于 2017-6-27 17:04
亲,我打算用lsdyna做晃荡,请问有没有教程啊。。
我也做这个,能不能相互交流下。
页:
[1]