matlab有限域上的运算

matlab有限域上的运算
matlab有限域上的运算

1 有限域基础知识

1.1 有限域(Galois域)的构造

令p为一个素数. 则对任意的一个正整数n,存在一个特征为p,元素个数为p n的有限域GF(p n).

注:任意一个有限域,其元素的个数一定为p n,其中p为一个素数(有限域的特征),n为一个正整数.

例1(有限域GF(p))令p为一个素数,集合

GF(p)=Z p={0,1,2,…,p?1}.

在GF(p)上定义加法⊕和乘法⊙分别为模p加法和模p乘法,即任意的a,b∈GF(p),

a⊕b=(a+b)mod p, a⊙b=(a?b)mod p

为一个有p个元素的有限域,其中零元素为0,单位元为1.

令a为GF(p)中的一个非零元素. 由于gcd(a,p)=1,因此,存在整数b,c,使得ab+pc=1. 由此得到a的逆元为a?1=b mod p.

域GF(p)称为一个素域(prime field).

例注1:给定a和p,例1中的等式ab+pc=1可以通过扩展的欧几里得除法得到,从而求得GF(p)中任意非零元素的逆元.

例2(有限域GF(p n))从GF(p)出发,对任意正整数n,n≥2,我们可以构造元素元素个数为p n的有限域GF(p n)如下:

令g(x)为一个GF(p)上次数为n的不可约多项式,集合

GF(p n)=GF(p)[x]/?g(x)?={a0+a1x+a2x2+?+a n?1x n?1 | a i∈

GF(p),0≤i≤n?1}

在GF(p n)上定义加法⊕和乘法⊙分别为模g(x)加法和模g(x)乘法,即任意的a(x),b(x)∈GF(p n),

a(x)⊕b(x)=a(x)+b(x), a(x)⊙b(x)=(a(x)?b(x))mod g(x)

为一个有p n个元素,特征为p的有限域,其中零元素为GF(p)中的0,单位元为GF(p)中的1.

令a(x)为GF(p n)中的一个非零元素. 由于gcd(a(x),g(x))=1,因此,存在GF(p)上的多项式b(x),c(x),使得a(x)b(x)+g(x)c(x)=1. 由此得到

a(x)的逆元为a?1(x)=b(x)mod g(x).

域GF(p n)称为GF(p)的(n次)扩域(extension field),而GF(p)称为GF(p n)的子域(subfield).

例注2.1:给定GF(p)上的多项式a(x)和g(x),例2中的等式

a(x)b(x)+g(x)c(x)=1可以通过扩展的欧几里得除法得到,从而求得GF(p n)中任意非零元素的逆元.

例注2.2:设GF(q)是一个含有q个元素的有限域. 对任意正整数n, GF(q)

上的n次不可约多项式一定存在. 更进一步,GF(q)上首项系数为1的n 次不可约多项式的个数为

N q(n)=1n∑d|nμ(nd)q d=1n∑d|nμ(d)q n/d

其中μ为Moebius函数,定义为

μ(m)=???1(?1)k0如果m=1如果m=p1p2?p k,其中p1,p2,…,p k为互不相

同的素数其它

1.2 有限域的性质

令GF(q)是一个含有q个元素的有限域,F?q=GF(q)?{0}为有限域GF(q)中所有非零元素构成的集合. 则在乘法之下F?q是一个有限循环群. 循环群

F?q的一个生成元称为有限域GF(q)的一个本原元.

若α∈GF(q)为一个本原元,则

GF(q)={0,1,α,α2,…,αq?2}

并且αq?1=1,即αq=α.

定义:设GF(q)是一个含有q个元素的有限域,GF(p)是GF(q)的一个含有p个元素的子域(p不一定为素数),α∈GF(q). 则GF(p)上以α为

根,首项系数为1,并且次数最低的多项式称为α在GF(p)上的极小多项式(minimal polynomial of α over GF(p)).

特别地,若α∈GF(q)为GF(q)的一个本原元,则α在GF(p)上的极小多项式称为GF(p)上的一个本原多项式(primitive polynomial for GF(q) over GF(p)).

定义注1:对任意的α∈GF(q),α在GF(p)上的极小多项式存在并且唯一,并且α在GF(p)上的极小多项式为GF(p)上的一个不可约多项式.

定义注2:设α∈GF(q),则α和αp在GF(p)上具有相同的极小多项式. 更进一步,集合

B(α)={α,αp,αp2,αp3,…,αp i,…}

中的元素具有相同的极小多项式. 设q=p n,则αp n=α. 因此,集合B(α)中互不相同的元素的个数(记为r)不超过n. 可以证明,α为GF(q)的一个本原元当且仅当r=n.

定理:设GF(q)是一个含有q个元素的有限域,GF(p)是GF(q)的一个含有p个元素的子域. 设α∈GF(q),r为满足αp r=α的最小正整数. 则α在GF(p)上的极小多项式g(x)是一个r次不可约多项式,并且

B(α)={α,αp,αp2,…,αp r?1}

中的元素为g(x)在GF(q)上的所有不同的根,即

g(x)=(x?α)(x?αp)(x?αp2)?(x?αp r?1).

注:r的计算方法如下:设α在F?q中的阶为k. 集合

Z?k={m | 0≤m≤k?1,gcd(m,k)=1}

在模k乘法运算下是一个含有φ(k)个元素的有限群(其中φ为欧拉(Euler)函数). 则r等于p mod k在Z?k中的阶.

推论:设GF(q)是一个含有q个元素的有限域,GF(p)是GF(q)的一个含有p个元素的子域. 设|GF(q)|=p n,即q=p n. 设α∈GF(q)为GF(q)的一个本原元,则α在GF(p)上的极小多项式g(x)的次数为n,并且

g(x)=(x?α)(x?αp)(x?αp2)?(x?αp n?1).

更进一步,α,αp,αp2,…,αp n?1均为GF(q)的本原元.

注:设GF(p)是一个含有p个元素的有限域,n是任意一个正整数,则GF(p)上的n次本原多项式一定存在. 更进一步,GF(p)上的首项系数为1的n 次本原多项式的个数为φ(p n?1)n,其中φ为欧拉函数.

例3考虑二元域GF(2)上的不可约多项式p(α)=α3+α+1,构造有限域GF(23)=GF(2)[α]/?p(α)?={0,1,α,α+1,α2,α2+1,α2+α,α2+α+1}.

容易验证,α,α2,α3,α4,α5,α6都是GF(23)的本原元. GF(2)上的首项系数为1的3次本原多项式有两个,分别为

(i) α,α2,α4在GF(2)上的极小多项式

g(x)=(x+α)(x+α2)(x+α4)=x3+x+1

(ii) α3,α5,α6在GF(2)上的极小多项式

g(x)=x3+x2+1

有限域GF(p)上的本原多项式一定是GF(p)上的不可约多项式;但是,GF(p)上的不可约多项式不一定是GF(p)上的本原多项式.

定理:设GF(q)是一个含有q个元素的有限域,GF(p)是GF(q)的一个含有p个元素的子域,g(x)是GF(p)上的一个不可约多项式. 则g(x)为GF(p)上的本原多项式当且仅当g(x)在GF(q)上的根都是GF(q)的本原元.

下面例子说明不可约多项式不一定是本原多项式.

例4考虑二元域GF(2)上的不可约多项式p(x)=x4+x3+x2+x+1,构造有限域

GF(24)=GF(2)[x]/?p(x)?={a+bx+cx2+dx3 | a,b,c,d∈GF(2)}.

显然,x∈GF(24). 由于x5=1,即x的阶为5,因此,x不是GF(24)的本原元. 于是,p(x)不是GF(2)上的本原多项式. 另外,可以验证x+1是GF(24)的本原元.

2 Matlab 中的有限域计算函数

Matlab 中自带的有限域的计算是在GF(2m)上进行的,即在二元域GF(2)的扩域中进行计算,其中1≤m≤16.

由“1.1 有限域的构造” 的“例2” 可知,我们只需先找到一个GF(2)上

的m次不可约多项式g(x),得到集合GF(2)[x]/?g(x)?,然后定义其上的加法和乘法分别为模g(x)加法和模g(x)乘法,即得到有限域GF(2m).

然而,这样得到的有限域GF(2m)中,元素x未必是本原元,这将给后面的

(乘法)运算带来很多麻烦. 因此,在不可约多项式g(x)的挑选上,我们最好选择一个本原多项式. 这其实就是 Matlab 中的做法.

Matlab 中GF(2m)的元素:在 Matlab 中GF(2m):=GF(2)[D]/?p(D)?,

其中p(D)为一个GF(2)上的m次本原多项式.

GF(2m)={a m?1D m?1+a m?2D m?2+?+a1D+a0, | a i∈GF(2),0≤i≤m?1}

因此,每个GF(2m)中的元素本质上是一个次数小于m的多项式,每个元素和多项式之间有“1-1”对应关系. 例如,取m=3和本原多项式

p(D)=D3+D+1,则我们得到有限域GF(23),其中的元素和多项式之间的对应关系如下:

GF(23)GF(2)[D]/?p(D)?二进制

0 0000

1 1001

2 D010

3 D+1011

4 D2100

5 D2+1101

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有限元分析与应用》由简单到复杂,循序渐进地介绍了各种有限元及其分析与应用方法。书中提供了大量取自机械工程、土木工程、航空航天工程和材料科学的示例和习题,具有很高的工程应用价值。

有限元的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”。

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

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

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

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的命令或使用工具箱命令可以实现简单几何模型的建立,如下 各项代表的意义分别为

有限元钢架结构分析手算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)心得体会,并简要说明各成员主要负责完成的工作。 第二章:有限元法手工求解

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

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

有限元ANSYS MATLAB 应用

有限元在ANSYS和MATLAB中的应用 工程学院 摘要: 文章简述了有限元分析的基本理论及其求解问题的基本步骤, 介绍了ANSYS 软件的应用,介绍了Matlab 语言特点,给出了Matlab 环境下实现有限元的步骤。说明如何使用Matlab 进行有限元分析,使用该方法进行分析具有精度高、简便、快速及可视化等诸多优点,具有较强的使用价值。 关键词: 有限元分析; ANSYS 软件; 用Matlab 进行有限元分析的优点 1 有限元分析基本理论 有限元分析的基本概念是用较简单的问题代替复杂问题后再求解。它将求解域看成是由许多称为有限元的小的互连子域组成, 对每一单元假定一个合适的近似解, 然后推导求解这个域的满足条件, 从而得到问题的解。这个解不是准确解,而是近似解, 因为实际问题被较简单的问题所代替。由于大多数实际问题难以得到准确解, 而有限元不仅计算精度高, 而且能适应各种复杂形状, 因而成为行之有效的工程分析手段。有限元是那些集合在一起能够表示实际连续域的离散单元[1]。有限元的概念早在几个世纪前就已产生并得到了应用, 例如用多边形逼近圆来求得圆的周长, 但 作为一种方法而被提出, 则是最近的事。有限元法最初被称为矩阵近似方法, 应用于航空器的结构强度计算, 并由于其方便性、实用性和有效性而引起从事力学研究的科学家的浓厚兴趣。经过短短数十年的努力, 随着计算机技术的快速发展和普及, 有限元方法迅速从结构工程强度分析计算扩展到几乎所有的科学技术领域, 成为一种丰富多彩、应用广泛并且实用高效的数值分析方法。有限元方法与其他求解边值问题近似方法的根本区别在于它的近似性仅限于相对小的子域中。 1.1有限元求解问题的分析过程 第一步, 问题及求解域定义: 根据实际问题近似确定求解域的物理性质和几何区域。 第二步, 求解域离散化: 将求解域近似为具有不同有限大小和形状且彼此相连的有限个单元组成的离散域, 习惯上称为有限元网络划分。显然单元越小( 网络越细) 则离散域的近似程度越好, 计算结果也越精确, 但计算量及误差都将增大, 因此求 解域的离散化是有限元法的核心技术之一。 第三步, 确定状态变量及控制方法: 一个具体的物理问题通常可以用一组包含问题状态变量边界条件的微分方程式表示, 为适合有限元求解, 通常将微分方程化为等

有限元大作业matlab___课程设计例子

有限元大作业程序设计 学校:天津大学 院系:建筑工程与力学学院 专业:01级工程力学 姓名:刘秀 学号:\\\\\\\\\\\ 指导老师:

连续体平面问题的有限元程序分析 [题目]: 如图所示的正方形薄板四周受均匀载荷的作用,该结构在边界 上受正向分布压力, m kN p 1=,同时在沿对角线y 轴上受一对集中压 力,载荷为2KN ,若取板厚1=t ,泊松比0=v 。 [分析过程]: 由于连续平板的对称性,只需要取其在第一象限的四分之一部分参加分析,然后人为作出一些辅助线将平板“分割”成若干部分,再为每个部分选择分析单元。采用将此模型化分为4个全等的直角三角型单元。利用其对称性,四分之一部分的边界约束,载荷可等效如图所示。

[程序原理及实现]: 用FORTRAN程序的实现。由节点信息文件NODE.IN和单元信息文件ELEMENT.IN,经过计算分析后输出一个一般性的文件DATA.OUT。模型基本信息由文件为BASIC.IN生成。 该程序的特点如下: 问题类型:可用于计算弹性力学平面问题和平面应变问题 单元类型:采用常应变三角形单元 位移模式:用用线性位移模式 载荷类型:节点载荷,非节点载荷应先换算为等效节点载荷 材料性质:弹性体由单一的均匀材料组成 约束方式:为“0”位移固定约束,为保证无刚体位移,弹性体至少应有对三个自由度的独立约束 方程求解:针对半带宽刚度方程的Gauss消元法

输入文件:由手工生成节点信息文件NODE.IN,和单元信息文件ELEMENT.IN 结果文件:输出一般的结果文件DATA.OUT 程序的原理如框图:

实验2 MATLAB有限元计算

MATLAB 电磁场有限元计算 实验目的: 1、了解有限元算法的原理,熟练运用MATLAB 环境的PDE 工具。 2、熟练运用PDE 工具分析简单的电磁场边值问题。 实验内容: 一、 有限元简介 在电磁场的计算中, 仅对那些具有最简单边界条件和场域几何形状规则的问题才有解析解, 多数问题的求解必须用数值计算的方法,其场域分布的数值计算内容是学习难点。本实验将有限元法和Matlab 结合起来对电磁场教学中的电位分布问题进行计算。结果表明使用Matlab 对有限元分析编程中的矩阵进行处理,程序设计清晰简便,易于理解和实现。 (节点) element (单 有限元法是以变分原理和剖分插值为基础的一种数值计算方法,是将场域方程等价为一个条件变分问题,然后由条件变分问题对场域进行剖分离散为方程组进行求解。对于一个电场来说,其储能总是趋于最小, 这样变分法的泛函和电场的储能就联系起来了。对于边界为L 的无源空气介质二维静电场中,一个封闭场域S 内的等价能量泛函可以写为: 在有限元分析中,将所研究的区域 S 划分成有限的n 个三角形网格单元。 对应m 个节点, ds 为单元e 的面积。对任意三角形单元 e 中任一点的电位可以认 为由该三角形的三个节点(分别设为i 、 j 、 k) 上的电位u 随该点坐标x 、 y 变化而线性确定。 因此, 对于单元e 构造插值函数: 其中a h 称为形状函数。那么有插值函数的一阶偏导数为:

从而得到能量函数We: 则将单元e中的能量函数We 对每一个节点电位ul ( l = i, j , k)求一阶偏导数, 得: 表示为矩阵形式有: 然后进行总体合成, 将各单元的能量函数对同一节点的电位一阶偏导数相加, 获得所要求解的线性方程组。由以上分析,可知在该场域内电场有限元数学模型为: 式中U 为n 个节点处的待求电位, K 为n 阶矩阵。最后进行强加边界条件处理, 消去已知电位节点在系数矩阵中所在的行和列, 得到简化后的方程,继而可以对电位进行求解。流程框图如下图所示。

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 语言的单元测试框架

·Trading Toolbox?: 一款用于访问价格并将订单发送到交易系统的新产品 ·Financial Instruments Toolbox?: 赫尔-怀特、线性高斯和LIBOR 市场模型的校准和Monte Carlo 仿真 ·Image Processing Toolbox?: 使用有效轮廓进行图像分割、对10 个函数实现C 代码生成,对11 个函数使用GPU 加速·Image Acquisition Toolbox?: 提供了用于采集图像、深度图和框架数据的Ki nect? for Windows?传感器支持 ·Statistics Toolbox?: 用于二进制分类的支持向量机(SVM)、用于缺失数据的PCA 算法和Anderson-Darling 拟合优度检验 ·Data Acquisition Toolbox?: 为Digilent Analog Discovery Design Kit 提供了支持包 ·Vehicle Network Toolbox?: 为访问CAN 总线上的ECU 提供XCP

相关文档
最新文档