有限元作业三角形单元求解文档格式.docx
《有限元作业三角形单元求解文档格式.docx》由会员分享,可在线阅读,更多相关《有限元作业三角形单元求解文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
(2)如图分别进行编号1、2、3、4、5、6,并建立坐标系
(3)编程进行求解,得出结果,其中假设力P=2000N
调用Triangle2D3Node_Stiffness函数,求出单元刚度矩阵
k1=
1.0e+06*
7.2857-3.0000-2.14290.8571-5.14292.1429
-3.00007.28572.1429-5.14290.8571-2.1429
-2.14292.14292.142900-2.1429
0.8571-5.142905.1429-0.85710
-5.14290.85710-0.85715.14290
2.1429-2.1429-2.1429002.1429
k2=
5.14290-5.14290.85710-0.8571
02.14292.1429-2.1429-2.14290
-5.14292.14297.2857-3.0000-2.14290.8571
0.8571-2.1429-3.00007.28572.1429-5.1429
0-2.1429-2.14292.14292.14290
-0.857100.8571-5.142905.1429
k3=
2.14290-2.1429-2.142902.1429
05.1429-0.8571-5.14290.85710
-2.1429-0.85717.28573.0000-5.1429-2.1429
-2.1429-5.14293.00007.2857-0.8571-2.1429
00.8571-5.1429-0.85715.14290
k4=
调用Triangle2D3Node_Assembly函数,求出总体刚度矩阵
求出的节点位移
U=
0
-0.0004
0.0008
0.0005
0.0010
0.0007
0.0023
-0.0007
0.0026
调用Triangle2D3Node_Stress函数,求出应力,S1、S2、S3、中求出的分别为Sx,Sy,Sxy
S1=
1.0e+03*
-4.4086
-0.7348
3.5914
S2=
4.4086
-0.6405
0.4086
S3=
1.8907
-1.0601
2.1093
S4=
-1.8907
1.8907
二、
(1)如图划分四边形单元,工分成四个分别为①②
调用Quad2D4Node_Stiffness函数,求出单元刚度矩阵
调用Quad2D4Node_Assembly函数,求出求出总体刚度矩阵
求出节点位移
0.0012
0.0017
-0.0012
0.0016
0.0049
-0.0017
0.0052
调用Quad2D4Node_Stress函数,求出单元应力中的的S1、S2、S3分别为Sx,Sy,Sxy应力分量
0.0000
-0.2478
2.0000
1.0e+07*
0.6856
4.1135
-1.7137
程序附录
一、
1、三角形单元总程序:
E=1e7;
NU=1/6;
t=1;
ID=1;
%调用Triangle2D3Node_Stiffness函数,求出单元刚度矩阵
k1=Triangle2D3Node_Stiffness(E,NU,t,0,1,0,0,1,1,ID)
k2=Triangle2D3Node_Stiffness(E,NU,t,0,0,1,0,1,1,ID)
k3=Triangle2D3Node_Stiffness(E,NU,t,1,1,1,0,2,0,ID)
k4=Triangle2D3Node_Stiffness(E,NU,t,2,0,2,1,1,1,ID)
%调用Triangle2D3Node_Assembly函数,求出总体刚度矩阵
KK=zeros(12,12);
KK=Triangle2D3Node_Assembly(KK,k1,1,2,3);
KK=Triangle2D3Node_Assembly(KK,k2,2,4,3);
KK=Triangle2D3Node_Assembly(KK,k3,3,4,5);
KK=Triangle2D3Node_Assembly(KK,k4,5,6,3)
%边界条件的处理及刚度方程求解
k=KK(5:
12,5:
12)
p=[0;
0;
2000]
u=k\p
%支反力的计算
U=[0;
u]%为节点位移
P=KK*U
%调用Triangle2D3Node_Strain函数,求出应变SN1、SN2、SN3中求出的分别为SNx,SNy,SNxy
u1=[U
(1);
U
(2);
U(3);
U(4);
U(5);
U(6)];
u2=[U(3);
U(7);
U(8);
u3=[U(5);
U(6);
U(9);
U(10)];
u4=[U(9);
U(10);
U(11);
U(12);
SN1=Triangle2D3Node_Strain(0,1,0,0,1,1,u1)
SN2=Triangle2D3Node_Strain(0,0,1,0,1,1,u2)
SN3=Triangle2D3Node_Strain(1,1,1,0,2,0,u3)
SN4=Triangle2D3Node_Strain(2,0,2,1,1,1,u4)
%调用Triangle2D3Node_Stress函数,求出应力,S1、S2、S3、中求出的分别为Sx,Sy,Sxy
u1=[U
(1);
S1=Triangle2D3Node_Stress(E,NU,0,1,0,0,1,1,u1,ID)
S2=Triangle2D3Node_Stress(E,NU,0,0,1,0,1,1,u2,ID)
S3=Triangle2D3Node_Stress(E,NU,1,1,1,0,2,0,u3,ID)
S4=Triangle2D3Node_Stress(E,NU,2,0,2,1,1,1,u4,ID)
2、求刚度矩阵程序
functionk=Triangle2D3Node_Stiffness(E,NU,t,xi,yi,xj,yj,xm,ym,ID)
%该函数计算单元的刚度矩阵
%输入弹性模量E,泊松比NU,厚度t
%输入三个节点i、j、m的坐标xi,yi,xj,yj,xm,ym
%输入平面问题性质指示参数ID(1为平面应力,2为平面应变)
%输出单元刚度矩阵k(6X6)
%---------------------------------------------------------------
A=(xi*(yj-ym)+xj*(ym-yi)+xm*(yi-yj))/2;
betai=yj-ym;
betaj=ym-yi;
betam=yi-yj;
gammai=xm-xj;
gammaj=xi-xm;
gammam=xj-xi;
B=[betai0betaj0betam0;
0gammai0gammaj0gammam;
gammaibetaigammajbetajgammambetam]/(2*A);
ifID==1
D=(E/(1-NU*NU))*[1NU0;
NU10;
00(1-NU)/2];
elseifID==2
D=(E/(1+NU)/(1-2*NU))*[1-NUNU0;
NU1-NU0;
00(1-2*NU)/2];
end
k=t*A*B'
*D*B;
3、求整体刚度矩阵
functionz=Triangle2D3Node_Assembly(KK,k,i,j,m)
%该函数进行单元刚度矩阵的组装
%输入单元刚度矩阵k
%输入单元的节点编号I、j、m
%输出整体刚度矩阵KK
DOF
(1)=2*i-1;
DOF
(2)=2*i;
DOF(3)=2*j-1;
DOF(4)=2*j;
DOF(5)=2*m-1;
DOF(6)=2*m;
forn1=1:
6
forn2=1:
KK(DOF(n1),DOF(n2))=KK(DOF(n1),DOF(n2))+k(n1,n2);
end
z=KK;
4、求应变程序
functionstrain=Triangle2D3Node_Strain(xi,yi,xj,yj,xm,ym,u)
%该函数计算单元的应变
%输入单元的位移列阵u(6X1)
%输出单元的应力strain(3X1),由于它为常应变单元,则单元的应变分量为SNx,SNy,SNz
%-------------------------------------------