*get,nnn4,node,0,count
egen,2,nnn4+kld,1,kld,1,,,,,,kx ,ky
/UIS,MSGPOP,3
edele,1,kld,1
ndele,1,kld+1
/auto,1
/rep
finish
/solu
allsel
nsel,s,loc,x,kx(5)-0.001,kx(5)+0.001
nsel,r,loc,y,ky(5)-0.001,ky(5)+0.001
d,all,ux,0,,,,uy,uz
allsel
nsel,s,loc,x,kx -0.001,kx +0.001
nsel,r,loc,y,ky -0.001,ky +0.001
d,all,uy,0,,,,uz
allsel
nsel,s,loc,x,kx(7)-0.001,kx(7)+0.001
nsel,r,loc,y,ky(7)-0.001,ky(7)+0.001
d,all,ux,0,,,,uz
allsel
nsel,s,loc,x,kx -0.001,kx +0.001
nsel,r,loc,y,ky -0.001,ky +0.001
d,all,uz,0,,,,
allsel
CPINTF,ALL,0.0001,
finish
gplot
*elseif,hole,eq,6,then!!!!!!!!!!!!!!!!!六点建模
/prep7
/UIS,MSGPOP,3
et,1,shell63
*if,type,eq,1,then
thforcal=1.1*thi
*elseif,type,eq,2,then
thforcal=1.1*1.25*thi
*elseif,type,eq,3,then
thforcal=1.1*1.20*thi
*endif
r,2,thforcal
mp,ex,2,2.06e11
mp,prxy,2,0.3
csys,1
n,1,
n,2,kr,
kld=holediv
ngen,kld,1,2,,,,360/kld
*creat,make,mac
et,2,shell63
real,2
mat,2
! :do loop1
*do,i,2,kld,1
e,1,i,i+1
*enddo
finish
/prep7
e,1,kld+1,2
*end
make
finish
/prep7
csys,0
k,1,1,1
k,2,1+w,1
*afun,deg
k,3,1+H*cos(a1)/sin(a1),1+H
k,4,1+w-H*cos(a2)/sin(a2),1+H
k,5,kbw/sin(a1)+kbh*cos(a1)/sin(a1)+kx(1),kbh+ky(1)
k,6,kx(2)-kbw/sin(a2)+kbh*cos(a2)/sin(a2),kbh+ky(2)
k,7,kx(3)+kbw/sin(a1)-kbh*cos(a1)/sin(a1),ky(3)-kbh
k,8,kx(4)-kbw/sin(a2)+kbw*cos(a2)/sin(a2),ky(4)-kbh
hp=ky(7)-ky(5)
xx9=(hp-dbottom)*(kx(7)-kx(5))/hp
yy9=ky(5)+dbottom
xx10=(hp-dbottom)*(kx -kx )/hp
yy10=ky +dbottom
k,9,kx(7)-xx9,yy9
k,10,kx +xx10,yy10
a,1,2,4,3
CYL4,kx(5),ky(5),kr
CYL4,kx ,ky ,kr
CYL4,kx(7),ky(7),kr
CYL4,kx ,ky ,kr
CYL4,kx(9),ky(9),kr
CYL4,kx(10),ky(10),kr
asba,1,2
asba,8,3
asba,1,4
asba,2,5
asba,1,6
asba,2,7
aplot
/UIS,MSGPOP,3
R,1,thforcal,
MP,EX,1,7.2e10
MP,PRXY,1,0.21
mp,dens,1,2560
SMRT,6
TYPE, 1
MAT, 1
REAL, 1
ESYS, 0
lsel,s,loc,y,ky(1)-0.01,ky(1)+0.01
lesize,all,,,wdiv
lsel,all
lsel,s,loc,y,ky(3)-0.01,ky(3)+0.01
lesize,all,,,wdiv
lsel,all
lsel,s,loc,x,kx(1)-0.01,kx(3)+0.01
lesize,all,,,hdiv
lsel,all
lsel,s,loc,x,kx(4)-0.01,kx(2)+0.01
lesize,all,,,hdiv
lsel,all
LSEL,S,LENGTH,,2*kr,l+w
LSEL,INVE
lesize,all,,,kld/4
smrtsize,6
mshape,1,2d
mshkey,0
amesh,1
eplot
*get,nnn1,node,0,count
egen,2,nnn1+kld,1,kld,1,,,,,,kx(5),ky(5)
*get,nnn2,node,0,count
egen,2,nnn2+kld,1,kld,1,,,,,,kx ,ky
*get,nnn3,node,0,count
egen,2,nnn3+kld,1,kld,1,,,,,,kx(7),ky(7)
*get,nnn4,node,0,count
egen,2,nnn4+kld,1,kld,1,,,,,,kx ,ky
*get,nnn5,node,0,count
egen,2,nnn5+kld,1,kld,1,,,,,,kx(9),ky(9)
*get,nnn6,node,0,count
egen,2,nnn6+kld,1,kld,1,,,,,,kx(10),ky(10)
/UIS,MSGPOP,3
edele,1,kld,1
ndele,1,kld+1
/auto,1
/rep
finish
/solu
allsel
nsel,s,loc,x,kx(5)-0.001,kx(5)+0.001
nsel,r,loc,y,ky(5)-0.001,ky(5)+0.001
d,all,ux,0,,,,uy,uz
allsel
nsel,s,loc,x,kx -0.001,kx +0.001
nsel,r,loc,y,ky -0.001,ky +0.001
d,all,uy,0,,,,uz
allsel
nsel,s,loc,x,kx(7)-0.001,kx(7)+0.001
nsel,r,loc,y,ky(7)-0.001,ky(7)+0.001
d,all,ux,0,,,,uz
allsel
nsel,s,loc,x,kx -0.001,kx +0.001
nsel,r,loc,y,ky -0.001,ky +0.001
d,all,uz,0,,,,
allsel
nsel,s,loc,x,kx(9)-0.001,kx(9)+0.001
nsel,r,loc,y,ky(9)-0.001,ky(9)+0.001
d,all,ux,0,,,,uz
allsel
nsel,s,loc,x,kx(10)-0.001,kx(10)+0.001
nsel,r,loc,y,ky(10)-0.001,ky(10)+0.001
d,all,uz,0,,,,
allsel
CPINTF,ALL,0.0001,
finish
gplot
*endif
finish
/solu!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!求解部分
Ek=3*seismic*(thi+tho)*26.0*1000*9.8
w=1.4*wk
e=1.3*ek
q1=0.6*ek+wk
q2=w+0.6*e
finish
/solu
/UIS,MSGPOP,3
esel,s,real,,1,1,1
eplot
sfe,all,1,pres,,q1
acel,,gravity,
allsel
gplot
*if,switch,eq,1,then
nlgeom,off
kbc,1
*elseif,switch,eq,2,then
nlgeom,on
sstif,on
nsubst,10
kbc,1
*endif
solv
finish
/post1
esel,s,real,,1,1,1
AVPRIN
plnsol,u,sum,0,1
*get,numall,node,0,count
*get,numstart,node,0,num,min
umax=0
inuse=numstart
*do,i,1,numall,1
*get,usum,node,inuse,u,sum
*if,umax,ge,usum,then
umax=umax
*elseif,umax,lt,usum,then
umax=usum
*endif
inuse=ndnext(inuse)
*enddo
finish
/solu
/UIS,MSGPOP,3
esel,s,real,,1,1,1
eplot
sfe,all,1,pres,,q2
allsel
gplot
*if,switch,eq,1,then
nlgeom,off
kbc,1
solv
finish
/post1
esel,s,real,,1,1,1
AVPRIN
plnsol,s,eqv,0,1
allsel
esel,s,real,,1,1,1
NSLE,S
*get,numall,node,0,count
*get,numstart,node,0,num,min
smax=0
inuse=numstart
*do,i,1,numall,1
*get,ssum,node,inuse,s,eqv
*if,smax,ge,ssum,then
smax=smax
*elseif,smax,lt,ssum,then
smax=ssum
*endif
inuse=ndnext(inuse)
*enddo
allsel
*if,thforcal,le,0.012,then
dmq=84
kbq=58.8
*elseif,thforcal,gt,0.012,then
dmq=59
kbq=41.3
*endif
*if,h,lt,w,then
duanb=h
*elseif,h,ge,w,then
duanb=w
*endif
str=smax/1e6
esel,s,real,,1,1,1
/UIS,MSGPOP,1
*msg,note,str,umax*1000,dmq,10*duanb
Ultimate Limit States Glass STRESS=%gMa,%/&
Serviceabilitylimits DISPLACEMENT=%gmm,%/&
[Toughened Glass Allowble Stress]=%gMa,%/&
[Control Displacement]=%gmm,
/UIS,MSGPOP,3
*elseif,switch,eq,2,then
nlgeom,on
sstif,on
nsubst,10
kbc,1
solv
finish
/post1
esel,s,real,,1,1,1
AVPRIN
plnsol,s,eqv,0,1
allsel
esel,s,real,,1,1,1
NSLE,S
*get,numall,node,0,count
*get,numstart,node,0,num,min
smax=0
inuse=numstart
*do,i,1,numall,1
*get,ssum,node,inuse,s,eqv
*if,smax,ge,ssum,then
smax=smax
*elseif,smax,lt,ssum,then
smax=ssum
*endif
inuse=ndnext(inuse)
*enddo
allsel
*if,thforcal,le,0.012,then
dmq=84
kbq=58.8
*elseif,thforcal,gt,0.012,then
dmq=59
kbq=41.3
*endif
*if,h,lt,w,then
duanb=h
*elseif,h,ge,w,then
duanb=w
*endif
str=smax/1e6
esel,s,real,,1,1,1
/UIS,MSGPOP,1
*msg,note,str,umax*1000,dmq,10*duanb
Ultimate Limit States Glass STRESS=%gMa,%/&
Serviceabilitylimits DISPLACEMENT=%gmm,%/&
[Toughened Glass Allowble Stress]=%gMa,%/&
[Control Displacement]=%gmm,
/UIS,MSGPOP,3
*elseif,swtich,eq,0
allsel
gplot
*endif
/gopr
finish
/encrypt
|