有限元平面矩形单元MATLAB程序设计精品资料.docx
《有限元平面矩形单元MATLAB程序设计精品资料.docx》由会员分享,可在线阅读,更多相关《有限元平面矩形单元MATLAB程序设计精品资料.docx(109页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、苏州科技学院本科生毕业设计(论文)有限元平面矩形单元MATLAB程序设计摘 要本论文主要研究内容是有限元平面矩形单元的基本原理和MATLAB软件的图形用户界面及函数编程的基本知识,并根据有限元平面矩形单元的计算单元刚度矩阵,结点位移等原理和方法,运用MATLAB 语言编写弹性力学平面矩形单元的计算程序,使得程序能够完成对不同荷载类型,不同结构单元的计算,同时设计了图形用户界面(GUI),使得程序能够在图形用户界面(GUI)上对应的输入框内输入相应数据,并能够计算出单元刚度矩阵,等效结点荷载,有限元上结点位移和单元应力;最后将集中荷载和均布荷载情况下的实例进行对MATLAB计算得出的位移和单元结
2、点应力与ANSYS计算值比较分析,验证其正确性和通用性,并总结了MATLAB软件在有限元的运用。关键词 MATLAB程序设计;有限元;矩形单元;刚度矩阵;单元应力The Rectangle Unit Plane of Finite Element of the MATLAB ProgrammingAbstractThis dissertation mainly studies the radical principle of the rectangle unit plane of the finite element and the basic knowledge of the Graphic
3、al User Interface and the function programming of the MATLAB software . And make use of MATLAB language to make up the GUI and the computation program of MATLAB according to the theory and method of the rectangle unit plane of the finite element to compute the element stiffness matrix , nodes displa
4、cement and so on about different types of loads and different elements . Imputing the datas into the GUI to figure out element stiffness matrix , equivalent nodal load , displacement of nodes and element stress . At last , comparing and analyzing the nodes displacement and nodes stress of element of
5、 MATLAB and ANSYS to make sure whether the programming is right and used universally , and making a summary the application of MATLAB software in finite element analysis . Keywords MATLAB programming ; finite element analysis ; rectangle unit of plane ;stiffness matrix ; element stress105目 录第1章 绪论11
6、.1研究背景11.1.1 有限元单元法概述11.1.2 MATLAB程序概述21.1.3 MATLAB应用于有限元程序设计的优点21.2 研究内容31.3 研究重点3第2章 矩形单元有限元原理42.1 位移函数42.2 几何矩阵52.3 应力矩阵62.4 单元刚度矩阵72.5 等效结点荷载82.6 整体等效结点荷载82.7 整体刚度矩阵82.8 结点位移的计算8第3章 MATLAB 图形用户界面(GUI)93.1 GUI界面的概述93.1.1 控件对象的描述103.1.2 部分常用控件通用属性113.2 GUI常用函数语句123.2.1 get和set语句123.2.2 if判断语句和for循
7、环语句133.3 M文件的一般结构13第4章 有限元平面矩形单元MATLAB程序设计154.1 图形用户界面设计154.2 设置控件的相关属性164.3 编写代码18第5章 应用实例315.1 9个单元16个结点计算335.2 6个单元13个结点计算395.4 均布荷载下9个相等单元44结 论51致 谢52参 考 文 献53附录A 译文54工程结构构件的有限元模型和剪应力分析54附录B 外文原文70第1章 绪论1.1研究背景1.1.1 有限元单元法概述 有限元法是伴随着电子计算机技术的进步而发展起来的一种工程数值计算方法,其适应性很强,可以解决各种各样的复杂工程问题。有限元法的基本思想就是将任
8、意一个连续体离散化为一组有限个、按一定方式互相连接且几何形状简单的单元的组合,单元本身又可以有不同形状,使复杂问题简化从而得到问题的解。有限元法作为数值分析方法的另一个重要特点是利用在每一个单元内假设的近似函数来分片地表示全求解区域上待求的未知场函数。单元内的近似函数通常由未知场函数,或这些函数与其导数在单元各个节点上的数值和其插值函数来表达。这样一来,未知场函数或未知场函数及其导数在各个节点上的数值就成为新的未知量(即自由度),从而使一个连续的无限自由度问题变成离散的有限自由度问题,一经求解出这些未知量,就可以通过插值函数计算出各个单元内场函数的近似值,从而得到整个求解域上的近似解。显然随着
9、单元数目的增加,解得近似程度将不断改进。如果单元是满足收敛要求的,近似解最后将收敛于精确解。有限元法的数学逻辑严谨,物理概念清晰,易于理解和掌握,应用范围广泛,能够灵活的处理和求解各种复杂问题,特别是它采用矩阵形式表达基本公式,便于运用计算机编程运算,这些优点赋予了有限单元法强大的生命力。一、结构物的离散化离散化是将待分析的结构物从集合上用线或面划分为有限个单元,即将结构物看出有限个单元构成的组合体。按结构物形状的不同和分析的要求,选取不同形式的单元,通常在单元的边界上设置结点,结点联接相邻的单元。二、单元分析所谓单元分析就是设法导出单元的结点位移和结点力之间的关系,即建立单元刚度矩阵。在分析
10、弹性力学平面问题时,每个平面单元内的任意点的位移需要按一定的函数关系用结点位移来表示,这种函数称为位移函数。选择的位移函数应保证解的收敛性,因此,建立合理的位移函数是单元分析点的关键。位移函数确定以后就可以利用弹性力学的基本方程推导出单元刚度矩阵。此外,还需要按静力等效原则将作用于每个单元上的外力简化到节点上,构成等效结点力。对于每一个单元进行上述分析以后,可建立起单元刚度方程。三、整体分析整体分析就是将各个单元组成结构整体进行分析。整体分析的目的在于导出整个结构结点位移与结点力之间的关系,即建立整个结构的刚度方程。整体分析的步骤为:首先按着一定的集成规则,将各个单元刚度矩阵集合成结构整体刚度
11、矩阵,并将单元等效结点荷载集合成整体等效节点荷载列阵;然后引入结构的位移边界条件,求解整体平衡方程,得出基本未知量结点位移列阵;最后计算各个单元的内力和变形1。1.1.2 MATLAB程序概述MATLAB是一种以矩阵为基本单位的高效数值计算语言,是一个集科学计算、图像处理、声音处理于一体的高度集成系统。在编程效率、程序可读性、可移植性和可扩充性上MATLAB远远优于其它的高级编程语言,而且其编程易学、直观,代码非常符合人们的思维习惯。另外MATLAB为用户提供了丰富的图形界面设计方法,使用户能够在利用其强大的数值计算功能的同时可设计出友好的图形界面,它受到了越来越多的用户的欢迎,成为了当今国际
12、上最流行的计算机辅助设计软件2-5。1.1.3 MATLAB应用于有限元程序设计的优点一、语言简洁紧凑、使用方便灵活、库函数极其丰富,几乎包括有限元编程中的所有基础程序,使开发者可以直接进行高、精、尖的研究。MATLAB是一个强大的数值计算软件,在数值计算方面,除了包括基本的数学函数、基本矩阵和数组运算函数以及多种插值函数之外,而且具有矩阵的求逆、LU分解、OR分解、矩阵指数等几乎所有的矩阵函数及矩阵分析函数。另外它还包括强大的稀疏矩阵的存储、初等变换、分解、特征值和奇异值的求法等功能,以及提供了系数阵为稀疏矩阵的线性方程组的各种解法。MATLAB提供的所有这些数值计算方面的功能,对有限元编程
13、中的数据存储、单元刚度矩阵生成、刚度矩阵集成、线性方程组的求解等方面大有益处,根本无需编程人员去编制有限元中基础程序,大大减少了工作量及提高了编程效率。二、可视化建模及图形功能强大。MATLAB可以给出数据的二维、三维、乃至四维等数据表现以及绘制一般科技绘图软件所能绘制的几乎所有图形,如曲线图、网格图、等直线图、表面图等,MATLAB这些功能为有限元后置处理数据可视化提供了充分的表现力度,这往往是有限元数据处理中最为困难的事。除此之外,MATLAB除了具有较强的应用程序应用界面编制功能,而且提供了专门的界面编制工具(GUI),可以利用它编制理想的用户界面。三、含有多种学科的工具箱(ToolBo
14、x)以及程序代码的公开性,是MATLAB的一大特色。MATLAB提供的学科性工具箱可以使用户无需编写自己学科范围内的基础程序,太大节约编程时间。例如,MATLAB工具箱中的偏微分方程工具箱(PDE)就是利用MATLAB编制好的有限元基础程序库。四、程序可移植性好,MATLAB几乎可以在各种机型和操作系统上运行,所以它的可移植性和可扩充性MATLAB远远优于其它的高级编程语言6-10。1.2 研究内容本论文是根据有限元平面矩形单元的计算原理和方法,运用MATLAb语言的语法规则、程序结构和编程技巧,编写弹性力学平面矩形单元有限元计算程序和平面矩形单元有限元计算的图形用户界面;并通过在界面上输入不
15、同单元类型和荷载类型的数据,使得能够计算出单元的刚度矩阵、结点位移和单元应力。最后通过与其他程序软件(如ANSYS)的计算结果相比较分析,来验证本论文研究计算程序的相对精确性和通用性。1.3 研究重点1,深入了解有限元矩形单元计算刚度矩阵,结点位移等的基本原理;2,熟练掌握MATLAB语言程序的语法规则和编程技巧;3,编写图形用户界面和弹性力学平面矩形单元MATLAB的计算程序,正确计算出结点位移,刚度矩阵和单元应力。第2章 矩形单元有限元原理y矩形单元是以4个顶点为结点,每个结点有2个位移分量,共有8个结点位移分量。设图2.1所示位移一矩形单元,变长分别为2a和2b,四个结点以i、j、m、p
16、表示。为了简便,取单元形心为坐标原点,x轴、y轴与单元边界平行。ijmpox2b2a图2.1 矩形单元2.1 位移函数矩形单元的位移函数为u=1+2x+3y+4xyv=5+6x+7y+8xy (2-1)对于i、j、m、p4结点,将相应结点坐标带入上式,有ui=1a2b3+ab4uj=1+a2b3ab4um=1+a2+b3+ab4up=1a2+b3ab4 a vi=5a6b7+ab8vj=5+a6b7ab8vm=5+a6+b7+ab8vp=5a6+b7ab8 b由式(a)解出1、2、3、4;由式(b)解出5、6、7、8。将这8个常数带入式(2-1),可得u=Niui+Njuj+Nmum+Npup
17、v=Nivi+Njvj+Nmvm+Npvp 22其中Ni=141xa1ybNj=141+xa1ybNm=141+xa1+ybNp=141xa1+yb 23式(1-2)改写为矩阵形式fe=Ne 24式中fe=uvT N=Ni00NiNj00NjNm00NmNp00Np 25 e=uiviujvjumvmupvpT 26上述位移函数可以充分保证解答的收敛性。这是由于:式 (2-1)中包含1、2、3以及5、6、7,反映了刚体位移和常量应变;单元4条边界分别平行于x、y轴。在平行于x轴的边界上y=b,位移分量为坐标x的线性函数;在平行于y轴的边界上x=a,位移分量是y的线性函数,因此,可以保证两相邻单
18、元在公共边界上的位移是连续的1。2.2 几何矩阵 利用弹性力学平面问题点的几何方程和式(2-4),求得单元应变31e=B3881e 27 式中:仍然由x、y、xy组成的列阵;几何矩阵B为由结点位移求单元应变的转换矩阵,即 B=x00yyxN或改写成 B=BiBjBmBp 28 而 Bi=Nix00NiyNiyNix i,j,m,p 29上式中利用脚标i、j、m、p进行轮换,用以表示Bi、Bj、Bm、Bp。分别计算Niy,Nixi,j,m,p并带入式(2-8),可得B=14abby00axaxbyby00a+xa+xbyb+y00a+xa+xb+yb+y00axaxb+y 210 2.3 应力矩
19、阵利用弹性力学平面问题的物理方程=D,并将式(2-7)带入可得 31e=D33B3881e=S3881e 211 式中:仍然是由x、y、xy 组成的列阵;D为弹性矩阵,应力矩阵S为结点位移求应力的转换矩阵。S可写成 S=SiSjSmSp 212 而 Si=DBi i,j,m,p 113 D=E1210100012S=E4ab12byaxbyax12ax12bybya+xbya+x12a+x12by b+ya+xb+ya+x12a+x12b+yb+yaxb+yax12ax12b+y 214整理应力结果时,通常需要计算单元4个结点处的应力,将结点坐标值带入式(2-14)即可求出4个结点上的应力矩阵
20、,分别以Si、Sj、Sm、Sp表示。Si=E4ab122b2a2b2a1a1b2b02b001b00000002a02a1a0Sj=E4ab122b02b001b2b2a2b2a1a1b02a02a1a0000000Sm=E4ab1200000002a02a1a02b2a2b2a1a1b2b02b001bSp=E4ab1202a02a1a00000002b02b001b2b2a2b2a1a1b 215 2.4 单元刚度矩阵 矩形单元的单元刚度矩阵ke为88方阵,利用下式 ke=BTDBtdxdy 或 ke=BTStdxdy并带入弹性矩阵D、几何矩阵B、或几何矩阵B和应力矩阵S,可求出ke=Et
21、1213ba+16ab1+813ab+16ba13ba+112ab138对称13ba+16ab13816ab16ba16ba112ab1+81+816ab112ba1+813ab+16ba16ba16ab13813813ab+112ba16ba16ab13813813ab+112ba16ba112ab1+81+816ab112ba13ba+16ab1+813ab+16ba对称13ba+112ab13813816ab16ba13ba+16ab1+813ab+16ba 2162.5 等效结点荷载1,单元自重对于单元自重W,移置到每一个结点上都是W4,因此Re=W014014014014T 2172
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 有限元平面矩形单元MATLAB程序设计 精品资料 有限元 平面 矩形 单元 MATLAB 程序设计 精品 资料
限制150内