终于对UEL下手了!
UEL(Uer Element)是Abaqus众多子程序中最复杂的其中之一(另一个当然是Umat啦~),本篇文章将带着大家从理论到代码,step-by-step编写最简单的二维线性弹簧单元,并与Abaqus自带的弹簧单元做对比,验证代码的正确性。
图1 弹簧单元的节点位移及节点力
理论公式:
do 5 k1=1,4
RHS(k1,NRHS)=0
do 5 k2=1,4
AMATRX(k2,k1)=0
5 continue
STX=PROPS(1)
STY=PROPS(2)
AMATRX(1,1)=STX
AMATRX(1,3)
AMATRX(2,2)
AMATRX(2,4)
AMATRX(3,1)
AMATRX(3,3)
AMATRX(4,2)
AMATRX(4,4)=STY
do 85 K1=1,4
FORCE(K1)=0
DO 80 K2=1,4
FORCE(K1)=FORCE(K1)+AMATRX(K1,K2)*U(K2)
80 continue
RHS(K1,1)=RHS(K1,1)-FORCE(K1)
85 continue
SVARS(1)=U(1)-U(3)
SVARS(2)=U(2)-U(4)
SVARS(3)=STX*SVARS(1)
SVARS(4)=STY*SVARS(2)
*USER ELEMENT, NODES=2, TYPE=U1, PROPERTIES=3, COORDINATES=2, VARIABLES=4
1,2
*ELEMENT, TYPE=U1, ELSET=SP
1001, 64,44
*UEL PROPERTY, ELSET=SP
10.0, 20.0
往期推荐
相关文章,在仿真秀官网搜索:
Abaqus-Umat子程序理论基础与代码编写
弹塑性线性强化切线刚度Umat(2)
弹塑性线性强化常刚度Umat(1)
Abaqus-Umat线性随动强化子程序验证