第三章-MATLAB有限元分析与应用
yantubbs-研究生教学用书_结构分析的有限元法与MATLAB程序设计-part3

等参数单元的形函数。
按几何关系式和式(其中记号有如下关系式和规则,它们与式中)求逆,得到于是按式(的元素写出为了用的显式,引入矢径及其偏导数的记号如下((、、的偏导数。
根据复合函数求导的))))和对和分别表示,应变计算公式是个子矩阵,典型的子矩阵是单元刚度矩阵可以分成和)定义。
由式(其中常数应力的计算公式是矩阵,形函数对下面是计算单元刚度矩阵的函数,其中又调用了计算应变矩阵,坐标的导数等子程序。
为了方便阅读,这里一并列出。
等效结点力则采用体积力设单位体积力是为式中和和方向的等效结点力分量为零。
表面力上作用表面力设单元的某边界的等效结点力为的公式有的面上进行积分,按照数学分析的某个边界面上进行的。
例如,对于式中曲面积分是在单元上作用分布力,则在此面上各结点分别是高斯积分的权系数和高斯点。
另外两个高斯积分法的单元自重的等效结点力为的负方向,分阶数时,可以得到多项式积分的精确值。
设单元重力的方向为的符号运算功能得到。
但是一般可以利用高斯积分法,因为取合适的积当体积力的形式比较简单,如为多项式时,则上式能积出显式,可以利用,则移置到各结点上的等效结点力之间的关系,因此)写成和可以用)(,得到表示该曲面的外法线于是式()可以写成这就是将原来的第一类曲面积分化为第二类曲面积分。
例如,对于的面上,由坐标变换式(,给出来表示,通过计算和归纳,可以将式()的面上,相应的计算公式只须在上式右端对对于及和将它代入式(,设若单元的某个面上只作用着沿外法线方向荷载方向,则有同时进行轮换就可得到。
基于实际的考虑,式()和式()使用时并不方便,因为必须知道作用在单元的哪一个面来确定积分变量,还需要考虑正负符号。
其实根据形函数的特性,即不在某一个面上的结点的形函数在这个面上值为零,因此表面力只对作用面上的结点有贡献。
设单元的某一个曲面上作用有分布表面力,个空间结点组成,该曲面可以用参数方程写成元的形函数。
这里要注意的是,这式(结点等参数单元的形函数,即由式(个结点也必须如图等参数单元的结点顺序排列。
基于Matlab语言的有限元法及其应用

基于Matlab语言的有限元法及其应用
宋克志;刘智儒
【期刊名称】《鲁东大学学报(自然科学版)》
【年(卷),期】2004(020)002
【摘要】介绍了有限元法的本质特征及用变分试函数法和残值试函数法导出有限元法的过程,给出了在Matlab语言环境下实现有限元法的步骤.利用Matlab语言中的PDE工具箱求解偏微分方程具有简便、快速、可视化程度高等优点,能满足精度要求,并以一个工程实例说明了利用有限元法求解偏微分方程从而解决实际问题的方法.
【总页数】3页(P100-102)
【作者】宋克志;刘智儒
【作者单位】烟台师范学院交通学院,山东,烟台,264025;北京交通大学隧道及地下工程试验研究中心,北京,100044;烟台师范学院交通学院,山东,烟台,264025
【正文语种】中文
【中图分类】O241.82;TB115
【相关文献】
1.基于MATLAB语言的结构重分析技术的应用 [J], 詹顺;
2.基于MATLAB语言在计算机模拟系统中应用 [J], 刘佳
3.基于MATLAB语言在物理教学中的应用——光栅衍射仿真实验 [J], 葛立新;陈荣;吕思斌;许永红;沈国浩;刘晓伟
4.基于Grubbs规则和MATLAB语言快速剔除异常值方法的建立及其在药物苦度
评价中的应用 [J], 刘瑞新;李学林;王艳丽;张耀;桂新景;王君明;王青晓;姚静;张璐;施钧瀚
5.基于有限元法的刮板输送机中部槽结构优化与应用 [J], 范伟源;王温栋
因版权原因,仅展示原文概要,查看原文内容请购买。
MATLAB在线性四面体有限元分析中的应用

Matlab在线性立体有限元分析中的应用摘要:Matlab具有强大的运算功能,本文以线性四面体元为例,详细介绍MATLAB在刚度矩阵推导,静力结构等有限元分析中的具体应用,编写了刚度矩阵,引用边界条件以及后处理各步骤的程序,该方法可以进一步推广到其他单元甚至更复杂的结构分析中。
关键词:Matlab 有限元刚度矩阵0 引言Matlab是美国MathWork公司开发的用于数值计算,算法研究,建模仿真,实时实现的理想集成环境,因其完整的专业体系和强大的运算功能已广泛应用于工业、电子、信号处理、控制、建筑、教学等各个领域。
有限元是近代数值计算最有效方法之一.有限元法的基础是单元划分以及刚度矩阵的推导,目前,有限元分析已有一个相对固定的模式,而烦琐、复杂的矩阵运算、微分、积分是分析过程中的主要内容.通常,这种矩阵运算是由手工来完成的,工作量大,而且极易出错.利用MatLab丰富的符号运算功能,构建有限单元模型,完成刚度矩阵推导及后处理过程中的运算,不但速度快,而且准确性高。
利用Matlab编写函数M文件并在运算过程中调用,能够依据具体问题对模型进行分析运算,并能在类似问题中得到推广应用。
1 线性四面体有限元分析中的基本方程线性四面体(立体)元(liner tetrahedral(solid)element)是既有局部坐标又有总体坐标的三维有限元,用线性函数描述。
线性四面体元的系数有弹性模量E 和泊松比ν,每个线性四面体与元有四个节点并且每个节点有三个自由度,如图1所示。
这四个节点的总体坐标用111x (,y ,z )、222x (,y ,z )、333x (,y ,z )、444x (,y ,z )表示。
单元刚度矩阵给定如下:[][][][]T k V B D B = (1.1)式中V 是单元的体积,由下式给出:11122233344411611x y z x y z V x y z x y z =(1.2)图1 线性四面体(立体)元 矩阵[]B 由下式(1.3)确定:[]312431243124331122443311224431122000000000000000000000000000000000x x x x y y y y z z z z y x y x y x y x z y z y z y z y zxzxN N N N N N N N N N N N B N N N N N N N N N N N N N N N N N N N N N ∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂=∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂3440zxzx N N N ⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥∂∂∂⎢⎥⎢⎥∂∂∂⎣⎦在方程(1.3)中,形函数由下式给出:111111()6N x y z V αβγδ=+++222221()6N x y z V αβγδ=+++333331()6N x y z Vαβγδ=+++444441()6N x y z Vαβγδ=+++ (1.4)在方程(1.1)中,矩阵[]D 由下式(1.5)确定:[]10001000100012000002(1)(12)120000021200002E D νννννννννννννν-⎡⎤⎢⎥-⎢⎥⎢⎥-⎢⎥-⎢⎥=⎢⎥+-⎢⎥-⎢⎥⎢⎥⎢⎥-⎢⎥⎣⎦2 建立的Matlab 函数TetrahedronElementV olume(x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4),该函数根据给出的第一个节点坐标111(,,)x y z ,第二个节点坐标222(,,)x y z ,第三个节点坐标333(,,)x y z 和第四个节点坐标444(,,)x y z 返回单元的体积。
第三章MATLAB有限元分析与应用

第三章MATLAB有限元分析与应用有限元分析(Finite Element Analysis, FEA)是一种工程计算方法,用于解决结构力学和流体力学等问题。
它将一个复杂的结构分割成多个简单的离散单元,通过建立数学模型和求解方程组,得到结构的力学、热力学和流体力学等性能参数。
MATLAB是一种功能强大的数学计算软件,具有直观的用户界面和丰富的工具箱,可以方便地进行有限元分析。
本章将介绍在MATLAB中进行有限元分析的基本步骤和方法,以及一些常见的应用例子。
首先,进行有限元分析需要将结构进行离散化。
常用的离散化方法有节点法和单元法。
节点法是将结构的几何形状划分为小的节点,并在节点上进行计算。
单元法是将结构划分为多个小的单元,并在每个单元内进行计算。
在MATLAB中,可以通过创建节点和单元的矩阵来描述结构和单元的关系。
例如,创建一个2D结构形式的节点矩阵:nodes = [0 0; 1 0; 0 1; 1 1];然后,通过创建描述节点连接关系的矩阵,来定义结构的单元:elements = [1 2 3; 2 4 3];这里的每一行代表一个单元,数字表示节点的编号。
接下来,需要定义材料的力学参数和边界条件。
材料的力学参数包括弹性模量、泊松比等。
边界条件包括支座约束和加载条件。
在MATLAB中,可以通过定义力学参数和边界条件的向量来描述。
例如,定义弹性模量和泊松比的向量:E=[200e9200e9];%弹性模量nu = [0.3 0.3]; % 泊松比定义支座约束的向量(1表示固定,0表示自由):constraints = [1 1; 0 0; 0 1; 0 1];定义加载条件的向量(包括点力和面力):最后,通过求解方程组得到结构的应力和位移等结果。
在MATLAB中,可以利用有限元分析工具箱中的函数进行计算。
例如,可以使用“assem”函数将节点和单元的信息组装成方程组,并使用“solveq”函数求解方程组。
有限元方法与MATLAB程序设计 第3章 桁架和刚架

Fe keUe
Ue TUe
结构坐标系下的 单元刚度方程
9
结构坐标系下单元刚度矩阵 ke T TkeT
c cos s sin
y
Fe keUe
y
i (xi , yi )
(xj, yj ) x j
x
结构坐标系
cos sin 0
0 1 0 1 0 e cos sin 0
0
ke
EA sin
Fyi
Fxj Fyj
EA l
0
1
0
0 0 0
0 1 0
0
vi
0 0
u v
j j
单元坐标系下的 1 0 1 0
单元刚度矩阵
ke
EA l
0
1
0 0
0 1
0 0
0
0
0
0
7
§3.1.3 整体坐标系下的单元刚度方程
Fxi Fxi cos Fyi sin Fyi Fxi sin Fyi cos Fxj Fxj cos Fyj sin
是结构坐标系x轴正方 向至单元坐标轴x 的角度
y
x
y Fxi i
Fxi Fyi Fyi
x
结构(整体)坐标系
Fyj Fxj sin Fyj cos
Fxi Fyi
Fxj
Fyj
e
cos
sin
0
0
sin cos
0 0
0 0
cos sin
0
e
Fxi
e0Fyi源自sin cosFxj
Fyj
Fe TFe Ue TUe
cos
T sin
0
0
sin cos
最新MATLAB在有限元分析方法中的应用PPT

PlaneFrameElementStiffness:
PlaneFrameAssemble:
PlaneFrameElementForces:
PlaneFrameElementAxialDiagram:
PlaneFrameElementShearDiagram PlaneFrameElementMomentDiagram PlaneFrameInclinedSupport——(T) ............
2、可视化及强大的图形功能。
(1)绘图 (2)界面编制
3、含有多种学科的工具箱[ToolBox]以及 程序代码的公开性。
4、程序可移植性好。
二、有限元方法的步骤:
一、离散化域 二、形成单元刚度矩阵 三、集成整体刚度矩阵 四、引入边界条件 五、求解方程 六、后处理
2020/11/11
8
简例: ——平面刚架元
实例:如图所示刚架, 已知各杆EI及A均相同, 且 A=2*10-2m2, I=5*10-5m4,E=210GPa.
PlaneFrameElementStiffness:
PlaneFrameAssemble:
整体刚度矩阵:
引入边界条件:
KUF
后处理:
四、结论和展望
Simple,Powerful and free
结束语
谢谢大家聆听!!!
39
MATLAB在有限元分析方法 中的应用PPT
一、“MATLAB”
1、前置处理 2、求解器 3、后置处理
Simple,Powerful and free
有限元软件的基本模块: 1、前置处理 2、求解器 3、后置处理
C、C++、Fortran等/MATLAB
有限元数值解法在MATLAB中的实现及可视化

有限元数值解法在MATLAB中的实现及可视化摘要:偏微分方程的数值解法在数值分析中占有很重要的地位,很多科学技术问题的数值计算包括了偏微分方程的数值解问题。
在学习初等函数时,总是先画出它们的图形,因为图形能帮助我们了解函数的性质。
而对于偏微分方程,画出它们的图形并不容易,尤其是没有解析解的偏微分方程,画图就显得更加不容易了。
为了从偏微分方程的数学表达式中看出其所表达的图形、函数值与自变量之间的关系,通过MATLAB编程,用有限元数值解法求解了偏微分方程,并将其结果可视化。
关键词:偏微分方程;MATLAB;有限元法;可视化1 引言(Introduction)偏微分方程的数值解法在数值分析中占有很重要的地位,很多科学技术问题的数值计算包括了偏微分方程的数值解问题。
近三十多年来,它的理论和方法都有了很大的发展,而且在各个科学技术的领域中应用也愈来愈广泛。
例如,核武器的研制要有理论设计和核试验。
但核反应和核爆炸的过程是在高温高压的条件下进行的,而且巨大的能量在极短的时间内释放出来,核装置内部的细致反应过程及各个物理量的变化是根本不能用仪器测量出来的,核试验只是提供综合的数据。
而描述核反应和爆炸物理过程的数学模型是一个很复杂的非线性偏微分方程组,也根本没有办法得到这个方程组理论上的精确解。
所以发展核武器的国家都在计算机上对核反应过程进行数值模拟,这也称为“数值核实验”,它可以大大减少核试验的次数,节约大量的经费,缩短研制的周期[1]。
在学习初等函数时,总是先画出它们的图形,因为图形能帮助我们了解函数的性质。
而对于偏微分方程,画出它们的图形并不容易,尤其是没有解析解的偏微分方程,画图就显得更加不容易了。
所以本文主要研究如何用MATLAB数值求解偏微分方程,并将其数值解绘制成三维图形的形式,从而可以从复杂的数学表达式中看出其所表达的图像、函数值与自变量之间的关系[2]。
2 有限元法(Finite element method)2.1 有限元法概述有限元法的基本思想是将结构离散化,用有限个容易分析的单元来表示复杂的对象,单元之间通过有限个节点相互连接,然后根据变形协调条件综合求解。
有限元ANSYS MATLAB 应用

有限元在ANSYS和MATLAB中的应用工程学院摘要: 文章简述了有限元分析的基本理论及其求解问题的基本步骤, 介绍了ANSYS 软件的应用,介绍了Matlab 语言特点,给出了Matlab 环境下实现有限元的步骤。
说明如何使用Matlab 进行有限元分析,使用该方法进行分析具有精度高、简便、快速及可视化等诸多优点,具有较强的使用价值。
关键词: 有限元分析; ANSYS 软件; 用Matlab 进行有限元分析的优点1 有限元分析基本理论有限元分析的基本概念是用较简单的问题代替复杂问题后再求解。
它将求解域看成是由许多称为有限元的小的互连子域组成, 对每一单元假定一个合适的近似解,然后推导求解这个域的满足条件, 从而得到问题的解。
这个解不是准确解,而是近似解, 因为实际问题被较简单的问题所代替。
由于大多数实际问题难以得到准确解,而有限元不仅计算精度高, 而且能适应各种复杂形状, 因而成为行之有效的工程分析手段。
有限元是那些集合在一起能够表示实际连续域的离散单元[1]。
有限元的概念早在几个世纪前就已产生并得到了应用, 例如用多边形逼近圆来求得圆的周长, 但作为一种方法而被提出, 则是最近的事。
有限元法最初被称为矩阵近似方法, 应用于航空器的结构强度计算, 并由于其方便性、实用性和有效性而引起从事力学研究的科学家的浓厚兴趣。
经过短短数十年的努力, 随着计算机技术的快速发展和普及, 有限元方法迅速从结构工程强度分析计算扩展到几乎所有的科学技术领域, 成为一种丰富多彩、应用广泛并且实用高效的数值分析方法。
有限元方法与其他求解边值问题近似方法的根本区别在于它的近似性仅限于相对小的子域中。
1.1有限元求解问题的分析过程第一步, 问题及求解域定义: 根据实际问题近似确定求解域的物理性质和几何区域。
第二步, 求解域离散化: 将求解域近似为具有不同有限大小和形状且彼此相连的有限个单元组成的离散域, 习惯上称为有限元网络划分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
%
modulus of elasticity E, cross-sectional
%
area A, and length L. The size of the
%
element stiffness matrix is 2 x 2.
y = [E*A/L -E*A/L ; -E*A/L E*A/L];
2020/5/29
步骤2:形成单元刚度矩阵
调用 function y = SpringElementStiffness(k)函数
k1=SpringElementStiffness(100);
k1 =
100 -100 -100 100
k2=SpringElementStiffness(200);
k2 =
200 -200
§3-2 线性杆元
1、基本方程
线性杆元也是总体和局部坐标一致的一维有限单元,用线性函数描述
每个线性杆元有两个节点(node)
EA
单刚矩阵为:k
L
EA L
EA L
EA
L
总刚矩阵: n n
结构方程: KU F
22
单元节点力: f ku
2020/5/29
14
§3-2 线性杆元
2、MATLAB函数编写
%SpringElementForces This function returns the element nodal force
%
vector given the element stiffness matrix k
%
and the element nodal displacement vector u.
K= 100 -100 0 -100 100 0 0 00
K=
K = SpringAssemble(K,k2,2,3)
100 -100 0
2020/5/29
-100 300 -200
9
0 -200 200
§3-1 弹簧元
4、实例计算分析应用
步骤4:引入边界条件
100 100 0
100 300 200
%
matrix k of the spring with nodes i and j into the
%
global stiffness matrix K.
%
This function returns the global stiffness matrix K
%
after the element stiffness matrix k is assembled.
2020/5/29
21§3-2 线性杆元 Nhomakorabea3、实例计算分析应用
步骤4:引入边界条件
420000 420000 0
420000 1050000 630000
0 630000
UU12
F1 F2
630000 U3 F3
已知边界条件: U1 0,U3 0.002, F2 10
420000 420000 0
3、实例计算分析应用
如图所示二线性杆元结构,假定E=210MPa,A=0.003m^2,P=10kN, 节点3的右位移为0.002m。
求:系统的整体刚度矩阵; 节点2的位移; 节点1、3的支反力; 每个杆件的应力
解:
步骤1:离散化域
2020/5/29
19
§3-2 线性杆元 3、实例计算分析应用
步骤2:形成单元刚度矩阵
0 200
UU12
F1 F2
200 U3 F3
已知边界条件: U1 0, F2 0, F3 15
100 100 0
100 300 200
0 200
0 U 2
F1 0
200 U3 15
2020/5/29
10
§3-1 弹簧元
5、实例计算分析应用
步骤5:解方程
y = [k -k ; -k k];
2020/5/29
4
§3-1 弹簧元
3、MATLAB函数编写
3.2 整体刚度矩阵的形成
function y = SpringAssemble(K,k,i,j)
%SpringAssemble This function assembles the element stiffness
%
into the global stiffness matrix K.
%
This function returns the global stiffness
%
matrix K after the element stiffness matrix
%
k is assembled.
K(i,i) = K(i,i) + k(1,1);
2.1 单元刚度矩阵的形成
function y = LinearBarElementStiffness(E,A,L)
%LinearBarElementStiffness This function returns the element
%
stiffness matrix for a linear bar with
U=zeros(2,1);
F=[0;15];
K = K(2:3,2:3);
KK=K;
U=K\F
U=[0;U];
F=K*U;
u1=U(1:2);
f1=SpringElementForces(k1,u1)
u2=U(2:3);
2020f/25/=29SpringElementForces(k2,u2)
13
y = k * u;
2020/5/29
17
§3-2 线性杆元
2、MATLAB函数编写
2.4 节点应力计算
function y = LinearBarElementStresses(k, u, A)
%LinearBarElementStresses This function returns the element nodal
调用 function y = LinearBarElementStiffness(E,A,L)函数 k1=LinearBarElementStiffness(E,A,L1)
k2=LinearBarElementStiffness(E,A,L2)
2020/5/29
20
§3-2 线性杆元
3、实例计算分析应用
U=zeros(2,1); F=[0;15];
K(1,:)=[]; K(:,1)=[];
K = K(2:3,2:3);
300 200
200
200
UU23
0 15
U=K\F U=inv(K)*F
U= 0.1500
2020/5/29
0.2250
11
§2-1 弹簧元
5、实例计算分析应用
步骤6:后处理
第三章 MATLAB有限元分析与应用
§3-1 弹簧元 §3-2 线性杆元 §3-3 二次杆元 §3-4 平面桁架元 §3-5 空间桁架元
§3-6 梁元
2020/5/29
1
§3-1 弹簧元 1、有限元方法的步骤:
离散化域 形成单刚矩阵 集成整体刚度矩阵 引入边界条件 求解方程 后处理
2020/5/29
%
stress vector given the element stiffness
%
matrix k, the element nodal displacement
%
vector u, and the cross-sectional area A.
y = k * u/A;
2020/5/29
18
§3-2 线性杆元
步骤3:集成整体刚度矩阵
调用 function y = LinearBarAssemble(K,k,i,j)函数
n=3; K = zeros(n,n)
K= 000 000 000
K = LinearBarAssemble (K,k1,1,2)
K = LinearBarAssemble (K,k2,2,3)
2
§3-1 弹簧元
2、基本方程
弹簧元是总体和局部坐标一致的一维有限单元 每个弹簧元有两个节点(node)
单刚矩阵为:
k
k k
k
k
总刚矩阵: n n
结构方程: KU F
22
单元节点力: f ku
2020/5/29
3
§3-1 弹簧元
3、MATLAB函数编写
3.1 单元刚度矩阵的形成
function y = SpringElementStiffness(k)
2020/5/29
u1=U(1:2); f1= LinearBarElementForces(k1,u1) sigma1=LinearBarElementStresses(k1, u1, A)
K(i,i) = K(i,i) + k(1,1);
K(i,j) = K(i,j) + k(1,2);
K(j,i) = K(j,i) + k(2,1);
K(j,j) = K(j,j) + k(2,2);
y = K;
2020/5/29
5
§3-1 弹簧元
3、MATLAB函数编写
3.3 节点载荷计算
function y = SpringElementForces(k,u)
420000 1050000 630000
0 0
630000
U2
F110
630000 0.002 F3
2020/5/29