小学渣开始学习APDL语言时间不是很久,尝试用SHELL181与BEAM188一起画了一个钢桥,桥面是壳单元,其余部分都是梁单元,如图1所示,看上去挺科学的但是如果尝试求解的话会提示:【刚度阵不正定,一般来说存在没有被约束住的刚体模态。】但是反复看来看去学弱都觉得写的没什么大错orz,求各位大神指点迷津,不甚感谢。因为写的比较长,材料组数等相对比较多,所以悬赏分数也相应地提高了一些。
图1:单元示意图
附录:APDL代码:
/PREP7
Fail=600e6 !Fail Stress of the material
DPipe=5 !Diameter of the pillars
TCPP=0.001 !Thickness of the pillars
DArc=8 !Diameter of the Arc
TCArc=0.01 !Thickness of the Arc
DASupport=2!Diamter of the supportive lines
TCSupport=0.01!Thickness of the supportive lines
TCSH=0.001 !Thickness of the plate
TCSH2=0.01 !Thickness of the second plate
H=50 !Height of the bridge
DeltaX=150 !DeltaX of the pillars
DeltaZ=16 !Wedth of the bridge
Dividen=13 !Dividen of the arc
Young2=210e9 !E of the second material
Miu2 =0.3 !Miu of the second material
DENS2=7800 !Density of the second material
ShellMeshSize=10
PillarMeshSize =50
ArcMeshSize=500
SpprtMeshSize=20
*DIM,DivXi,ARRAY,Dividen-1,1,1
*DO, I, 1,Dividen-1,
DivXi(I)=I*DeltaX/Dividen
*ENDDO
!* Set the Element
ET,1,BEAM188
ET,2,SOLID185
ET,3,SHELL181
!Set the Material
!Material 1
MPTEMP,,,,,,,, !Material Temperature
MPTEMP,1,0
MPDATA,DENS,1,,7800
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,EX,1,,210e9
MPDATA,PRXY,1,,0.3
!Material 2
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,EX,2,,Young2
MPDATA,PRXY,2,,Miu2
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,DENS,2,,DENS2
!Set the section
!Pillars
SECTYPE, 201, BEAM, CTUBE, Pillars, 0
SECOFFSET, CENT
SECDATA,DPipe/2,TCPP+DPipe/2,0,0,0,0,0,0,0,0,0,0
!Pillar at the middle
SECTYPE, 202, BEAM, CTUBE, Pillarmiddle, 0
SECOFFSET, CENT
SECDATA,DPipe/2,DPipe/2+TCPP/2,0,0,0,0,0,0,0,0,0,0
!Arc
SECTYPE, 203, BEAM, CTUBE, ARC, 0
SECOFFSET, CENT
SECDATA,DArc/2,DArc/2+TCArc,0,0,0,0,0,0,0,0,0,0
!Supportive lines
SECTYPE, 204, BEAM, CTUBE, Supportive, 0
SECOFFSET, CENT
SECDATA,DASupport/2,DASupport/2+TCSupport,0,0,0,0,0,0,0,0,0,0
!Shell
sect,205,shell,,Plate
secdata, TCSH,2,0.0,3
secoffset,MID
seccontrol,,,, , , ,
!Set the failure
FC,1,S,XTEN, Fail
FC,1,S,YTEN, Fail
FC,1,S,ZTEN, Fail
FC,1,S,XCMP,-Fail
FC,1,S,YCMP,-Fail
FC,1,S,ZCMP,-Fail
!Modeling
!Model the bridge surface
!Modeling the keypoints
*DO, I, 1, 6,
K, I,(I-1)*DeltaX,H,0
*ENDDO
*DO, I, 1, 5,
K,6+I,I*DeltaX,0,0
*ENDDO
*DO, I, 1, 6,
K,11+I,(I-1)*DeltaX,H,DeltaZ
*ENDDO
*DO, I, 1, 5,
K,17+I,I*DeltaX,0,DeltaZ
*ENDDO
! Modeling the Areas
A,1,12,13,2
A,2,3,14,13
A,3,4,15,14
A,4,5,16,15
A,5,6,17,16
!Modeling the Pillars
!Modeling the keypoints
K,23,0*DeltaX,0,0
K,24,0*DeltaX,0,DeltaZ
!Modeling the Pipes
*Do,I,1,5
LSTR,1+I,6+I
*ENDDO
*Do,I,1,5
LSTR,12+I,17+I
*ENDDO
!Modeling the Arc
!Modeling the keypoints
*Do,I,1,5
K,24+I,(I-0.5)*DeltaX,H,0
K,29+I,(I-0.5)*DeltaX,H,DeltaZ
*ENDDO
!Modeling the Pipes
*Do,I,1,4
LARC,17+I,18+I,30+I
LARC,6+I,7+I,25+I
*ENDDO
LARC,24,18,30
LARC,23,7 ,25
!Modeling the supportive Lines
*DIM,B,ARRAY,10,1,1
B(1)=35,34,32,30,28,27,29,31,33,36
*DIM,C,ARRAY,10,1,1
C(1)=2 ,14,11, 8, 5, 7,10,13,16, 4
counter=35
counter2=35+(Dividen-1)*10
Rarc=((DeltaX/2)**2+H**2)/(2*H)
Theta0=asin(DeltaX/2/Rarc)*2
Hi=sqrt(Rarc**2-(DeltaX/2)**2)
*DO,I,1,Dividen-1,
Tanhaha=(DivXi(I)-DeltaX/2)/Rarc
Theta=asin(Tanhaha)+0.5*Theta0
haha=Theta/Theta0
!haha=1-haha
*DO,J,1,5,
KL,B(J),haha,counter,
KL,C(J),1/Dividen*I,counter2,
counter=counter+1
counter2=counter2+1
*ENDDO
I=Dividen-I
*DO,J,6,10,
KL,B(J),haha,counter,
KL,C(J),1/Dividen*I,counter2,
counter=counter+1
counter2=counter2+1
*ENDDO
*ENDDO
counter=35
numpillar=(Dividen-1)*10
*DO,I,1,numpillar,
LSTR,counter,counter+numpillar
counter=counter+1
*ENDDO
*if,abs(nint(Dividen/2)-Dividen/2),le,0.3,then !If dividen is even
LDELE,37+(Dividen/2-1)*10,37+(Dividen/2-1)*10+9,0, !Delete the length zero lines
*endif
!Meshing the shells
asel,all
AATT, 2, , 3, 0, 205
mshkey,1
LESIZE,ALL,,,ShellMeshSize
amesh,all
allsel
!Meshing the Pillars
lsel,S,,,17,20,
lsel,A,,,22,25,
LATT,1, ,1, , , ,201
mshkey,1
LESIZE,ALL,,,PillarMeshSize
lmesh,all
allsel
!Meshing the Pillars Middle
lsel,S,,,26,26,
lsel,A,,,21,21,
LATT,1, ,1, , , ,202
mshkey,1
LESIZE,ALL,,,PillarMeshSize
lmesh,all
allsel
!Meshing the Arc
lsel,S,,,27,36,
LATT,1, ,1, , , ,203
mshkey,1
LESIZE,ALL,,,ArcMeshSize
lmesh,all
allsel
!Meshing the Supportive Lines
lsel,S,,,37,37+(Dividen-1)*10,
LATT,1, ,1, , , ,204
mshkey,1
LESIZE,ALL,,,SpprtMeshSize
lmesh,all
allsel
/sol
!Fix the DOFS on the bottom
KSEL,S,,, 7,11,
KSEL,A,,,18,24,
DK,ALL, ALL,0,
allsel
!Fix the DOFS on the left
LSEL,S,,,1,
DL,ALL,, ALL,0,
allsel
!Fix the DOFS on the right to apply symmetry boundary
LSEL,S,,,15,
LSEL,A,,,21,
LSEL,A,,,26,
! DL,ALL,, UX,0,
DL,ALL,,ALL,0,
allsel
!Gravity ON
ACEL,0,0,-9.8, |