盾构管片修正惯用法内力计算 ansys命令流
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
!匀质圆环,在原程序上加了静水压力,故本命令流适合水土分算
fini
/cle
*dim,wxn,array,2000 !!定义名为wxn的数组,2000行1列,下同
*dim,wyn,array,2000
*dim,xn,array,2000
*dim,yn,array,2000
*dim,fxn,array,2000
*dim,fyn,array,2000
*dim,aa1,array,2000
*dim,bb1,array,2000
*dim,aa2,array,2000
*dim,bb2,array,2000
*dim,jx1,array,2000
*dim,jy1,array,2000
*dim,jx2,array,2000
*dim,jy2,array,2000
定义参数并赋值
nodesum=120 单元数
pi=3.1415927
height=0.35 环厚0.35米
width=1.0 环宽
area=height*width 面积
inertia=width*height*height*height/12 惯性矩
emod=34500*1000000 弹性模量,按C50混凝土计
radius=2.925 计算半径
density=25*1000/10 材料密度
wradius=radius+0.5 弹簧节点所处半径
tankang=12*1000000*width 弹簧刚度,MPa/m
赋荷载值
ptop=200*1000*width 顶板压力,单位按KN计
pltop=80*1000*width 侧向压力
plbot=50*1000*width 侧向沿竖向增加的侧压,即墙底水平压力为pltop+plbot pbot=140*1000*width 底板压力
water=8.0*1000*width 顶板处水位埋深
/prep7
et,1,beam3 定义单元类型,弹模,密度,实常数
mp,ex,1,emod
mp,dens,1,density
mp,prxy,1,0.2
r,1,area,inertia,height
et,2,combin39 定义弹簧单元
keyopt,2,1,0 0为沿与加载相同的路径卸载
keyopt,2,2,0 按照所定义的受压曲线加压力荷载
keyopt,2,3,0 沿节点X轴方向平动
keyopt,2,4,3 二维轴向单元
keyopt,2,6,0 基本单元输出
*do,i,1,nodesum,1
xn(i)=radius*cos(pi/2+(i-1)*(2*pi/nodesum)) 定义管片节点I的x坐标yn(i)=radius*sin(pi/2+(i-1)*(2*pi/nodesum)) 定义管片节点I的y坐标
n,i,xn(i),yn(i) 生成管片节点I
*enddo
*do,i,1,nodesum,1
wxn(i)=wradius*cos(pi/2+(i-1)*(2*pi/nodesum)) 定义弹簧节点I的x坐标wyn(i)=wradius*sin(pi/2+(i-1)*(2*pi/nodesum)) 定义弹簧节点I的y坐标n,i+nodesum,wxn(i),wyn(i) 生成弹簧节点I
*enddo
生成单元,类型为1,实常数为1
type,1
real,1
*do,i,1,nodesum-1,1
e,i,i+1
*enddo
e,nodesum,1
生成弹簧单元
len=radius*(2*pi/nodesum)
wytankang=len*tankang
r,2,-1,-wytankang,0,0,1,wytankang/1000000
type,2
real,2
*do,i,1,nodesum,1
e,i,i+nodesum
*enddo
*do,i,2,nodesum,1
aa1(i)=abs(xn(i)-xn(i-1)) 取两节点X坐标差的绝对值,并赋给数组aa1
bb1(i)=abs(yn(i)-yn(i-1))
jx1(i)=xn(i)*xn(i-1) 取两节点X坐标的乘积,并赋给数组jx1 jy1(i)=yn(i)*yn(i-1)
*enddo
aa1(1)=abs(xn(1)-xn(nodesum))
bb1(1)=abs(yn(1)-yn(nodesum))
jx1(1)=xn(1)*xn(nodesum)
jy1(1)=yn(1)*yn(nodesum)
*do,i,1,nodesum-1,1
aa2(i)=abs(xn(i)-xn(i+1)) 相邻两节点坐标差的绝对值
bb2(i)=abs(yn(i)-yn(i+1))
jx2(i)=xn(i)*xn(i+1) 相邻两节点x坐标乘积
jy2(i)=yn(i)*yn(i+1)
*enddo
aa2(nodesum)=abs(xn(nodesum)-xn(1))
bb2(nodesum)=abs(yn(nodesum)-yn(1))
jx2(nodesum)=xn(nodesum)*xn(1)
jy2(nodesum)=yn(nodesum)*yn(1)
*do,i,1,nodesum,1
*if,yn(i),lt,0,then 如yn(i)小于0(x轴以下的节点),则
a1=aa1(i)
a2=aa2(i)
fyn(i)=pbot*(a1+a2)/2
*elseif,yn(i),gt,0 如yn(i)大于0(x轴以上的节点),则
a1=aa1(i)
a2=aa2(i)
fyn(i)=-ptop*(a1+a2)/2
*else