有限元作业:三角形单元求解

合集下载

有限元作业整理版

有限元作业整理版

一、写出下图所示的三结点三角形单元的插值函数(形函数)Ni,Nj,Nm及插值函数矩阵[N],应变矩阵[B]。

二、如下图所示的三结点三角形单元,厚度为t,弹性模量是E,泊松比μ.试求:插值函数(形函数)矩阵[N],应变矩阵[B],应力矩阵[S],单元刚度矩阵[K]e.
三、下图所示的三结点三角形单元在jm边作用有线性分布的面载荷(x方向),试求等效结点载荷向量.
四、如下图所示,一正方形平板,厚度为t,边长为a,弹性模量E,泊松比μ.划分为两个三角形单元.求:1,3点的位移.
五、下图所示矩形板,分成四个三结点三角形单元.要求:
(1)写出由单元刚度矩阵组装总体刚度矩阵的表达式;
(2)如1234就是一个矩形单元,试求此单元的单元刚度矩阵.。

有限元-用三角形单元分析

有限元-用三角形单元分析

(e 1,2,3,4) 分块形式如下:
k e
(4-28)
页码: 9
材料成形数值模拟
School of Materials Science and engineering, WHUT 平面三角形单元整体分析
第4章 平面单元有限元法
2) 求各单元的贡献矩阵 K e 以单元②为例,贡献矩阵 K 2 由式(4-41)求出:
F K
F1 k11 F k 2 21 F6 k 61
分块形式
k12 k 22 k 62


k 66 6
解题步骤:先进行单元分析,得出单元矩阵; 考虑单元综合,得出整体矩阵。因此,平面问题有限元法步骤:
离散化→单元分析→整体分析
页码: 1
材料成形数值模拟
School of Materials Science and engineering, WHUT
4.4 平面三角形单元分析
第4章 平面单元有限元法
u1 1 v 1
则三角形单元结点位移向量为:
u1 v 1 1 u 2 e 2 v 2 3 u 3 v3 以 6 个结点位移分量作为基本未知量,对应的物理量是六个结点力分量, U 1 V F1 1 U 2 F e F2 V 2 F3 U 3 V3
Str 1 2 3 4 1 2 1 0 1 1 0 2 0 2 3 Et 1 0 3 1 4 4 1 2 1 3 5 0 0 2 0 1 0 1 1 6 1 2 6 0 1 1 0 0 2 1 2 0 1 2 0 3 0 1 3 E 5

ansys三角形和四边形单元

ansys三角形和四边形单元

一、概述在有限元分析中,选择合适的单元类型对于模拟结果的准确性和可靠性至关重要。

在ANSYS软件中,三角形和四边形单元是常用的两种单元类型,它们在不同的工程问题中具有各自的特点和适用范围。

本文将对ANSYS中的三角形和四边形单元进行介绍和分析,以期帮助工程师和研究人员在实际工程中做出正确的选择。

二、三角形单元的特点和适用范围1. 三角形单元是由三个节点和三个自由度构成的平面单元,适用于对称轴或面对称加载条件的问题。

它具有较好的形状适应性,可以适应复杂的几何形状。

2. 三角形单元适用于轻负载和小变形条件下的结构分析,例如弹性力学问题和轻负载的非线性分析。

3. 由于三角形单元仅有三个节点,所以对于边界条件和加载较复杂的问题,可能需要引入大量的单元来进行建模,从而增加了计算量和求解时间。

4. 三角形单元在非线性分析和大变形条件下的模拟效果较差,容易产生“锯齿”效应和收敛性问题。

三、四边形单元的特点和适用范围1. 四边形单元是由四个节点和四个自由度构成的平面单元,适用于矩形和正交结构的问题。

它具有简单的几何形状和稳定的性能。

2. 四边形单元适用于大变形和非线性条件下的结构分析,例如接触问题、塑性问题和大变形的非线性弹性力学问题。

3. 四边形单元相对于三角形单元具有更好的计算稳定性和收敛性,适用于对称和非对称加载条件的问题。

4. 由于四边形单元具有较好的几何适应性和稳定性,所以在建模过程中可以减少单元数量,从而降低了计算量和求解时间。

5. 在一些规则的结构问题中,四边形单元可能出现局部变形的问题,需要适当处理。

四、结论和建议在实际工程中,选择合适的单元类型是非常重要的。

根据上述分析,对于对称轴或面对称加载条件的问题可以选择三角形单元,而对于大变形和非线性条件下的问题可以选择四边形单元。

根据实际的工程需求和计算资源,也可以选择合适的单元类型,进行合理的建模和分析。

希望本文能够为工程师和研究人员在使用ANSYS软件进行有限元分析时提供一定的参考和帮助,使得模拟结果更加准确和可靠。

有限元实验2-三角形单元的形函数性质

有限元实验2-三角形单元的形函数性质

实验三:三角形单元的形函数性质验证
一、 实验目的
1、加深对平面三角形单元有限元分析过程的理解;
2、掌握平面三角形单元形函数矩阵的求解过程和性质。

二、 实验要求
1、明确形函数矩阵的含义和求法;
2、根据题目要求,给出具体的计算过程;
3、编制相应的matlab 计算程序并调试运行。

三、 实验内容
用有限元法求图示平面三角形单元的形函数。

已知节点i,j,m 在xoy 平面中。

用所编程序验证形函数特性:
1、在单元任一点上,三个形函数之和等于1;
2、形函数N i 在i 点的函数值为1,在j 点及m 点的函数值为零;
3、三边上任一点的形函数与第三个顶点的坐标无关。

四、 实验提示
1、()() 21,y c x b a y x N i i i i ++∆=
,其中下标i , j , m 轮换; 2、()()m i j m i j i m m j j i y x y x y x y x y x y x ++++=∆2
1 -21; 3、j m i m m i j m m j i x x c y y b y x y x a -=-=-=;;,其中下标i , j , m 轮换。

有限元作业:三角形单元求解

有限元作业:三角形单元求解

有限元作业:三角形单元求解-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII《有限元作业》年级2015级学院机电工程学院专业名称班级学号学生姓名2016年05月如下图所示为一受集中力P作用的结构,弹性模量E为常量,泊松比V=1/6,厚度为I=1。

按平面应力问题计算,运用有限元方法,分别采用三角形及四边形单元求解,求节点位移及单元应力(要求三角形单元数量不少于4个,四边形单元不少于2个)图(一)图(二)三角形单元求解图(三)四边形单元求解(1)如图划分三角形单元,工分成四个分别为 ④(2)如图分别进行编号1、2、3、4、5、6,并建立坐标系(3)编程进行求解,得出结果,其中假设力P=2000N调用Triangle2D3Node_Stiffness函数,求出单元刚度矩阵k1 =1.0e+06 *7.2857 -3.0000 -2.1429 0.8571 -5.1429 2.1429 -3.0000 7.2857 2.1429 -5.1429 0.8571 -2.1429 -2.1429 2.1429 2.1429 0 0 -2.14290.8571 -5.1429 0 5.1429 -0.8571 0-5.1429 0.8571 0 -0.8571 5.1429 02.1429 -2.1429 -2.1429 0 0 2.1429k2 =1.0e+06 *5.1429 0 -5.1429 0.8571 0 -0.85710 2.1429 2.1429 -2.1429 -2.1429 0-5.1429 2.1429 7.2857 -3.0000 -2.1429 0.8571 0.8571 -2.1429 -3.0000 7.2857 2.1429 -5.1429 0 -2.1429 -2.1429 2.1429 2.1429 0-0.8571 0 0.8571 -5.1429 0 5.1429k3 =1.0e+06 *2.1429 0 -2.1429 -2.1429 0 2.14290 5.1429 -0.8571 -5.1429 0.8571 0-2.1429 -0.8571 7.2857 3.0000 -5.1429 -2.1429 -2.1429 -5.1429 3.0000 7.2857 -0.8571 -2.1429 0 0.8571 -5.1429 -0.8571 5.1429 02.1429 0 -2.1429 -2.1429 0 2.1429k4 =1.0e+06 *2.1429 0 -2.1429 -2.1429 0 2.14290 5.1429 -0.8571 -5.1429 0.8571 0-2.1429 -0.8571 7.2857 3.0000 -5.1429 -2.1429 -2.1429 -5.1429 3.0000 7.2857 -0.8571 -2.1429 0 0.8571 -5.1429 -0.8571 5.1429 02.1429 0 -2.1429 -2.1429 0 2.1429调用Triangle2D3Node_Assembly函数,求出总体刚度矩阵求出的节点位移U =-0.00040.00080.00050.00100.00070.0023-0.00070.0026调用Triangle2D3Node_Stress函数,求出应力,S1、S2、S3、中求出的分别为Sx,Sy,SxyS1 =1.0e+03 *-4.4086-0.73483.5914S2 =1.0e+03 *4.4086-0.64050.4086S3 =1.0e+03 *1.8907-1.06012.1093S4 =1.0e+03 *-1.89072.10931.8907二、(1)如图划分四边形单元,工分成四个分别为(2)如图分别进行编号1、2、3、4、5、6,并建立坐标系(3)编程进行求解,得出结果,其中假设力P=2000N调用 Quad2D4Node_Stiffness函数,求出单元刚度矩阵调用Quad2D4Node_Assembly函数,求出求出总体刚度矩阵求出节点位移U =0.00120.0017-0.00120.00170.00160.0049-0.00170.0052调用Quad2D4Node_Stress函数,求出单元应力中的的S1、S2、S3分别为Sx,Sy,Sxy应力分量S1 =1.0e+03 *0.0000-0.24782.0000S2 =1.0e+07 *0.68564.1135-1.7137程序附录一、1、三角形单元总程序:E=1e7;NU=1/6;t=1;ID=1;%调用Triangle2D3Node_Stiffness函数,求出单元刚度矩阵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;0;0;0;0;0;2000]u=k\p%支反力的计算U=[0;0;0;0;u] %为节点位移P=KK*U%调用Triangle2D3Node_Strain函数,求出应变SN1、SN2、SN3中求出的分别为SNx,SNy,SNxyu1=[U(1);U(2);U(3);U(4);U(5);U(6)];u2=[U(3);U(4);U(7);U(8);U(5);U(6)];u3=[U(5);U(6);U(7);U(8);U(9);U(10)];u4=[U(9);U(10);U(11);U(12);U(5);U(6)];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,Sxyu1=[U(1);U(2);U(3);U(4);U(5);U(6)];u2=[U(3);U(4);U(7);U(8);U(5);U(6)];u3=[U(5);U(6);U(7);U(8);U(9);U(10)];u4=[U(9);U(10);U(11);U(12);U(5);U(6)];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)2、求刚度矩阵程序function k=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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endk= t*A*B'*D*B;3、求整体刚度矩阵function z = 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;for n1=1:6for n2=1:6KK(DOF(n1),DOF(n2))= KK(DOF(n1),DOF(n2))+k(n1,n2);endendz=KK;4、求应变程序function strain=Triangle2D3Node_Strain(xi,yi,xj,yj,xm,ym,u)%该函数计算单元的应变%输入三个节点i、j、m的坐标xi,yi,xj,yj,xm,ym%输入单元的位移列阵u(6X1)%输出单元的应力strain(3X1),由于它为常应变单元,则单元的应变分量为SNx,SNy,SNz%---------------------------------------------------------------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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);strain = B*u;5、求应力程序function stress=Triangle2D3Node_Stress(E,NU,xi,yi,xj,yj,xm,ym,u,ID)%该函数计算单元的应力%输入弹性模量E,泊松比NU,厚度t%输入三个节点i、j、m的坐标xi,yi,xj,yj,xm,ym%输入平面问题性质指示参数ID(1为平面应力,2为平面应变),单元的位移列阵u(6X1)%输出单元的应力stress(3X1),由于它为常应力单元,则单元的应力分量为Sx,Sy,Sxy%---------------------------------------------------------------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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2];endstress = D*B*u;二、1、四边形单元总程序:E=1e7;NU=1/6;h=1;ID=1;%调用 Quad2D4Node_Stiffness函数,求出单元刚度矩阵k1= Quad2D4Node_Stiffness(E,NU,h,0,1,0,0,1,0,1,1,ID)k2= Quad2D4Node_Stiffness(E,NU,h,1,0,2,0,2,1,1,1,ID)%调用Quad2D4Node_Assembly函数,求出求出总体刚度矩阵KK=zeros(12,12);KK= Quad2D4Node_Assembly(KK,k1,1,2,3,4);KK= Quad2D4Node_Assembly(KK,k2,3,5,6,4)% 边界条件的处理及刚度方程求解k=KK(5:12,5:12)p=[0;0;0;0;0;0;0;2000]u=k\p%支反力的计算U=[0;0;0;0;u] %为节点位移P=KK*U%调用Quad2D4Node_Stress函数,求出单元应力中的的S1、S2、S3分别为Sx,Sy,Sxy应力分量u1=[U(1);U(2);U(3);U(4);U(5);U(6);U(7);U(8)];u2=[U(5);U(6);U(9);U(10);U(11);U(12);U(7);(8)];S1= Quad2D4Node_Stress(E,NU,0,1,0,0,1,0,1,1,u1,ID)S2= Quad2D4Node_Stress(E,NU,1,0,2,0,2,1,1,1,u2,ID)2、求刚度矩阵程序function k= Quad2D4Node_Stiffness(E,NU,h,xi,yi,xj,yj,xm,ym,xp,yp,ID)%该函数计算单元的刚度矩阵%输入弹性模量E,泊松比NU,厚度h%输入4个节点i、j、m、p的坐标xi,yi,xj,yj,xm,ym,xp,yp%输入平面问题性质指示参数ID(1为平面应力,2为平面应变)%输出单元刚度矩阵k(8X8)%---------------------------------------------------------------syms s t;a = (yi*(s-1)+yj*(-1-s)+ym*(1+s)+yp*(1-s))/4;b = (yi*(t-1)+yj*(1-t)+ym*(1+t)+yp*(-1-t))/4;c = (xi*(t-1)+xj*(1-t)+xm*(1+t)+xp*(-1-t))/4;d = (xi*(s-1)+xj*(-1-s)+xm*(1+s)+xp*(1-s))/4;B1 = [a*(t-1)/4-b*(s-1)/4 0 ; 0 c*(s-1)/4-d*(t-1)/4 ;c*(s-1)/4-d*(t-1)/4 a*(t-1)/4-b*(s-1)/4];B2 = [a*(1-t)/4-b*(-1-s)/4 0 ; 0 c*(-1-s)/4-d*(1-t)/4 ;c*(-1-s)/4-d*(1-t)/4 a*(1-t)/4-b*(-1-s)/4];B3 = [a*(t+1)/4-b*(s+1)/4 0 ; 0 c*(s+1)/4-d*(t+1)/4 ;c*(s+1)/4-d*(t+1)/4 a*(t+1)/4-b*(s+1)/4];B4 = [a*(-1-t)/4-b*(1-s)/4 0 ; 0 c*(1-s)/4-d*(-1-t)/4 ;c*(1-s)/4-d*(-1-t)/4 a*(-1-t)/4-b*(1-s)/4];Bfirst = [B1 B2 B3 B4];Jfirst = [0 1-t t-s s-1 ; t-1 0 s+1 -s-t ;s-t -s-1 0 t+1 ; 1-s s+t -t-1 0];J = [xi xj xm xp]*Jfirst*[yi ; yj ; ym ; yp]/8;B = Bfirst/J;if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endBD = J*transpose(B)*D*B;r = int(int(BD, t, -1, 1), s, -1, 1);z = h*r;k = double(z);3、求总体刚度矩阵程序function z = Quad2D4Node_Assembly(KK,k,i,j,m,p)%该函数进行单元刚度矩阵的组装%输入单元刚度矩阵k,单元的节点编号i、j、m、p%输出整体刚度矩阵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;DOF(7)=2*p-1;DOF(8)=2*p;for n1=1:8for n2=1:8KK(DOF(n1),DOF(n2))= KK(DOF(n1),DOF(n2))+k(n1,n2);endendz=KK;4、求应力程序function stress= Quad2D4Node_Stress(E,NU,xi,yi,xj,yj,xm,ym,xp,yp,u,ID) %该函数计算单元的应力%输入弹性模量E,泊松比NU,厚度h,%输入4个节点i、j、m、p的坐标xi,yi,xj,yj,xm,ym,xp,yp,%输入平面问题性质指示参数ID(1为平面应力,2为平面应变)%输入单元的位移列阵u(8X1)%输出单元的应力stress(3X1)%由于它为常应力单元,则单元的应力分量为Sx,Sy,Sxy%---------------------------------------------------------------syms s t;a = (yi*(s-1)+yj*(-1-s)+ym*(1+s)+yp*(1-s))/4;b = (yi*(t-1)+yj*(1-t)+ym*(1+t)+yp*(-1-t))/4;c = (xi*(t-1)+xj*(1-t)+xm*(1+t)+xp*(-1-t))/4;d = (xi*(s-1)+xj*(-1-s)+xm*(1+s)+xp*(1-s))/4;B1 = [a*(t-1)/4-b*(s-1)/4 0 ; 0 c*(s-1)/4-d*(t-1)/4 ;c*(s-1)/4-d*(t-1)/4 a*(t-1)/4-b*(s-1)/4];B2 = [a*(1-t)/4-b*(-1-s)/4 0 ; 0 c*(-1-s)/4-d*(1-t)/4 ;c*(-1-s)/4-d*(1-t)/4 a*(1-t)/4-b*(-1-s)/4];B3 = [a*(t+1)/4-b*(s+1)/4 0 ; 0 c*(s+1)/4-d*(t+1)/4 ;c*(s+1)/4-d*(t+1)/4 a*(t+1)/4-b*(s+1)/4];B4 = [a*(-1-t)/4-b*(1-s)/4 0 ; 0 c*(1-s)/4-d*(-1-t)/4 ;c*(1-s)/4-d*(-1-t)/4 a*(-1-t)/4-b*(1-s)/4];Bfirst = [B1 B2 B3 B4];Jfirst = [0 1-t t-s s-1 ; t-1 0 s+1 -s-t ;s-t -s-1 0 t+1 ; 1-s s+t -t-1 0];J = [xi xj xm xp]*Jfirst*[yi ; yj ; ym ; yp]/8;B = Bfirst/J;if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endstr1 = D*B*u;str2 = subs(str1, {s,t}, {0,0});stress = double(str2);。

有限元第五讲 平面问题(二)——离散化、三角形单元分析

有限元第五讲 平面问题(二)——离散化、三角形单元分析
N i x Bi 0 N i y 0 N i y N i x
该式建立了用单元节点位移表 达单元上应变分布的关系。
B 称为应变矩阵,其一个子块的计算式为:
(i l , m, n)

对简单三角形单元,应变矩阵为:
上面求出的待定系数 a1
~ a6 代回位移多项式,得到:
al 1 y bl 2 cl am bm cm a n ul bn um u cn n
u 1 x
ul 1 al bl x cl y am bm x cm y an bn x cn y um 2 u n ul N l N m N n um N l ul N mum N nun N i ui i l , m , n u n
xl xn yl ym yn
am bm cm
an ul bn um u cn n
2 1 xm
为三角形面积
节点坐标行列式
ak , bk , ck 分别是节点坐标行列式 的第k (k l,m,n)行第1, 2, 3个 元素的代数余子式,均为常数。
~ a3 : yl a1 ym a2 a yn 3
1
a1 1 xl a2 1 xm a 1 x n 3
其中:
yl ym yn
1 1
ul al 1 bl um u 2 c n l
yl ym yn
1
vl al 1 bl vm v 2 c n l

有限元实验2-三角形单元的形函数性质

有限元实验2-三角形单元的形函数性质

实验三:三角形单元的形函数性质验证
一、 实验目的
1、加深对平面三角形单元有限元分析过程的理解;
2、掌握平面三角形单元形函数矩阵的求解过程和性质。

二、 实验要求
1、明确形函数矩阵的含义和求法;
2、根据题目要求,给出具体的计算过程;
3、编制相应的matlab 计算程序并调试运行。

三、 实验内容
用有限元法求图示平面三角形单元的形函数。

已知节点i,j,m 在xoy 平面中。

用所编程序验证形函数特性:
1、在单元任一点上,三个形函数之和等于1;
2、形函数N i 在i 点的函数值为1,在j 点及m 点的函数值为零;
3、三边上任一点的形函数与第三个顶点的坐标无关。

四、 实验提示
1、()() 21,y c x b a y x N i i i i ++∆=
,其中下标i , j , m 轮换; 2、()()m i j m i j i m m j j i y x y x y x y x y x y x ++++=∆2
1 -21; 3、j m i m m i j m m j i x x c y y b y x y x a -=-=-=;;,其中下标i , j , m 轮换。

有限元三角形单元

有限元三角形单元

有限元三角形单元
有限元三角形单元是有限元分析中常用的基本构件,用于建立复杂结构的数学模型,以进行工程分析。

这些三角形单元是用来离散化连续问题的,将其转换为有限元模型,以便计算机可以进行数值求解。

在有限元分析中,三角形单元有不同类型,其中常见的包括:
1. 线性三角形单元:
- 由三个节点组成的简单三角形单元。

- 三角形的三条边都是直线。

- 这种单元的形状函数是线性的,适用于简单的结构和问题。

2. 二阶和高阶三角形单元:
- 包括更多节点以提高精度的三角形单元。

- 二阶三角形单元具有额外的中间节点,使得形状函数更复杂,从而提高了精度。

- 高阶三角形单元同样通过增加节点来提高精度,但也增加了计算复杂度。

这些三角形单元被用于建立有限元模型,将结构或物体分割成小的几何形状,每个形状都有对应的节点和单元连接关系。

通过这些节点之间的位移和边界条件来建立结构的数学模型,从而进行力学、热力学等各种工程分析。

选择适当类型和精度的三角形单元对于准确地模拟实际问题非常重要,因为它们直接影响到模型的计算精度和效率。

有限元三角形正方形单元

有限元三角形正方形单元

有限元三角形正方形单元有限元三角形正方形单元是一种常见的数值模拟方法,广泛应用于结构力学、流体力学等领域。

本文将介绍有限元三角形正方形单元的基本原理、应用和局限性。

有限元方法是一种通过将复杂的结构划分为许多小的有限元单元,然后对每个单元进行数值计算的方法。

三角形正方形单元是有限元中最简单、最常用的单元类型之一。

它可以用来描述各种结构,例如平面问题和二维问题。

三角形正方形单元的形状是由三个或四个节点构成的,这些节点在计算中用于确定单元的形状和性质。

在有限元分析中,三角形正方形单元通常用于建立结构的有限元模型。

首先,根据实际结构的形状和性质,将结构分割为许多小的三角形或正方形区域。

然后,在每个区域内选择适当数量的节点,建立有限元模型。

通过将边界条件和荷载应用到节点上,并利用力学理论和数值方法,计算每个单元的位移、应力和应变等参数。

最终,通过组合所有单元的计算结果,可以得到整个结构的应力和变形分布情况。

三角形正方形单元具有如下优点:首先,它们易于生成和操作,无论是手工建模还是使用计算机软件。

其次,由于单元形状简单,计算效率较高。

此外,三角形正方形单元适用于各种类型的结构和问题,包括线性和非线性分析等。

然而,三角形正方形单元也有一些局限性。

由于其本身的形状和节点数量限制,三角形正方形单元对特殊形状和曲线问题的描述能力可能较弱。

因此,在一些特殊情况下,可能需要使用其他类型的有限元单元来更准确地描述结构。

总之,有限元三角形正方形单元是一种常用的数值模拟方法,在结构力学和流体力学等领域发挥着重要作用。

通过合理建模和使用适当的数值方法,可以准确地模拟和分析各种工程问题,为工程设计和科学研究提供可靠的依据。

有限元2-弹性力学平面问题(24矩形单元,25六节点三角形单元)

有限元2-弹性力学平面问题(24矩形单元,25六节点三角形单元)

u 1 1 2 3 4 u 2 1 2 3 4
u 3 1 2 3 4
u 4 1 2 3 4
有限单元法
土木工程学院
P-9/44
解方程组便可求得待定常数。将这些参数代回式 (2-4-4),经整理得:
(1,1)
有限单元法
土木工程学院
P-6/44
二、结点位移列阵和结点力列阵
每个结点2个位移分量,共8个位移分量, 设结点位移和结点力列阵分别为:
d u v u v u v u v
e
2 4 2 e T F X Y X Y X Y X Y 1 1 2 2 3 3 4 4 2 4 3
有限单元法
土木工程学院
P-18/44
第2章 弹性力学平面问题有限单元法
2.1 三角形单元 2.2 三角形单元中几个问题的讨论 2.3 平面问题有限元程序设计 2.4 矩形单元 2.5 六结点三角形单元 2.6 四结点四边形单元 2.7 八结点曲线四边形等参元 2.8 几个问题的补充
有限单元法
土木工程学院
3

1
2
(1 ,1 )
(1,1)
有限单元法
土木工程学院
P-11/44
如果引进参数: ξ0=ξiξ, η0=ηiη(i=1, 2, 3, 4), (ξi, ηi)是矩形单元4个结点的局部坐标。结点i(ξi, ηi)的 坐标值分别是 (-1,-1), (1,-1),(1,1), (-1,-1)。代入 上式,则可将上式简记成:
Ai Li A
Lj Aj A
Am Lm A
i
m
Aj

有限元平面问题三角形实例

有限元平面问题三角形实例

有限元平面问题三角形实例有限元法是一种常用的计算方法,可以用来解决各种工程问题。

其中,有限元平面问题是有限元法的一种应用,常用于分析三角形结构。

在有限元平面问题中,我们通常会将结构划分成许多小的单元,每个单元由节点和单元刚度矩阵组成。

而三角形结构则是有限元平面问题中常用的一种单元形状。

三角形结构的特点是简单而且易于处理,因此广泛应用于各种领域,如土木工程、机械工程、航空航天等。

下面我们就以一个实际的例子来说明如何应用有限元平面问题分析三角形结构。

假设我们要分析一个三角形钢板在受力作用下的变形情况。

首先,我们需要将钢板划分为许多小的三角形单元。

每个单元由三个节点组成,节点之间通过边连接。

在有限元分析中,我们需要对每个单元进行网格划分,并确定节点的坐标和边的长度。

然后,通过求解节点的位移和应力分布,可以得到钢板在受力作用下的变形情况。

具体来说,我们可以通过求解线性方程组来得到节点的位移。

而节点的应力则可以通过应变-位移关系来计算。

通过这种方式,我们可以得到钢板在受力作用下各个节点的位移和应力分布情况。

有限元平面问题的分析结果可以帮助我们了解结构的强度和刚度情况,为设计和优化提供依据。

例如,在钢板的设计中,我们可以通过有限元分析来确定合适的材料和尺寸,以满足结构的强度和刚度要求。

除了钢板,有限元平面问题还可以应用于其他类型的三角形结构。

例如,在土木工程中,我们可以使用有限元分析来分析三角形桥梁或者三角形支撑结构的变形和应力分布情况。

有限元平面问题是一种常用的分析方法,可以应用于各种三角形结构的分析。

通过对节点的位移和应力分布的求解,我们可以得到结构在受力作用下的变形情况。

这对于工程设计和优化至关重要,可以帮助我们提高结构的强度和刚度,确保其安全可靠。

有限元作业:三角形单元求解

有限元作业:三角形单元求解

《有限元作业》年级2015级学院机电工程学院专业名称班级学号学生姓名2016年05月如下图所示为一受集中力P作用的结构,弹性模量E为常量,泊松比V=1/6,厚度为I=1。

按平面应力问题计算,运用有限元方法,分别采用三角形及四边形单元求解,求节点位移及单元应力(要求三角形单元数量不少于4个,四边形单元不少于2个)图(一)图(二)三角形单元求解图(三)四边形单元求解(1)如图划分三角形单元,工分成四个分别为④(2)如图分别进行编号1、2、3、4、5、6,并建立坐标系(3)编程进行求解,得出结果,其中假设力P=2000N调用Triangle2D3Node_Stiffness函数,求出单元刚度矩阵k1 =+06 *0 00 00 00 0k2 =+06 *0 00 00 00 0k3 =+06 *0 00 00 00 0k4 =+06 *0 00 00 00 0调用Triangle2D3Node_Assembly函数,求出总体刚度矩阵求出的节点位移U =调用Triangle2D3Node_Stress函数,求出应力,S1、S2、S3、中求出的分别为Sx,Sy,SxyS1 =+03 *S2 =+03 *S3 =+03 *S4 =+03 *二、(1)如图划分四边形单元,工分成四个分别为(2)如图分别进行编号1、2、3、4、5、6,并建立坐标系(3)编程进行求解,得出结果,其中假设力P=2000N调用 Quad2D4Node_Stiffness函数,求出单元刚度矩阵调用Quad2D4Node_Assembly函数,求出求出总体刚度矩阵求出节点位移U =调用Quad2D4Node_Stress函数,求出单元应力中的的S1、S2、S3分别为Sx,Sy,Sxy应力分量S1 =+03 *S2 =+07 *程序附录一、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;0;0;0;0;0;2000]u=k\p%支反力的计算U=[0;0;0;0;u] %为节点位移P=KK*U%调用Triangle2D3Node_Strain函数,求出应变SN1、SN2、SN3中求出的分别为SNx,SNy,SNxyu1=[U(1);U(2);U(3);U(4);U(5);U(6)];u2=[U(3);U(4);U(7);U(8);U(5);U(6)];u3=[U(5);U(6);U(7);U(8);U(9);U(10)];u4=[U(9);U(10);U(11);U(12);U(5);U(6)];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,Sxyu1=[U(1);U(2);U(3);U(4);U(5);U(6)];u2=[U(3);U(4);U(7);U(8);U(5);U(6)];u3=[U(5);U(6);U(7);U(8);U(9);U(10)];u4=[U(9);U(10);U(11);U(12);U(5);U(6)];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、求刚度矩阵程序function k=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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endk= t*A*B'*D*B;3、求整体刚度矩阵function z = 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;for n1=1:6for n2=1:6KK(DOF(n1),DOF(n2))= KK(DOF(n1),DOF(n2))+k(n1,n2);endendz=KK;4、求应变程序function strain=Triangle2D3Node_Strain(xi,yi,xj,yj,xm,ym,u)%该函数计算单元的应变%输入三个节点i、j、m的坐标xi,yi,xj,yj,xm,ym%输入单元的位移列阵u(6X1)%输出单元的应力strain(3X1),由于它为常应变单元,则单元的应变分量为SNx,SNy,SNz%---------------------------------------------------------------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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);strain = B*u;5、求应力程序functionstress=Triangle2D3Node_Stress(E,NU,xi,yi,xj,yj,xm,ym,u,ID) %该函数计算单元的应力%输入弹性模量E,泊松比NU,厚度t%输入三个节点i、j、m的坐标xi,yi,xj,yj,xm,ym%输入平面问题性质指示参数ID(1为平面应力,2为平面应变),单元的位移列阵u(6X1)%输出单元的应力stress(3X1),由于它为常应力单元,则单元的应力分量为Sx,Sy,Sxy%---------------------------------------------------------------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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2];endstress = D*B*u;二、1、四边形单元总程序:E=1e7;NU=1/6;h=1;ID=1;%调用 Quad2D4Node_Stiffness函数,求出单元刚度矩阵k1= Quad2D4Node_Stiffness(E,NU,h,0,1,0,0,1,0,1,1,ID)k2= Quad2D4Node_Stiffness(E,NU,h,1,0,2,0,2,1,1,1,ID)%调用Quad2D4Node_Assembly函数,求出求出总体刚度矩阵KK=zeros(12,12);KK= Quad2D4Node_Assembly(KK,k1,1,2,3,4);KK= Quad2D4Node_Assembly(KK,k2,3,5,6,4)% 边界条件的处理及刚度方程求解k=KK(5:12,5:12)p=[0;0;0;0;0;0;0;2000]u=k\p%支反力的计算U=[0;0;0;0;u] %为节点位移P=KK*U%调用Quad2D4Node_Stress函数,求出单元应力中的的S1、S2、S3分别为Sx,Sy,Sxy应力分量u1=[U(1);U(2);U(3);U(4);U(5);U(6);U(7);U(8)];u2=[U(5);U(6);U(9);U(10);U(11);U(12);U(7);(8)];S1= Quad2D4Node_Stress(E,NU,0,1,0,0,1,0,1,1,u1,ID)S2= Quad2D4Node_Stress(E,NU,1,0,2,0,2,1,1,1,u2,ID)2、求刚度矩阵程序function k=Quad2D4Node_Stiffness(E,NU,h,xi,yi,xj,yj,xm,ym,xp,yp,ID) %该函数计算单元的刚度矩阵%输入弹性模量E,泊松比NU,厚度h%输入4个节点i、j、m、p的坐标xi,yi,xj,yj,xm,ym,xp,yp%输入平面问题性质指示参数ID(1为平面应力,2为平面应变)%输出单元刚度矩阵k(8X8)%---------------------------------------------------------------syms s t;a = (yi*(s-1)+yj*(-1-s)+ym*(1+s)+yp*(1-s))/4;b = (yi*(t-1)+yj*(1-t)+ym*(1+t)+yp*(-1-t))/4;c = (xi*(t-1)+xj*(1-t)+xm*(1+t)+xp*(-1-t))/4;d = (xi*(s-1)+xj*(-1-s)+xm*(1+s)+xp*(1-s))/4;B1 = [a*(t-1)/4-b*(s-1)/4 0 ; 0 c*(s-1)/4-d*(t-1)/4 ;c*(s-1)/4-d*(t-1)/4 a*(t-1)/4-b*(s-1)/4];B2 = [a*(1-t)/4-b*(-1-s)/4 0 ; 0 c*(-1-s)/4-d*(1-t)/4 ;c*(-1-s)/4-d*(1-t)/4 a*(1-t)/4-b*(-1-s)/4];B3 = [a*(t+1)/4-b*(s+1)/4 0 ; 0 c*(s+1)/4-d*(t+1)/4 ;c*(s+1)/4-d*(t+1)/4 a*(t+1)/4-b*(s+1)/4];B4 = [a*(-1-t)/4-b*(1-s)/4 0 ; 0 c*(1-s)/4-d*(-1-t)/4 ;c*(1-s)/4-d*(-1-t)/4 a*(-1-t)/4-b*(1-s)/4];Bfirst = [B1 B2 B3 B4];Jfirst = [0 1-t t-s s-1 ; t-1 0 s+1 -s-t ;s-t -s-1 0 t+1 ; 1-s s+t -t-1 0];J = [xi xj xm xp]*Jfirst*[yi ; yj ; ym ; yp]/8;B = Bfirst/J;if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2];endBD = J*transpose(B)*D*B;r = int(int(BD, t, -1, 1), s, -1, 1);z = h*r;k = double(z);3、求总体刚度矩阵程序function z = Quad2D4Node_Assembly(KK,k,i,j,m,p)%该函数进行单元刚度矩阵的组装%输入单元刚度矩阵k,单元的节点编号i、j、m、p%输出整体刚度矩阵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;DOF(7)=2*p-1;DOF(8)=2*p;for n1=1:8for n2=1:8KK(DOF(n1),DOF(n2))= KK(DOF(n1),DOF(n2))+k(n1,n2);endendz=KK;4、求应力程序function stress=Quad2D4Node_Stress(E,NU,xi,yi,xj,yj,xm,ym,xp,yp,u,ID)%该函数计算单元的应力%输入弹性模量E,泊松比NU,厚度h,%输入4个节点i、j、m、p的坐标xi,yi,xj,yj,xm,ym,xp,yp,%输入平面问题性质指示参数ID(1为平面应力,2为平面应变)%输入单元的位移列阵u(8X1)%输出单元的应力stress(3X1)%由于它为常应力单元,则单元的应力分量为Sx,Sy,Sxy%---------------------------------------------------------------syms s t;a = (yi*(s-1)+yj*(-1-s)+ym*(1+s)+yp*(1-s))/4;b = (yi*(t-1)+yj*(1-t)+ym*(1+t)+yp*(-1-t))/4;c = (xi*(t-1)+xj*(1-t)+xm*(1+t)+xp*(-1-t))/4;d = (xi*(s-1)+xj*(-1-s)+xm*(1+s)+xp*(1-s))/4;B1 = [a*(t-1)/4-b*(s-1)/4 0 ; 0 c*(s-1)/4-d*(t-1)/4 ;c*(s-1)/4-d*(t-1)/4 a*(t-1)/4-b*(s-1)/4];B2 = [a*(1-t)/4-b*(-1-s)/4 0 ; 0 c*(-1-s)/4-d*(1-t)/4 ;c*(-1-s)/4-d*(1-t)/4 a*(1-t)/4-b*(-1-s)/4];B3 = [a*(t+1)/4-b*(s+1)/4 0 ; 0 c*(s+1)/4-d*(t+1)/4 ;c*(s+1)/4-d*(t+1)/4 a*(t+1)/4-b*(s+1)/4];B4 = [a*(-1-t)/4-b*(1-s)/4 0 ; 0 c*(1-s)/4-d*(-1-t)/4 ;c*(1-s)/4-d*(-1-t)/4 a*(-1-t)/4-b*(1-s)/4];Bfirst = [B1 B2 B3 B4];Jfirst = [0 1-t t-s s-1 ; t-1 0 s+1 -s-t ;s-t -s-1 0 t+1 ; 1-s s+t -t-1 0];J = [xi xj xm xp]*Jfirst*[yi ; yj ; ym ; yp]/8;B = Bfirst/J;if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2];endstr1 = D*B*u;str2 = subs(str1, {s,t}, {0,0});stress = double(str2);。

有限元方法-第五章--平面三角形单元

有限元方法-第五章--平面三角形单元

D
E
1 2
1
0
对 1 0

1
(i)
2
所以,[S]的子矩阵可记为
Si DBi
E
2 1 2
bi
1
bi
2
ci
ci
1
ci
2
bi
( i
,
j
,
m轮换) (5-19)
对于平面应变问题,只要将 (i) 式中的E换成E/1-2 , 换成 /1-,即得到其弹性矩阵
D
1
E1 1 2
1
1
起来,便可近似地表示整个区域的真实位移函数。这种 化繁为简、联合局部逼近整体的思想,正是有限单元法 的绝妙之处。
基于上述思想,我们可以选择一个单元位移模式,
单元内各点的位移可按此位移模式由单元节点位移通过
插值而获得。线性函数是一种最简单的单元位移模式,
故设
u 1 2x 3y
v 4 5x 6y
(b)
0
(b)
Ni xm
,
ym
1 2
ai
bi xm
ci ym
0
(c)
类似地有
N j xi , yi 0 , N j x j , y j 1 , N j xm , ym 0 (d) Nm xi , yi 0 , Nm x j , y j 0 , Nm xm , ym 1
式中 1、2、…6是待定常数。因三角形单元共有六个
自由度,且位移函数u、v在三个节点处的数值应该等于 这些点处的位移分量的数值。假设节点i、j、m的坐标分 别为(xi , yi )、(xj , yj )、(xm , ym ),代入 (b) 式, 得:
ui 1 2 xi 3 yi

三角形单元有限元法

三角形单元有限元法
x
x a2 , y y a5 , xy a3 a5 a2 a6
选取位移函数应考虑的问题
(1)位移函数的个数 等于单元中任意一点的位移分量个数。本单元中 有u和v,与此相应,有2个位移函数;
(2)位移函数是坐标的函数 本单元的坐标系为:x、y;
(3)位移函数中待定常数个数 待定常数个数应等于单元节点自由度总数,以 便用单元节点位移确定位移函数中的待定常数。本 单元有6个节点自由度,两个位移函数中共包含6个 待定常数。
1 E ,换为 2
1

{ } [ D]{ }
(1-8)
各种类型结构的弹性物理方程都可用式(1-8)描 述。但结构类型不同,力学性态 (应力分量、应变分 量)有区别, 弹性矩阵[D]的体积和元素是不同的。
1.3 位移函数和形函数
• 1、位移函数概念 由于有限元法采用能量原理进行单元分析,因而 必须事先设定位移函数。 “位移函数”也称 “位移 模式”,是单元内部位移变化的数学表达式,设为坐 标的函数。 一般而论,位移函数选取会影响甚至严重影响 计算结果的精度。在弹性力学中,恰当选取位移函数 不是一件容易的事情;但在有限元中,当单元划分得 足够小时,把位移函数设定为简单的多项式就可以获 得相当好的精确度。这正是有限单元法具有的重要优 势之一。
P
① 1 2 ②
3
l/2
l/2
单元的 节点上 有位移 和力F

2、F2
1

2
l/2
4、F4
2、F2
2
3
l/2
4、F4
1、F1
3、F3
1、F1
3、F3
(2)单元集合:把所有离散的有限个单元集合起来 代替原结构,形成离散结构节点平衡方程。

8 第四章 用常应变三角形单元解力学平面问题 (2)解析

8 第四章 用常应变三角形单元解力学平面问题 (2)解析

um xm ym
1 um ym
1 xm um
其中
1 xi yi
2 1 x j y j
1 xm ym
(c) (d) (1)
从解析几何可知,式中的 就是三角形i、j、m的面积。
为保证求得的面积为正值,节点i、j、m的编排次序必须是逆 时针方向,如图1所示。
7. 由单元的节点位移列阵计算单元应力
解出整体结构的节点位移列阵 后,再根据单元节点的 编号找出对应于单元的位移列阵 e,将 e代入(3-3)式就
可求出各单元的应力分量值。
8. 计算结果输出
求解出整体结构的位移和应力后,可有选择 地整理输出某些关键点的位移值和应力值,特别 要输出结构的 变形图、应力图、应变图、结构仿 真变形过程动画图及整体结构的弯矩、剪力图等 等。
平面问题可用三角元,四边元等。
例如:
3. 选择单元的位移模式
结构离散化后,要用单元内结点的位移通过插值来获得 单元内各点的位移。在有限元法中,通常都是假定单元的位 移模式是多项式,一般来说,单元位移多项式的项数应与单 元的自由度数相等。它的阶数至少包含常数项和一次项。至 于高次项要选取多少项,则应视单元的类型而定。
有限元法的实质是:把有无限个自由度的连续体, 理想化为只有有限个自由度的单元集合体,使问题简化 为适合于数值解法的结构型问题。
二、经典解与有限元解的区别:
微分 经 典 解 法 —— (解析法)
数目增到∞ 大小趋于 0
建立一个描述连续体 性质的偏微分方程
有限单元 离散化 集合
总体分析解
有限元法——连续体——单元——代替原连续体
式中:
Re ke e
(3-4)
——单元刚度矩阵
ke BT DBdxdydz

简支梁的有限单元法分析-三角形三节点单元

简支梁的有限单元法分析-三角形三节点单元

位移,由节点位移求单元应变、应力和节点力。
单元分析的步骤:
节点 (1) 位移
单元内部 各点位移
(2)
单元 (3) 应变
单元 应力
(4)
节点 力
单元分析
2.1 形函数
形函数反映了单元的位移形态,是坐标的函数。 三节点三角形单元的形函数为:
1 Ni ( x, y ) (ai bi x ci y )(i , j , m) 2A ai x j ym xm y j (i , j , m) bi y j ym ci xm x j
y j (0,2 )
x
m (0,0 ) i (2,0 )
三角形三节点单元
代入[D],[B]得三角形单元的单元刚度矩阵:
1 4 0 0 2 Et e [k ] 1 m2 m 4 1 4 m 4 对 1 m 8 1 m 8 0 1 m 8 1 m 8 称 1 m 8 0 1 m 8 1 m 8 1 4 3 m 8
A
由 { *}=[B]{ *}e
* e T e
得到 { *}T=({ *}e)T[B]T
* e T T e
({ } ) {F} ({ } ) [ B] D B tdxdy
A
三角形三节点单元,[B]为常量,单元厚度t也是常量,则
{F} [ B] D B tA
从结构中取出一个单元,如图其3个节点编 号是ni nj nm ,节点ni的2个自由度在结构自 由度的编号是2ni-1和2ni,在单元6个自由度 编号为1和2。
节点编号为
nj
1 51 ... ... 2 102 53 52 ... ... ... 561 ... ... 511

有限元三角形单元和四边形单元

有限元三角形单元和四边形单元

有限元三角形单元和四边形单元
有限元分析是工程应用最广泛的方法之一,它可以帮助我们了解结构内部力学行为特征。

对于有限元分析来说,有两种典型的单元:三角形单元和四边形单元。

三角形单元由三个顶点组成,四边形单元由四个顶点组成。

其基本概念是根据有限元分析的原则,将被研究的区域分解成若干个小的连续单元,单元由每个顶点表示,并且形成多边形,以此来模拟物体总体的行为。

三角形单元的特性是它的每个内角都能满足三角函数,可以极大的提高计算质量,避免出现趋势不准确的情况。

在较大范围内,一致性面积越小,他们之间的拉伸应力也就越小,更有利于精确计算。

而四边形单元则更加适合于细粒度的物体,在对细粒度物体进行研究时,可以将其细分成多个正方形小块,从而简化计算难度,提高计算效率。

在有限元分析中,三角形单元和四边形单元可以因应不同的需求而采用,只要能充分构建出更准确的结构行为模型,增加更多的灵活性和应用场景就可以得到更精准的计算结果。

简支梁的有限单元法分析-三角形三节点单元

简支梁的有限单元法分析-三角形三节点单元
简支梁的有限单元法分析
三角形三节点平面单元
王 峰
有限元分析的基本步骤:
结构离散化
单元分析
整体分析
1 结构离散化
图示为简支梁,梁的厚度为t,泊松比m =0.3,弹性 模量为E=2e+5Mpa,用三节点三角形单元进行离散, 直角三角形边长为2。
2 单元分析
单元分析的主要内容:由节点位移求内部任一点的
物理方程
{s }=[D]{} 而 { }=[B]{}e (求应力的表达式) {s }=[D][B]{ }e
记 [S]=[D][B]
[S]应力矩阵: [S]=[Si Sj Sm]
2.5节点力与节点位移的关系
令实际受力状态在虚位移状态上做虚功,虚功方程:
({ *}e )T {F}e { *}T tdxdy s
位移,由节点位移求单元应变、应力和节点力。
单元分析的步骤:
节点 (1) 位移
单元内部 各点位移
(2)
单元 (3) 应变
单元 应力
(4)
节点 力
单元分析
2.1 形函数
形函数反映了单元的位移形态,是坐标的函数。 三节点三角形单元的形函数为:
1 Ni ( x, y ) (ai bi x ci y )(i , j , m) 2A ai x j ym xm y j (i , j , m) bi y j ym ci xm x j
Ni 1 Ni 1 bi , ci x 2 A y 2 A
因此,三角形单元的应变矩阵[B]是常量,
(i , j , m)
代入数据得到:
1 0 0 0 1 0 1 B 0 0 0 1 0 1 2 0 1 1 0 1 1

有限元-三角形板载荷作用点位移的求解

有限元-三角形板载荷作用点位移的求解

有限元法基础与程序设计--三角形板载荷作用点位移的求解如图1所示三角形截面简支梁,底边中点受载荷P=1的作用,已知E=0,μ=0,厚度h=1。

按平面应力考虑,用有限元法计算载荷作用点的位移。

图1解:由题意可知,三角截面关于受力P点的作用线对称,则可单独考虑其右侧半部分,且可作如图2划分单元,划分成4个三角形单元,共有6个节点。

单元和节点的详细信息见下表。

图2由图2可知其各节点的编号和坐标节点,如下表所示:单元连通性表节点坐标表单元的刚度矩阵为⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡111413414443313433k k k k k k k k k 则总的刚度矩阵表达为⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡++++244243241234133133132231131123122121214213113112211111k k k k k k k k k k k k k k k k k k 有平衡方程⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡++++4433221144332211244243241234133133132231131123122121214213113112211111y x y x y x y x F F F F F F F F v u v u v u v u k k k k k k k k k k k k k k k k k k运用MATLAB 软件编写程序:Main.mE=1;NU=0;t=1;k1=LinearTriangleElementStiffness(E,NU,t,0,1,0,0.5,0.5,0.5,1); k2=LinearTriangleElementStiffness(E,NU,t,0,0.5,0,0,0.5,0,1); k3=LinearTriangleElementStiffness(E,NU,t,0,0.5,0.5,0,0.5,0.5,1); k4=LinearTriangleElementStiffness(E,NU,t,0.5,0.5,0.5,0,1,0,1); K=zeros(12);K=LinearTriangleAssemble(K,k1,1,2,3); K=LinearTriangleAssemble(K,k2,2,4,5); K=LinearTriangleAssemble(K,k3,2,5,3); K=LinearTriangleAssemble(K,k4,3,5,6);Kff=[K(2,2) K(2,4:6) K(2,8:11);K(4:6,2) K(4:6, 4:6) K(4:6,8:11);K(8:11,2) K(8:11,4:6) K(8:11,8:11)];F=[0 0 0 0 -0.5 0 0 0]'; u=Kff\F解得:u =-4.3429-4.3429-0.4190-3.4095-20.8381-3.25710.8381所以,载荷作用点位移为-2调用的两个函数:(1) LinearTriangleElementStiffness.mfunction y = LinearTriangleElementStiffness(E,NU,t,xi,yi,xj,yj,xm,ym,p)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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);if p == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif p == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endy = t*A*B'*D*B;(2) LinearTriangleAssemble.mfunction y = LinearTriangleAssemble(K,k,i,j,m)K(2*i-1,2*i-1) = K(2*i-1,2*i-1) + k(1,1);K(2*i-1,2*i) = K(2*i-1,2*i) + k(1,2);K(2*i-1,2*j-1) = K(2*i-1,2*j-1) + k(1,3);K(2*i-1,2*j) = K(2*i-1,2*j) + k(1,4);K(2*i-1,2*m-1) = K(2*i-1,2*m-1) + k(1,5);K(2*i-1,2*m) = K(2*i-1,2*m) + k(1,6);K(2*i,2*i-1) = K(2*i,2*i-1) + k(2,1);K(2*i,2*i) = K(2*i,2*i) + k(2,2);K(2*i,2*j-1) = K(2*i,2*j-1) + k(2,3);K(2*i,2*j) = K(2*i,2*j) + k(2,4);K(2*i,2*m-1) = K(2*i,2*m-1) + k(2,5);K(2*i,2*m) = K(2*i,2*m) + k(2,6);K(2*j-1,2*i-1) = K(2*j-1,2*i-1) + k(3,1);K(2*j-1,2*i) = K(2*j-1,2*i) + k(3,2);K(2*j-1,2*j-1) = K(2*j-1,2*j-1) + k(3,3);K(2*j-1,2*j) = K(2*j-1,2*j) + k(3,4);K(2*j-1,2*m-1) = K(2*j-1,2*m-1) + k(3,5); K(2*j-1,2*m) = K(2*j-1,2*m) + k(3,6);K(2*j,2*i-1) = K(2*j,2*i-1) + k(4,1);K(2*j,2*i) = K(2*j,2*i) + k(4,2);K(2*j,2*j-1) = K(2*j,2*j-1) + k(4,3);K(2*j,2*j) = K(2*j,2*j) + k(4,4);K(2*j,2*m-1) = K(2*j,2*m-1) + k(4,5);K(2*j,2*m) = K(2*j,2*m) + k(4,6);K(2*m-1,2*i-1) = K(2*m-1,2*i-1) + k(5,1); K(2*m-1,2*i) = K(2*m-1,2*i) + k(5,2);K(2*m-1,2*j-1) = K(2*m-1,2*j-1) + k(5,3); K(2*m-1,2*j) = K(2*m-1,2*j) + k(5,4);K(2*m-1,2*m-1) = K(2*m-1,2*m-1) + k(5,5); K(2*m-1,2*m) = K(2*m-1,2*m) + k(5,6);K(2*m,2*i-1) = K(2*m,2*i-1) + k(6,1);K(2*m,2*i) = K(2*m,2*i) + k(6,2);K(2*m,2*j-1) = K(2*m,2*j-1) + k(6,3);K(2*m,2*j) = K(2*m,2*j) + k(6,4);K(2*m,2*m-1) = K(2*m,2*m-1) + k(6,5);K(2*m,2*m) = K(2*m,2*m) + k(6,6);y = K;。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《有限元作业》年级2015级学院机电工程学院专业名称班级学号学生姓名2016年05月如下图所示为一受集中力P作用的结构,弹性模量E为常量,泊松比V=1/6,厚度为I=1。

按平面应力问题计算,运用有限元方法,分别采用三角形及四边形单元求解,求节点位移及单元应力(要求三角形单元数量不少于4个,四边形单元不少于2个)图(一)图(二)三角形单元求解图(三)四边形单元求解(1)如图划分三角形单元,工分成四个分别为 ④(2)如图分别进行编号1、2、3、4、5、6,并建立坐标系(3)编程进行求解,得出结果,其中假设力P=2000N调用Triangle2D3Node_Stiffness函数,求出单元刚度矩阵k1 =1.0e+06 *7.2857 -3.0000 -2.1429 0.8571 -5.1429 2.1429-3.0000 7.2857 2.1429 -5.1429 0.8571 -2.1429 -2.1429 2.1429 2.1429 0 0 -2.14290.8571 -5.1429 0 5.1429 -0.8571 0-5.1429 0.8571 0 -0.8571 5.1429 02.1429 -2.1429 -2.1429 0 0 2.1429 k2 =1.0e+06 *5.1429 0 -5.1429 0.8571 0 -0.85710 2.1429 2.1429 -2.1429 -2.1429 0-5.1429 2.1429 7.2857 -3.0000 -2.1429 0.85710.8571 -2.1429 -3.0000 7.2857 2.1429 -5.14290 -2.1429 -2.1429 2.1429 2.1429 0-0.8571 0 0.8571 -5.1429 0 5.1429 k3 =1.0e+06 *2.1429 0 -2.1429 -2.1429 0 2.14290 5.1429 -0.8571 -5.1429 0.8571 0-2.1429 -0.8571 7.2857 3.0000 -5.1429 -2.1429 -2.1429 -5.1429 3.0000 7.2857 -0.8571 -2.14290 0.8571 -5.1429 -0.8571 5.1429 02.1429 0 -2.1429 -2.1429 0 2.1429 k4 =1.0e+06 *2.1429 0 -2.1429 -2.1429 0 2.14290 5.1429 -0.8571 -5.1429 0.8571 0-2.1429 -0.8571 7.2857 3.0000 -5.1429 -2.1429-2.1429 -5.1429 3.0000 7.2857 -0.8571 -2.14290 0.8571 -5.1429 -0.8571 5.1429 02.1429 0 -2.1429 -2.1429 0 2.1429调用Triangle2D3Node_Assembly函数,求出总体刚度矩阵求出的节点位移U =-0.00040.00080.00050.00100.00070.0023-0.00070.0026调用Triangle2D3Node_Stress函数,求出应力,S1、S2、S3、中求出的分别为Sx,Sy,SxyS1 =1.0e+03 *-4.4086-0.73483.5914S2 =1.0e+03 *4.4086-0.64050.4086S3 =1.0e+03 *1.8907-1.06012.1093S4 =1.0e+03 *-1.89072.10931.8907二、(1)如图划分四边形单元,工分成四个分别为(2)如图分别进行编号1、2、3、4、5、6,并建立坐标系(3)编程进行求解,得出结果,其中假设力P=2000N调用Quad2D4Node_Stiffness函数,求出单元刚度矩阵调用Quad2D4Node_Assembly函数,求出求出总体刚度矩阵求出节点位移U =0.00120.0017-0.00120.00170.00160.0049-0.00170.0052调用Quad2D4Node_Stress函数,求出单元应力中的的S1、S2、S3分别为Sx,Sy,Sxy应力分量S1 =1.0e+03 *0.0000-0.24782.0000S2 =1.0e+07 *0.68564.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;0;0;0;0;0;2000]u=k\p%支反力的计算U=[0;0;0;0;u] %为节点位移P=KK*U%调用Triangle2D3Node_Strain函数,求出应变SN1、SN2、SN3中求出的分别为SNx,SNy,SNxyu1=[U(1);U(2);U(3);U(4);U(5);U(6)];u2=[U(3);U(4);U(7);U(8);U(5);U(6)];u3=[U(5);U(6);U(7);U(8);U(9);U(10)];u4=[U(9);U(10);U(11);U(12);U(5);U(6)];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,Sxyu1=[U(1);U(2);U(3);U(4);U(5);U(6)];u2=[U(3);U(4);U(7);U(8);U(5);U(6)];u3=[U(5);U(6);U(7);U(8);U(9);U(10)];u4=[U(9);U(10);U(11);U(12);U(5);U(6)];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、求刚度矩阵程序function k=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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endk= t*A*B'*D*B;3、求整体刚度矩阵function z = 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;for n1=1:6for n2=1:6KK(DOF(n1),DOF(n2))= KK(DOF(n1),DOF(n2))+k(n1,n2);endend4、求应变程序function strain=Triangle2D3Node_Strain(xi,yi,xj,yj,xm,ym,u)%该函数计算单元的应变%输入三个节点i、j、m的坐标xi,yi,xj,yj,xm,ym%输入单元的位移列阵u(6X1)%输出单元的应力strain(3X1),由于它为常应变单元,则单元的应变分量为SNx,SNy,SNz%---------------------------------------------------------------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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);strain = B*u;5、求应力程序function stress=Triangle2D3Node_Stress(E,NU,xi,yi,xj,yj,xm,ym,u,ID)%该函数计算单元的应力%输入弹性模量E,泊松比NU,厚度t%输入三个节点i、j、m的坐标xi,yi,xj,yj,xm,ym%输入平面问题性质指示参数ID(1为平面应力,2为平面应变),单元的位移列阵u(6X1)%输出单元的应力stress(3X1),由于它为常应力单元,则单元的应力分量为Sx,Sy,Sxy%---------------------------------------------------------------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 = [betai 0 betaj 0 betam 0 ;0 gammai 0 gammaj 0 gammam ;gammai betai gammaj betaj gammam betam]/(2*A);if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2];stress = D*B*u;二、1、四边形单元总程序:E=1e7;NU=1/6;h=1;ID=1;%调用Quad2D4Node_Stiffness函数,求出单元刚度矩阵k1= Quad2D4Node_Stiffness(E,NU,h,0,1,0,0,1,0,1,1,ID)k2= Quad2D4Node_Stiffness(E,NU,h,1,0,2,0,2,1,1,1,ID)%调用Quad2D4Node_Assembly函数,求出求出总体刚度矩阵KK=zeros(12,12);KK= Quad2D4Node_Assembly(KK,k1,1,2,3,4);KK= Quad2D4Node_Assembly(KK,k2,3,5,6,4)% 边界条件的处理及刚度方程求解k=KK(5:12,5:12)p=[0;0;0;0;0;0;0;2000]u=k\p%支反力的计算U=[0;0;0;0;u] %为节点位移P=KK*U%调用Quad2D4Node_Stress函数,求出单元应力中的的S1、S2、S3分别为Sx,Sy,Sxy应力分量u1=[U(1);U(2);U(3);U(4);U(5);U(6);U(7);U(8)];u2=[U(5);U(6);U(9);U(10);U(11);U(12);U(7);(8)];S1= Quad2D4Node_Stress(E,NU,0,1,0,0,1,0,1,1,u1,ID)S2= Quad2D4Node_Stress(E,NU,1,0,2,0,2,1,1,1,u2,ID)2、求刚度矩阵程序function k= Quad2D4Node_Stiffness(E,NU,h,xi,yi,xj,yj,xm,ym,xp,yp,ID)%该函数计算单元的刚度矩阵%输入弹性模量E,泊松比NU,厚度h%输入4个节点i、j、m、p的坐标xi,yi,xj,yj,xm,ym,xp,yp%输入平面问题性质指示参数ID(1为平面应力,2为平面应变)%输出单元刚度矩阵k(8X8)%---------------------------------------------------------------syms s t;a = (yi*(s-1)+yj*(-1-s)+ym*(1+s)+yp*(1-s))/4;b = (yi*(t-1)+yj*(1-t)+ym*(1+t)+yp*(-1-t))/4;c = (xi*(t-1)+xj*(1-t)+xm*(1+t)+xp*(-1-t))/4;d = (xi*(s-1)+xj*(-1-s)+xm*(1+s)+xp*(1-s))/4;B1 = [a*(t-1)/4-b*(s-1)/4 0 ; 0 c*(s-1)/4-d*(t-1)/4 ;c*(s-1)/4-d*(t-1)/4 a*(t-1)/4-b*(s-1)/4];B2 = [a*(1-t)/4-b*(-1-s)/4 0 ; 0 c*(-1-s)/4-d*(1-t)/4 ;c*(-1-s)/4-d*(1-t)/4 a*(1-t)/4-b*(-1-s)/4];B3 = [a*(t+1)/4-b*(s+1)/4 0 ; 0 c*(s+1)/4-d*(t+1)/4 ;c*(s+1)/4-d*(t+1)/4 a*(t+1)/4-b*(s+1)/4];B4 = [a*(-1-t)/4-b*(1-s)/4 0 ; 0 c*(1-s)/4-d*(-1-t)/4 ;c*(1-s)/4-d*(-1-t)/4 a*(-1-t)/4-b*(1-s)/4];Bfirst = [B1 B2 B3 B4];Jfirst = [0 1-t t-s s-1 ; t-1 0 s+1 -s-t ;s-t -s-1 0 t+1 ; 1-s s+t -t-1 0];J = [xi xj xm xp]*Jfirst*[yi ; yj ; ym ; yp]/8;B = Bfirst/J;if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endBD = J*transpose(B)*D*B;r = int(int(BD, t, -1, 1), s, -1, 1);z = h*r;k = double(z);3、求总体刚度矩阵程序function z = Quad2D4Node_Assembly(KK,k,i,j,m,p)%该函数进行单元刚度矩阵的组装%输入单元刚度矩阵k,单元的节点编号i、j、m、p%输出整体刚度矩阵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;DOF(7)=2*p-1;DOF(8)=2*p;for n1=1:8for n2=1:8KK(DOF(n1),DOF(n2))= KK(DOF(n1),DOF(n2))+k(n1,n2);endendz=KK;4、求应力程序function stress= Quad2D4Node_Stress(E,NU,xi,yi,xj,yj,xm,ym,xp,yp,u,ID) %该函数计算单元的应力%输入弹性模量E,泊松比NU,厚度h,%输入4个节点i、j、m、p的坐标xi,yi,xj,yj,xm,ym,xp,yp,%输入平面问题性质指示参数ID(1为平面应力,2为平面应变)%输入单元的位移列阵u(8X1)%输出单元的应力stress(3X1)%由于它为常应力单元,则单元的应力分量为Sx,Sy,Sxy%---------------------------------------------------------------syms s t;a = (yi*(s-1)+yj*(-1-s)+ym*(1+s)+yp*(1-s))/4;b = (yi*(t-1)+yj*(1-t)+ym*(1+t)+yp*(-1-t))/4;c = (xi*(t-1)+xj*(1-t)+xm*(1+t)+xp*(-1-t))/4;d = (xi*(s-1)+xj*(-1-s)+xm*(1+s)+xp*(1-s))/4;B1 = [a*(t-1)/4-b*(s-1)/4 0 ; 0 c*(s-1)/4-d*(t-1)/4 ;c*(s-1)/4-d*(t-1)/4 a*(t-1)/4-b*(s-1)/4];B2 = [a*(1-t)/4-b*(-1-s)/4 0 ; 0 c*(-1-s)/4-d*(1-t)/4 ;c*(-1-s)/4-d*(1-t)/4 a*(1-t)/4-b*(-1-s)/4];B3 = [a*(t+1)/4-b*(s+1)/4 0 ; 0 c*(s+1)/4-d*(t+1)/4 ;c*(s+1)/4-d*(t+1)/4 a*(t+1)/4-b*(s+1)/4];B4 = [a*(-1-t)/4-b*(1-s)/4 0 ; 0 c*(1-s)/4-d*(-1-t)/4 ;c*(1-s)/4-d*(-1-t)/4 a*(-1-t)/4-b*(1-s)/4];Bfirst = [B1 B2 B3 B4];Jfirst = [0 1-t t-s s-1 ; t-1 0 s+1 -s-t ;s-t -s-1 0 t+1 ; 1-s s+t -t-1 0];J = [xi xj xm xp]*Jfirst*[yi ; yj ; ym ; yp]/8;B = Bfirst/J;if ID == 1D = (E/(1-NU*NU))*[1 NU 0 ; NU 1 0 ; 0 0 (1-NU)/2];elseif ID == 2D = (E/(1+NU)/(1-2*NU))*[1-NU NU 0 ; NU 1-NU 0 ; 0 0 (1-2*NU)/2]; endstr1 = D*B*u;str2 = subs(str1, {s,t}, {0,0});stress = double(str2);。

相关文档
最新文档