有限元一维杆问题解法及程序

有限元一维杆问题解法及程序
有限元一维杆问题解法及程序

解:

第一步——离散

对于一维杆问题,我们先离散成单元,对每个单元作如下计算

[][

][][

][]00,,,,0

0)(22

,,,,2222222=??

????-??????-?????????=??

????-??

?

?????????-?????????=-????-???=-??=-????

?

?????ΓΓ

Γdx x N N u u K x u N N dx x N N u u dx u u N N N N u u x u

N N u u dx ux dx x

u x u x u u dx ux dx x u u dx x x u u j i x x j i j i j i x x j

i j i j i j i x x j

i j i j i x

x x x x x x x x x j i j

i

j

i

j i j i j i

j i j

i

δδδδδδδδδδδδ

其中杆被平均离散为e 个单元(有限元不一定要均分),于是有node=e+1个结点,每个单元长度len=1/e,于是第n 个单元的左端点坐标len n x i )1(-=,右端点坐标nlen x j =;

第二步——刚度矩阵

线性插值有每个单元

)

()

(j j e

j j j e

i x x e len

x x N x x e len

x x N -=-=

-=-=????

???-=e e B e

??

?

????--===?e e e e len B B dx B B K T e e T e e x

x e j i 对于整体叠加

?????

?

?

??

???--=e e e e e K 00020 (K 为一个node×node 阶矩阵) 程序用for 循环给K 赋值

K=zeros(node,node); K1=zeros(node,node); for n=1:(node-1);

K1(n:n+1,n:n+1)=[e,-e;-e,e]; K=K1+K;

K1=zeros(node,node);

End

第三步——力矩阵

体积力

由第一步公式

[]02

=??

????-??????-???

??????Γ

dx x N N u u K x u

N N j i x x j i j i j i

其中第三项为体积力dx

x N N F j i x x j i 21??

????=?

用matlab 中int ()函数对积分进行计算并用for 函数进行循环且赋值,其中

)

()(j j e

j j j e

i x x e len

x x N x x e len x x N -=-=

-=-=,nlen

x len

n x j i =-=)1(

程序如下

Syms x; F1=zeros(1,node);

F11=zeros(1,node); G=zeros(1,2); for n=1:e;

B=[(xj(n)*x^2-x^3)/len,(x^3-xi(n)*x^2)/len]; G=int(B,x,xi(n),xj(n)); G=double(G);

F11(1,n:n+1)=[G(1,1),G(1,2)]; F1=F11+F1;

F11=zeros(1,node); End

边界力

由第一步中公式

[]02

=??

????-??????-?????????Γ

dx x N N

u u K x u

N N j i x x j i j i j i 其中第一项

i

j

x x j i x x j i j i x

u

N N x

u N N x u N N F ==Γ????????-???

?????=????????=2为边界力

因为u (0)处约束力未知为C ,u (1)处边界条件

11

=??=x x

u

各单元之间的边界力叠加的时候均抵消,所以边界力矩阵最终为????

?

???????=102 C F

第四步——解方程

由上面我们可以得到方程

02121=-????

?

???????-F u u u K F n ,代入位移边界条件01=u

先对方程进行置一处理,令F=F2-F1且的第一项置0,刚度矩阵变换成

????

?

????

???=e e K 00020001方程变换为Kd=F , 求逆?????

???????==-n u u F K d 21

第五步——作图

用到两个作图函数plot 、ezplot 分别做原函数图和折线图 折线图

程序如下

x=0:len:1; y=zeros(1,node);

for n=1:node;

y(1,n)=X(1,n); end

plot(x,y,'r');

hold on; (hold on 可将两图画在一个坐标下)

原函数图

程序如下

ezplot('(1/12)*x^4+2/3*x',[0,1]);

附:程序

clear

format long

first_time=cputime;

e=10; %单元数

node=e+1; %结点数

len=1/e; %单元长度

xi=0:len:(1-len); %单元左端点坐标

xj=len:len:1; %单元右端点坐标

K=zeros(node,node); %刚度矩阵(由于是线性插值)K1=zeros(node,node);

for n=1:(node-1);

K1(n:n+1,n:n+1)=[e,-e;-e,e];

K=K1+K;

K1=zeros(node,node);

end

syms x; %F1力矩阵

F1=zeros(1,node);

F11=zeros(1,node);

G=zeros(1,2);

for n=1:e;

B=[(xj(n)*x^2-x^3)/len,(x^3-xi(n)*x^2)/len];

G=int(B,x,xi(n),xj(n));

G=double(G);

F11(1,n:n+1)=[G(1,1),G(1,2)];

F1=F11+F1;

F11=zeros(1,node);

end

F2=zeros(1,node); %F2力矩阵

F2(1,node)=1;

K(2,1)=0; %刚度矩阵置一

K(1,2)=0;

K(1,1)=1;

F=F2-F1; %求合力矩阵

F(1,1)=0;

X=F*inv(K); %求结点位移

X

x=0:len:1; %画折线图

y=zeros(1,node);

for n=1:node;

y(1,n)=X(1,n);

end

plot(x,y,'r');

hold on;

ezplot('(1/12)*x^4+2/3*x',[0,1]); %画原函数图以10个单元为例,图

数据

间断有限元方法

2016年夏季学期研究生课程考核 (读书报告、研究报告) 考核科目:间断有限元方法及其应用 学生所在院(系):理学院数学系 学生所在学科: 学生姓名: 学号 学生类别 考核结果阅卷人

1.引言 间断Galerkin(DG)方法兼有有限元与有限体积方法的特征。如同一般有限元方法那样,DG方法利用单元多项式空间作为近似解和检验函数空间,但是与传统的有限元方法不同,有限元函数空间基函数都是完全间断的分片多项式,各个单元之间的通信也需要像有限体积方法那样通过在单元边界上构造合适的数值流通量来实现。因此DG方法既保持了一般有限元方法和有限体积方法的优点,又克服了各自的不足。该方法可采用局部高阶插值的方法构造基函数,具有灵活处理边界条件以及可显式求解间断问题的能力,克服了一般有限元方法不适于间断问题的缺点,以及有限体积方法必须通过扩大模板进行重构来提高精度的不足。因此间断Galerkin(DG)方法的出现拓展了传统有限元方法的应用范围,改 善了人们对传统有限元方法的认识。 2.DG的基本概念 间断Galerkin方法最早由Reed和Hill在1973年为解决中子输运方程问题而提出。随后众多学者对间断有限元方法提出了改进和发展特别是90年代以来,以Cockbum和舒其望为代表提出了Runge-Kutta间断Galerkin(RKDG)方法,该方法结合TVD(TVD:Total Variation Diminishing) Runge-Kutta 时间离散方法和间断有限元求解一维双曲守恒律方程(组)以至于高维双曲守恒律方程(组),能够适合复杂计算区域和边界条件,可以精确的捕捉激波和接触间断。它不但在光滑区域可以保证高精度,而且在间断区域可以保持数值无振荡,分辨率高,可以证明收敛到熵解。这些优点使得RKDG成为计算流体力学流行的方法之一,并被广泛应用到气象学、海洋学、湍流、电磁学、石油勘探、水动力学等离子物理和图像处理等领域。 同样是在20世纪70年代,内惩罚(IP: Interior Penalty)类方法被独立地提出来求解摘圆和抛物方程。内惩罚方法后来也被归为间断Galerkin方法一种,本文记为内惩罚间断Galerkin(IPDG)方法。内惩罚间断有限元的发展与同时代求解双曲守恒律的间断有限元方法保持相对对立,该方法的侧重点在于选择合适的惩罚项保持格式的稳定性,而不在于如何构造数值流通量。基于DG方法求解双曲守恒律的巨大成功,许多学者考虑运用DG方法的思想求解扩散方程,但如果只是简单地将DG方法推广到扩散方程得到的数值格式并不准确。例如考虑一维热传导

matlab有限元分析实例

MATLAB: MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。 MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室),软件主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。 MATLAB有限元分析与应用:

《MATLAB有限元分析与应用》是2004年4月清华大学出版社出版的图书,作者是卡坦,译者是韩来彬。 内容简介: 《MATLAB有限元分析与应用》特别强调对MATLAB的交互应用,书中的每个示例都以交互的方式求解,使读者很容易就能把MATLAB用于有限分析和应用。另外,《MATLAB有限元分析与应用》还提供了大量免费资源。 《MATLAB有限元分析与应用》采用当今在工程和工程教育方面非常流行的数学软件MATLAB来进行有限元的分析和应用。《MATLAB有限元分析与应用》由简单到复杂,循序渐进地介绍了各种有限元及其分析与应用方法。书中提供了大量取自机械工程、土木工程、航空航天工程和材料科学的示例和习题,具有很高的工程应用价值。

(完整版)国内外主要有限元分析软件比较

有限元分析是对于结构力学分析迅速发展起来的一种现代计算方法。它是50年代首先在连续体力学领域--飞机结构静、动态特性分析中应用的一种有效的数值分析方法,随后很快广泛的应用于求解热传导、电磁场、流体力学等连续性问题。有限元分析软件目前最流行的有:ANSYS、ADINA、ABAQUS、MSC四个比较知名比较大的公司。 常见软件 有限元分析软件目前最流行的有:ANSYS、ADINA、ABAQUS、MSC四个比较知名比较大的公司,其中ADINA、ABAQUS在非线性分析方面有较强的能力目前是业内最认可的两款有限元分析软件,ANSYS、MSC进入中国比较早所以在国内知名度高应用广泛。目前在多物理场耦合方面几大公司都可以做到结构、流体、热的耦合分析,但是除ADINA以外其它三个必须与别的软件搭配进行迭代分析,唯一能做到真正流固耦合的软件只有ADINA。 软件对比 ANSYS是商业化比较早的一个软件,目前公司收购了很多其他软件在旗下。ABAQUS专注结构分析目前没有流体模块。MSC是比较老的一款软件目前更新速度比较慢。ADINA是在同一体系下开发有结构、流体、热分析的一款软件,功能强大但进入中国时间比较晚市场还没有完全铺开。 结构分析能力排名:1、ABAQUS、ADINA、MSC、ANSYS 流体分析能力排名:1、ANSYS、ADINA、MSC、ABAQUS 耦合分析能力排名:1、ADINA、ANSYS、MSC、ABAQUS 性价比排名:最好的是ADINA,其次ABAQUS、再次ANSYS、最后MSC ABAQUS软件与ANSYS软件的对比分析 1.在世界范围内的知名度 两种软件同为国际知名的有限元分析软件,在世界范围内具有各自广泛的用户群。ANSYS 软件在致力于线性分析的用户中具有很好的声誉,它在计算机资源的利用,用户界面开发等方面也做出了较大的贡献。ABAQUS软件则致力于更复杂和深入的工程问题,其强大的非线性分析功能在设计和研究的高端用户群中得到了广泛的认可。 由于ANSYS产品进入中国市场早于ABAQUS,并且在五年前ANSYS的界面是当时最好的界面之一,所以在中国,ANSYS软件在用户数量和市场推广度方面要高于ABAQUS。但随着ABAQUS北京办事处的成立,ABAQUS软件的用户数目和市场占有率正在大幅度和稳步提高,并可望在今后的几年内赶上和超过ANSYS。 2.应用领域

一维有限元法

实习三、一维问题的有限元方法 一)实习问题: 设 ''1 4(0,1) (0)0,(1)x u u xe x u u e e -?-+=-∈??==-??, ~ 1()u x e e u -=--令 将原问题的边界条件齐次化 ''~~ 1 ~~4()(0,1) (0)0,(1)0 x xe x e e x u u u u -?-+=---∈??? ?==, 二)算法描述: 1 ()21,1 01101 ()1,011 101 (),1 011 10(),111 [ ()()()]1[()()()()]1[()()()()]1 [ ()(i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i a p h h q h N d h a p h h q h N N d h a p h h q h N N d h a p h h q h h x x x x x x x x ξξξξξξξξξξξξξξξ------------=+++=- +++=- +++=+++???1 2010 )()()]N N d ξξξξ?1 ()2 1,1 0110 1[ ()()()]i i i i i i i i i a p h h q h N d h x x ξξξξ----=+++? 1 ()1 0101 ()110 ()()()()i i i i i i i i i i b h f h N d b h f h N d x x ξξξ ξξξ ---=+=+?? 1,单元剖分 (1,2,,)i i n e =L 2,i=1 ~ ~ 00A b == 3,计算数值积分:()()()()()()1,11,,1,1,,,,,i i i i i i i i i i i i i i i i a a a a b b -----即得单元上的i i A b 4,将i i A b 迭加到总的~~ A b 中 5,若i<=n,则i=i+1并转到底三步;否则继续下一步 6,根据边界条件调整~ ~ A b (掐头去尾),即得 A 和b 7,解线性方程组Au=b,得u 从而的h u

有限元的MATLAB解法

有限元的MATLAB解法 1.打开MATLAB。 2.输入“pdetool”再回车,会跳出PDE Toolbox的窗口(PDE意为偏微分方程,是partial differential equations的缩写),需要的话可点击Options菜单下Grid命令,打开栅格。 3.完成平面几何模型:在PDE Toolbox的窗口中,点击工具栏下的矩形几何模型进行制作模型,可画矩形R,椭圆E,圆C,然后在Set formula栏进行编辑并(如双脊波导R1+R2+R3改为RI-R2-R3,设定a、b、s/a、d/b的值从而方便下步设定坐标) 用算术运算符将图形对象名称连接起来,若还需要,可进行储存,形成M文件。 4.用左键双击矩形进行坐标设置:将大的矩形left和bottom都设为0,width是矩形波导的X轴的长度,height是矩形波导的y轴的长度,以大的矩形左下角点为原点坐标为参考设置其他矩形坐标。 5.进行边界设置:点击“Boundary”中的“Boundary Mode”,再点击

“Boundary”中的“Specify Boundary Conditions”,选择符合的边界条件,Neumann为诺曼条件,Dirichlet为狄利克雷条件,边界颜色显示为红色。 6.进入PDE模式:点击"PDE"菜单下“PDE Mode”命令,进入PDE 模式,单击“PDE Specification”,设置方程类型,“Elliptic”为椭圆型,“Parabolic”为抛物型,“Hyperbolic”为双曲型,“Eigenmodes”为特征值问题。 7.对模型进行剖分:点击“Mesh”中“Initialize Mesh”进行初次剖分,若要剖的更细,再点击“Refine Mesh”进行网格加密。 8.进行计算:点击“Solve”中“Solve PDE”,解偏微分方程并显示图形解,u值即为Hz或者Ez。 9.单击“Plot”菜单下“Parameters”选项,打开“Plot Selection”对话框。选中Color,Height(3-D plot)和Show mesh三项,然后单击“Plot”按钮,显示三维图形解。 10.如果要画等值线图和矢量场图,单击“Plot”菜单下“Parameters”选项,打开“Plot Selection”对话框。选中Contour和Arrows两项,然后单击Plot按钮,可显示解的等值线图和矢量场图。 11.将计算结果条件和边界导入MATLAB中:点击“Export Solution”,再点击“Mesh”中“Export Mesh”。

Cahn-Hilliard方程的隐显BDF2方法

Cahn-Hilliard 方程的隐显BDF2方法 饶 婷, 王晚生 (长沙理工大学 数学与统计学院, 长沙 410114) 摘 要: Cahn-Hilliard 方程作为一类重要的四阶扩散方程已成为偏微分方程研究领域一个倍受关注的问题. 本文考虑带有Neumann 边界的Cahn-Hilliard 方程的隐显BDF2半离散格式和全离散格式, 并证明了该格式是质量守恒的. 关键词: Cahn-Hilliard 方程; 质量守恒; 隐显BDF2格式; 全离散 中图分类号: O241.8 文献标识码: A 文章编号: 1672-5298(2018)02-0009-03 IMEX-BDF2 Method for Cahn-Hilliard Equation RAO Ting, WANG Wansheng (School of Mathematics and Computational Science, Changsha University of Science and Technology, Changsha 410114, China) Abstract : The Cahn-Hilliard equation, as an important class of fourth-order diffusion equations, has become a major concern in the field of partial differential equations. In this paper, the Cahn-Hilliard equation with Neumann boundary is considered to be discretized by implicit-explicit BDF2 method. It is proved that the scheme preserves the property of mass conservation. Key words : Cahn-Hilliard equation; mass conservation; implicit-Explicit BDF2; full-discrete schemes Cahn-Hilliard 方程是一个描述两种金属物质混合时随温度变化发生亚稳相分离现象的四阶非线性抛物方程. 最初是由 Cahn 和Hilliard [1]于1958年在研究热力学中两种物质(如合金、聚合物等等)之间相互扩散现象时提出的. 后来用于描述生物种群竞争与排斥现象, 固体表面上微滴的扩散等许多扩散现象的研究中也提出了同样的数学模型. 近些年来, 越来越多的学者关注Chan-Hilliard 方程, 对Chan-Hilliard 方程的解的性质做了大量的研究工作, 获得了比较丰硕的成果. 例如, 在1996年Chen [12]等人得到了Chan-Hilliard 方程解的摄动性质; Carlen 和Bricmont [8,9]分别研究了Chan-Hilliard 方程解的稳定性质; Chen 和Zheng [10,11]等人在研究Chan-Hilliard 方程解的渐进性质方面做了大量的工作, 等等. 关于Chan-Hilliard 方程的数值解法方面的研究也越来越受到重视. 例如, Elliott 和Larsson [4]在1992 年考虑Cahn-Hilliard 方程的有限元方法, 并给出了有限元逼近的误差估计. 1998年, Chen 和Shen [5]提出Cahn-Hilliard 方程的谱方法格式, 并证明了该格式独有的高精度与数值稳定性. 2008年, He 和Liu [13]考虑 Cahn-Hilliard 方程的Galerkin 谱方法格式, 并证明了该格式的稳定性和收敛性. Feng 和Karakashian [15,16]等人在2007年提出采用局部间断Galerkin 方法(LDG)和全离散动态网格的间断Galerkin 方法研究Cahn-Hilliard 方程. 2016年, Wang 、Chen 和 Zhou [1721],采用混合有限元方法的后处理技术求解Cahn-Hilliard 方程, 且数值解继承了原有的质量守恒性质和能量递减性质, 最后还获得了相应的误差估计 以及负范数的误差估计等等. 本文在上述研究的基础上, 采用隐显BDF2方法研究Cahn-Hilliard 方程, 并讨论该格式是否保留了方程原有的质量守恒性质. 1问题和记号 首先考虑Cahn-Hilliard 模型方程: 收稿日期: 2018-03-24 基金项目: 国家自然科学基金项目(11771060, 11371074) 作者简介: 饶 婷(1994? ), 女, 湖南常德人, 硕士研究生. 主要研究方向: 微分方程数值解 通讯作者: 王晚生(1977? ), 男, 湖南株洲人, 教授. 主要研究方向: 微分方程数值解 第31卷 第2期 湖南理工学院学报(自然科学版) Vol.31No.2 2018年6月 Journal of Hunan Institute of Science and Technology (Natural Sciences) Jun. 2018

基于Matlab语言的按平面三角形单元划分的结构有限元程序设计模板

基于Matlab语言的按平面三角形单元划分的结构有限元程序设计 专业:建筑与土木工程 班级:建工研12-2 姓名:韩志强 学号: 471220580

基于Matlab语言的按平面三角形单元划分 结构有限元程序设计 一、有限单元发及Matlab语言概述 1. 有限单元法 随着现代工业、生产技术的发展,不断要求设计高质量、高水平的大型、复杂和精密的机械及工程结构。为此目的,人们必须预先通过有效的计算手段,确切的预测即将诞生的机械和工程结构,在未来工作时所发生的应力、应变和位移因此,需要寻求一种简单而又精确的数值分析方法。有限单元法正是适应这种要求而产生和发展起来的一种十分有效的数值计算方法。 有限元法把一个复杂的结构分解成相对简单的“单元”,各单元之间通过结点相互连接。单元内的物理量由单元结点上的物理量按一定的假设内插得到,这样就把一个复杂结构从无限多个自由度简化为有限个单元组成的结构。我们只要分析每个单元的力学特性,然后按照有限元法的规则把这些单元“拼装”成整体,就能够得到整体结构的力学特性。 有限单元法基本步骤如下: (1)结构离散:结构离散就是建立结构的有限元模型,又称为网格划分或单元划分,即将结构离散为由有限个单元组成的有限元模型。在该步骤中,需要根据结构的几何特性、载荷情况等确定单元体内任意一点的位移插值函数。 (2)单元分析:根据弹性力学的几何方程以及物理方程确定单元的刚度矩阵。 (3)整体分析:把各个单元按原来的结构重新连接起来,并在单元刚度矩阵的基础上确定结构的总刚度矩阵,形成如下式所示的整体有限元线性方程: {}[]{}δ F=① K 式中,{}F是载荷矩阵,[]K是整体结构的刚度矩阵,{}δ是节点位移矩阵。 (4)载荷移置:根据静力等效原理,将载荷移置到相应的节点上,形成节点载荷矩阵。 (5)边界条件处理:对式①所示的有限元线性方程进行边界条件处理。 (6)求解线性方程:求解式①所示的有限元线性方程,得到节点的位移。在该步骤中,若有限元模型的节点越多,则线性方程的数量就越多,随之有限元分析的计算量也将越大。 (7)求解单元应力及应变根据求出的节点位移求解单元的应力和应变。

深入浅出的讲清楚有限元法

“有限元法基础及应用”补充讲义(一) 顾克秋 (2005年3月) 一、引子——弹簧单元与弹簧系统 目标:掌握离散结构直接刚度法分析的原理和形式。了解有限元位移法列式的形 式和基本概念。 1、典型弹簧单元分析 写成矩阵符号形式: ? =k F j i i j j ku ku u u k F f +-=-==)(? ?? ?????????--=??????j i j i u u k k k k f f 写成矩阵形式: kd f =(1-1) (1-2) (1-3) 1-2

式(1-2)、(1-3)为弹簧单元的刚度方程,反映了单元特性:节点力与节点位移之间的关系。式中: (注意:单元节点力是节点对单元的作用力) f d k ——单元节点力列阵 ——单元节点位移列阵 ——弹簧单元的刚度矩阵 弹簧单元刚度方程讨论: 1) 有何特点? 对称、奇异、主对角元素恒正 2) 中元素代表什么含义? 刚度系数大小等于弹簧刚度;每列元素代表一端固定、另一端产生单位 位移时加在弹簧单元上的节点力。 3)上面单元刚度方程可以求解吗?为什么? 不可以。刚度方程仅仅表征一个典型单元的弹性特性,单元水平上无法确定单元节点位移。只有把系统中所有单元特性集成后,在系统水平上才可能求出所有未知位移和反力。单元水平上,若已知单元的节点位移,可由刚 度方程求出所有单元节点力分量。若节点力已知,单元节点位移不能确定, 单元可作刚体运动(小位移) 。这也是单元刚度矩阵奇异性的物理解释。 k k 2、弹簧系统整体分析原理

以右图的一个弹簧系统为例,研究如何由单元特性集成系统特性并建立对系统进行求解的控制方程。 由前面得到的弹簧单元的刚度方程公式(1-2),分别写出2个弹簧单元的特性方程如下: 单元1 单元2 (注:右端节点力分量的下标1,2为单元节点的局部编号,上标是单元号) 下面按两个方法完成系统特性的装配和控制方程的建立。并在特定条件下求解。 1)由节点平衡方程导出: 系统处于平衡时,考虑各节点(1,2,3节点)的平衡条件: 节点受到的外载荷与节点受到与其连接的所有单元对其作用力(单元节点力 的反作用力)之和等于零。因此有下列(节点)平衡方程(组): 把单元特性(1-4),(1-5)代入(1-6)得到: 写成矩阵形式: 2 2 32 11 2211 1f F f f F f F =+==(1-4) (1-5) (1-6) 3 2223322211122 1111)(u k u k F u k u k k u k F u k u k F +-=-++-=-=(1-7) (1-8) 图 1-3

有限元并行EBE方法及应用

第24卷第17期岩石力学与工程学报V01.24 No.172005年9月 Chinese Journalo, .fRockMechanicsand EngineeringSept. 2005 有限元并行EBE方法及应用 刘耀儒,周维垣,杨强 (清华大学水利水电工程系,北京 100084) 摘要。结构开裂和破坏过程的三维有限元分析,对大规模数值计算提出了很高的要求。基于Jacobi预处理共轭梯 度法,推导了适用于分布存储并行机的有限元并行方法。在数据交换方面,采用一种按需收集、按需散发的数据 交换技术,使得该方法适合于分布内存的并行机,可极大降低数据交换量,提高并行计算效率。同时,可避免形 成整体刚度矩阵,显著减少内存需求,并可自动实现计算任务的分配。编制了有限元并行计算程序,采用悬臂梁算例对其进行了验证,并和普通有限元方法进行了对比,然后应用于拱坝的有限元数值分析和基于网格加密技术的四点弯曲梁开裂过程的数值模拟中。指出该方法和区域分解方法的并行实现在本质上是相同的,但EBE方法更具有工程实用意义。计算结果表明,对复杂的三维结构,该方法是一种很有效的并行计算方法。 关键词I岩土力学;有限元法;element-by—element;并行计算;拱坝;开裂中圈分类号:TU 443 文献标识码:A文章编号:1000—6915(2005)17—3023—06 PARALLELFINITE ELEMENTANALYSISBASEDON ELEMENT-BY.ELEMENTMETHODANDITSAPPLICATION LIUYao—ru,ZHOU Wei—yuan,YANGQiang (DepartmentofHydraulicandHydropowerEngineering,TsinghuaUniversity,Beijing 100084,China) Abstract:In3Dfiniteelementanalysisofstructurefailureprocess,largeSCalenumericalanalysishasincreasedthe demandforhigh—performancecomputing.Theelement—by—element(EBE)methodfordistributedmemory processors(DMP)isformulated based on theJacobi—preconditionedconjugategradient(J—PCG)method.For data exchange,ascheme whichonlygathersandscattersnecessarydataisadvisedtomakeEBEmethodavailablefor distributed—memoryparallelcomputers.Inthisway,itwilldramaticallyreducedataexchangeandconsequentlyimproveefficiencyofparallelcomputing.Atthe salIle time,the formation ofglobalstiffnessmatrix Can beavoided; greatlyreducingtherequirementforthestorage,andtheassignmentofjobsCanbe doneautomatically.A3Dparallel finiteelementcodeisdevelopedusing MPICHandC/C++language.Numerical tests on cantileverbeamindicatethat theyarecorrect.Thenitisappfied to thefiniteelementanalysisofXiluoduarch damprojectandnumericalanalysis offractureprocessoffour-pointsheartestbased on鲥drefiningtechnology.Itisthesame in essence forEBE methodanddomaindecompositionintask allocation.Theresultsshowthatfortheanalysisof the3Dirregularand complicated structures likearch dams,thefiniteelementEBEmethodiseffectiveandreliable. Keywords:rockandsoilmechanics;finiteelementmethod:element-by—element;parallelcomputing;archdarn; cracking 1引言 结构稳定和破坏过程的三维有限元分析,需要 加密网格和采用精细的荷载步长,对高性能并行计 算提出了很高的要求,其关键问题是计算任务的分配和大内存需求问题。对有限元并行计算而言,传统方法是采用方程组求解并行和区域分解方法。方 收藕日期I2005—02—24;修旬日期l 2005—05—08 基金项目I国家重点基础研究发展规划(973)项目(2002CB412708):中国博士后科学基金资助项目 作者■介t刘耀儒(1974一)。男,博士,1998年毕业于清华大学水利水电工程系水工结构专业,主要从事并行计算、拱坝和岩石边坡静动力稳定方面的教学与研究工作。E-mail:liuyaoru@tsinghua.edu.ca。

Matlab-PDE工具箱有限元法求解偏微分方程

在科学技术各领域中,有很多问题都可以归结为偏微分方程问题。在物理专业的力学、热学、电学、光学、近代物理课程中都可遇见偏微分方程。 偏微分方程,再加上边界条件、初始条件构成的数学模型,只有在很特殊情况下才可求得解析解。随着计算机技术的发展,采用数值计算方法,可以得到其数值解。 偏微分方程基本形式 而以上的偏微分方程都能利用PDE工具箱求解。 PDE工具箱 PDE工具箱的使用步骤体现了有限元法求解问题的基本思路,包括如下基本步骤: 1) 建立几何模型 2) 定义边界条件 3) 定义PDE类型和PDE系数 4) 三角形网格划分

5) 有限元求解 6) 解的图形表达 以上步骤充分体现在PDE工具箱的菜单栏和工具栏顺序上,如下 具体实现如下。 打开工具箱 输入pdetool可以打开偏微分方程求解工具箱,如下 首先需要选择应用模式,工具箱根据实际问题的不同提供了很多应用模式,用户可以基于适

当的模式进行建模和分析。 在Options菜单的Application菜单项下可以做选择,如下 或者直接在工具栏上选择,如下 列表框中各应用模式的意义为: ① Generic Scalar:一般标量模式(为默认选项)。 ② Generic System:一般系统模式。 ③ Structural Mech.,Plane Stress:结构力学平面应力。 ④ Structural Mech.,Plane Strain:结构力学平面应变。

⑤ Electrostatics:静电学。 ⑥ Magnetostatics:电磁学。 ⑦ Ac Power Electromagnetics:交流电电磁学。 ⑧ Conductive Media DC:直流导电介质。 ⑨ Heat Tranfer:热传导。 ⑩ Diffusion:扩散。 可以根据自己的具体问题做相应的选择,这里要求解偏微分方程,故使用默认值。此外,对于其他具体的工程应用模式,此工具箱已经发展到了Comsol Multiphysics软件,它提供了更强大的建模、求解功能。 另外,可以在菜单Options下做一些全局的设置,如下 l Grid:显示网格 l Grid Spacing…:控制网格的显示位置 l Snap:建模时捕捉网格节点,建模时可以打开 l Axes Limits…:设置坐标系围 l Axes Equal:同Matlab的命令axes equal命令 建立几何模型 使用菜单Draw的命令或使用工具箱命令可以实现简单几何模型的建立,如下 各项代表的意义分别为

有限元方法讲义

第1讲抛物问题有限元方法 1、椭圆问题有限元方法 考虑椭圆问题边值问题: (1) 问题(1)的变分形式:求使满足 (2) 的性质,广义解的正则性结果。 区域的剖分,矩形剖分,三角剖分,剖分规则,正则剖分条件,拟一致剖分条件。 剖分区域上分片次多项式构成的有限元空间。 的逼近性质,逆性质: 这里,为的插值逼近。 问题(2)的有限元近似:求使满足 (3) (3)的解唯一存在,且满足。 (3)的解所满足的矩阵方程(离散方程组)形式: (4) 刚度矩阵的由单元刚度矩阵组装而成。 模误差分析:由(2)-(3)可得 (5) 由(5)可首先得到 则得到 (6) -模误差分析 设满足 用与此方程做内积,由(5)式和插值逼近性质得到 再利用模误差估计结果,得到 (7) 最优阶误差估计和超收敛估计概念。 当与时间相关时(为抛物问题准备),由(5)式得 (8) 利用(7),类似分析可得 (9) 2、抛物问题半离散有限元方法 考虑抛物型方程初边值问题:

(10) (10)的变分形式:求使满足 (11) (11)的半离散有限元近似:求使满足 (12) 令,代入(12),依次取可导出常微分方程组: (13) 其中为质量矩阵,K为刚度矩阵。。 求解常微分方程组(13),得到代回的表达式,即得半离散有限元解。 定理1.问题(12)的解唯一存在且满足稳定性估计: (14) 证明:在(12)中取得到 整理为(注意是正定的) 对此式积分,证毕。 误差分析。引进解的椭圆投影逼近:满足 (15) 根据椭圆问题的有限元结果可知 (16) 分解误差: 的估计由(16)式给出,只须估计。 由(11),(12)和(15)知,满足 取,类似稳定性论证可得 (17) 可取为的投影,插值逼近等。 由(17)式,三角不等式和(16),得到 (18) 3、抛物问题全离散有限元近似 剖分时间区间:。 引进差分算子: 规定,当为连续函数时,,则有 由此得到 (19) (20) 定义问题(11)的全离散向后Euler有限元近似:求,使满足 (21) 将代入(21)可导出全离散方程组 (22)

有限元钢架结构分析手算matlabansys模拟

有限元大作业——钢架结构分析 选题人: 日期:2016年6月2日

目录: 第一章:问题重述 (2) 一、题目内容: (3) 二、题目要求: (3) 第二章:有限元法手工求解 (3) 一、平面两单元离散化 (4) 二、单元分析 (4) 三、单元组装 (6) 四、边界条件引入及组装总体方程 (7) 五、求解整体刚度方程,计算节点2的位移和转角 (7) 六、求节点1、3支撑反力 (8) 七、设定数据,求解结果 (8) 八、绘制轴力图、弯矩图、剪力图 (9) 第三章、matlab编程求解: (11) 一、总体流程图绘制: (11) 二、输入数据: (12) 三、计算单元刚度矩阵: (12) 四、建立总体刚度矩阵: (13) 五、计算未约束点位移: (13) 六、计算支反力: (13) 七、输出数据: (13) 八、编程: (13) 第四章有限元求解 (13) 一、预处理 (13) 二、模型建立: (15) 二、分析计算 (17) 三、求解结果 (18) 四、绘制图像 (19) 第五章结果比较 (22) 第六章心得体会 (22) 第七章附录 (23) 一、matlab程序 (24) 第一章:问题重述

一、题目内容: 图示平面钢架结构 图题目内容 二、题目要求: (1)采用平面梁单元进行有限元法手工求解,要求写出完整的求解步骤,包括: a)离散化:单元编号、节点编号; b)单元分析:单元刚度矩阵,单元节点等效载荷向量; c)单元组长:总体刚度矩阵,总体位移向量,总体节点等效载荷; d)边界条件的引入及总体刚度方程的求解; e)B点的位移,A、C处支撑反力,并绘制该结构的弯矩图、剪力图和轴力图。 (2)编制通用平面钢架分析有限元Matlab程序,并计算盖提,与手工结果进行比较; (3)利用Ansys求解,表格列出B点的位移,A、C处支反力,绘制弯矩图、剪力图和轴力图,并与手算和Matlab程序计算结果比较。 (4)攥写报告,利用A4纸打印; (5)心得体会,并简要说明各成员主要负责完成的工作。 第二章:有限元法手工求解

有限元一维杆问题解法及程序

解: 第一步——离散 对于一维杆问题,我们先离散成单元,对每个单元作如下计算 [][ ][][ ][]00,,,,0 0)(22 ,,,,2222222=?? ????-??????-?????????=?? ????-?? ? ?????????-?????????=-????-???=-??=-???? ? ?????ΓΓ Γdx x N N u u K x u N N dx x N N u u dx u u N N N N u u x u N N u u dx ux dx x u x u x u u dx ux dx x u u dx x x u u j i x x j i j i j i x x j i j i j i j i x x j i j i j i x x x x x x x x x x j i j i j i j i j i j i j i j i δδδδδδδδδδδδ 其中杆被平均离散为e 个单元(有限元不一定要均分),于是有node=e+1个结点,每个单元长度len=1/e,于是第n 个单元的左端点坐标len n x i )1(-=,右端点坐标nlen x j =; 第二步——刚度矩阵 线性插值有每个单元 ) () (j j e j j j e i x x e len x x N x x e len x x N -=-= -=-=???? ???-=e e B e ?? ? ????--===?e e e e len B B dx B B K T e e T e e x x e j i 对于整体叠加 ????? ? ? ?? ???--=e e e e e K 00020 (K 为一个node×node 阶矩阵) 程序用for 循环给K 赋值 K=zeros(node,node); K1=zeros(node,node); for n=1:(node-1); K1(n:n+1,n:n+1)=[e,-e;-e,e]; K=K1+K; K1=zeros(node,node);

一维有限元法解常微分方程

()()()''2 1 1 '00Fu=-u +u=sin x 1+=f x y(0)0,(1)0F Fu=0Fu vdx=0v ,v(0)=v(1)=0v (x y C ππ?∈ ?? ==?? ??∈? 一维问题的有限元法一.算法构思 考虑下面的两点边值问题 ,(0,1) 设是一个微分算子,则 ,即,且)连续 则把问题中的微分方程化为积分方程,得 ()1 1 11 1100 10011u 'v '+uvdx=fvdx ,u'v'+uvdx, (f,v)=fvdx u C a(u v)=(f,v), v u 1=x ,h=. n n n u v C C x b δ-=∈?∈∈<=???? 令 a 则问题就是求,使得,对于一般的,其范围很广泛,但样条函数理论给我们提供了解决问题的有力工具。 对[0,1]进行等分: 0

一维梁的MATLAB有限元法分析

一维梁的M A T L A B有限元法分析 问题如下: 梁A B在A和B两端固定,中间点表示为C,在中间区域承受均匀分布的载荷q,如图所示。梁A B的抗弯刚度为E I。 1,使用R i t z法确定点C处的位移和弯矩,并讨论随着包含更多基本函数的准确性。提示:根据偏转曲线的形状,可以选择基函数的形式,其中系数,并且应该由点A或B处的边界条件确定。 2,采用一维有限元法解决问题,并讨论网格越细时的准确性。提示:使用1-D梁单元。 1R i t z法 一维欧拉-伯努利梁的势能如下: 设选择基函数,容易看出基函数满足边界条件 设, 代入势能表达式得到

由于三角函数是正交函数系,所以得到 令q=10N/m m,E=200000M P a,I=10000,L=200m m 在M A T L A B中计算A k前十项 得到 A= -0.008400754770396-0.000320811945459-0.000049922673823 -0.000020050746591-0.000009258470170-0.000003960641302 -0.000001943426801-0.000001253171662-0.000000837688763 -0.000000513299113 计算C点位移,使用1-10个试函数结果如下: 0.0084007547703960.008400754770396 0.008500600118041 0.0085006001180410.008519117058380 0.008519117058380 0.0085230039119830.008523003911983 0.0085246792895100.008524679289510 计算C点弯矩,,使用1-10个试函数结果如下: 0.8291212625436840.7024697829907620.746814316705690 0.7151514468174600.7379958063005830.723923419683592 0.7333220380018130.7254063205297550.732103122461494 0.727037063279377 可以看到,位移收敛是很快的,弯矩收敛速度慢于位移。 M A T L A B代码如下 %量纲为mm,N,k g %定义弹性模量泊松比,定义截面惯性矩 E=200000;v v v v v=0.3;I=10000; %定义梁的长度

利用Matlab进行有限元分析结果的可视化显示

利用Matlab进行有限单元法计算结果的可视化显示 摘要 本文用一个简单的例子给出了用Matlab进行有限单元法计算结果可视化显示的方法。采用Matlab进行可视化显示,可以在获得较好的可视化显示效果的基础上,节省科研人员的大量时间和精力。 关键字:有限元,后处理,可视化,Matlab 有限单元法是工程数值分析的有力工具,可以应用于固体力学、结构分析、温度场模拟等诸多领域。有限单元法一般可以分为前处理、计算以及后处理三部分,市场上现有的有限元商业软件都提供了这三部分功能模块。但有时,由于各种原因,科研人员必须自行编写有限元分析程序,作者通过自身实践,认为Matlab可以较好的进行有限单元法计算结果的可视化显示。 Matlab由美国MathWorks公司开发,历经二十多年的发展,现已成为国际公认的优秀科技应用软件之一,在机械、航天、医药等多个科研、工程领域有着广泛的应用。Matlab 本身具有丰富的可视化显示手段,但遗憾的是,目前对于Matlab的应用研究主要集中在其强大的科学计算能力方面,而对科学计算结果的可视化显示,尤其对由空间点云构成的形体的可视化显示研究涉及甚少,作者通过查阅相关资料,以及探索和实践,成功地进行了三维形体有限元分析结果的可视化显示。 1.准备数据 针对Matlab对空间点云构成形体的数据格式要求,必须重新编排有限元分析中前处理部分以及计算部分所获得的数据。下面以空间单位立方体为例,介绍Matlab对数据文件格式的要求。 若有空间单位正方体,将其划分为四面体网格,图1为该正方体的节点编号及其网格拓朴结构,表1为节点的坐标值以及节点处的有限元计算结果(此处为温度)。 表1:单位正方体顶点坐标及其温度 图1:空间立方体顶点编号及其网格拓朴结构

相关文档
最新文档