文档库 最新最全的文档下载
当前位置:文档库 › 实验2 MATLAB有限元计算

实验2 MATLAB有限元计算

实验2 MATLAB有限元计算
实验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 阶矩阵。最后进行强加边界条件处理, 消去已知电位节点在系数矩阵中所在的行和列, 得到简化后的方程,继而可以对电位进行求解。流程框图如下图所示。

二、静电场仿真

静态场满足上方基本方程,式中 D 为电位移, 为电荷密度, H 为磁场强度, J 为电流密度, E为电场强度, B为磁感应强度.对于恒定的电场:

式中电位满足泊松( Poisson)方程:

对于不存在电荷的空间部分有电荷体密度为零,上式退化为拉普拉斯( Laplace) 方程:

利用上述方程, 再加上边界条件, 利用Matlab 中的偏微分工具箱, 即可求解带电体周围空间的电场分布.输入pdetool可进入软件环境。

两点电荷的电场:两等值异号点电荷单位, 两者间距为1,求其电势分布.整个

求解域取中心为原点,半径为 2 的圆,两空间电荷点位置为(-0.5,0)和( 0.5,0),作为

一种近似,画一个尽量小的圆,取半径为0.05.大圆的边界条件是Di richlet边界条

件,取h= 1, r= 0,这种做法是模拟远处的电势为零.由于大圆与小圆之间的区域没

有电荷, 满足Laplace 方程, 因此在选择方程时选取Elliptic(椭圆)方程,其方程类

型为:

取系数为c= 1, a= 0, f= 0.在表示点电荷的小圆内, 我们认为电荷是均匀分布的, 满足Poisson 方程, 在选择方程时也取Elliptic方程, 取系数为c= 1, a= 0, f= 0. 2.其两点电荷电势分布上图所示,电力线用箭头表示.

三、静电场中的导体

问题描述: 在电场强度为E 的静电场中放置一根无限长的导体,研究截面上的电势分布。首先画一个2*2的矩形R1,然后在中心原点画半径为0. 3的圆E1.然后将Set formula对话框中的公式改为R1-E1,表示求解区域为二者之差.矩形所有的边界条件是Dirichlet边界条件, 取h=1, r= y.而在圆的边界取h=1, r=0.由于求解域没有电荷,因此在选择方程时选取Elliptic(椭圆)方程,系数为c=1, a=0, f=0.其电势分布如下图所示,电力线用箭头表示.

四、两根载流长直导线的磁场

问题描述: 两根载流长直导线,相距为0.8,导线直径为0.2, 求电流引起的磁场. 从麦克斯韦(Maxwell)方程组出发,其磁场强度B和磁感应强度H的关系为:

μ

=

B H

磁场势A 与B 有如下关系: =??

B A

故可简化为椭圆方程:

?=-

A J

画出大小为2* 2的矩形R1,两导线用直径为0. 2、相距0. 8 的两个圆表示.矩形

的边界条件是Di richlet边界条件,取h= 1, r= 0。这种做法是模拟远处的磁场势为零.在设置方程类型时, 选取应用模式为Mangetostatics.故在选择方程时选取Elliptic(椭圆)方程, 对于矩形其它部分系数取μ=1、J=0.在表示导线的圆内,取μ= 1, J=1.两根载流长直导线的磁场势和磁力线如下图所示,磁力线用箭头表示.

实验要求:

(1)有限元法计算电磁场问题的基本思想是什么?

(2)求解静电场两个等量异号带电导线电场位函数及电场强度。

(3)求解静电场中的导体等等势面,写出导体与电介质分界面上的衔接条件,

并与实验结果对比。

(4)写出2μ

A J方程的推导过程。求解两根载流长直导线的磁场磁密分布。

?=-

(5)以上所有内容在做完实验后将截图及资料保存在word文档里,打印后上

交、!

张献

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

CATIA有限元分析计算实例-完整版

CATIA有限元分析计算实例 CATIA有限元分析计算实例 11.1例题1 受扭矩作用的圆筒 11.1-1划分四面体网格的计算 (1)进入【零部件设计】工作台 启动CATIA软件。单击【开始】→【机械设计】→【零部件设计】选项,如图11-1所示,进入【零部件设计】工作台。 图11-1单击【开始】→【机械设计】→【零部件设计】选项 单击后弹出【新建零部件】对话框,如图11-2所示。在对话框内输入新的零件名称,在本例题中,使用默认的零件名称【Part1】。点击对话框内的【确定】按钮,关闭对话框,进入【零部件设计】工作台。 (2)进入【草图绘制器】工作台 在左边的模型树中单击选中【xy平面】, 如图11-3所示。单击【草图编辑器】工具栏内的【草图】按钮,如图11-4所示。这时进入【草图绘制器】工作台。 图11-2【新建零部件】对话框

图11-3单击选中【xy平面】 (3)绘制两个同心圆草图 点击【轮廓】工具栏内的【圆】按钮,如图11-5所示。在原点点击一点,作为圆草图的圆心位置,然后移动鼠标,绘制一个圆。用同样分方法再绘制一个同心圆,如图11-6所示。 图11-4【草图编辑器】工具栏 图11-5【轮廓】工具栏 下面标注圆的尺寸。点击【约束】工具栏内的【约束】按钮,如图11-7所示。点击选择圆,就标注出圆的直径尺寸。用同样分方法标注另外一个圆的直径,如图11-8所示。 图11-6两个同心圆草图 图11-7【约束】工具栏 双击一个尺寸线,弹出【约束定义】对话框,如图11-9所示。在【直径】数值栏内输入100mm,点击对话框内的【确定】按钮,关闭对话框,同时圆的直径尺寸被修改为100mm。用同样的方法修改第二个圆的直径尺寸为50mm。修改尺寸后的圆如图11-10所示。

数值计算实验课题目

数值实验课试题 本次数值实验课结课作业,请按题目要求内容写一篇文章。按题目要求 人数自由组合,每组所选题目不得相同(有特别注明的题目除外)。试题如下: 1)解线性方程组的Gauss 消去法和列主元Gauss 消去法(2人)/*张思珍,巩艳华*/ 用C 语言将不选主元和列主元Gauss 消去法编写成通用的子程序,然后用你编写的程序求解下列84阶的方程组 ???? ?????? ? ??=??????????? ????????????? ? ?1415151515768 168 168 168 1681684 8382321 x x x x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编 3.《数值分析简明教程》,王能超编 2)解线性方程组的平方根法(4人)/*朱春成、黄锐奇、张重威、章杰*/ 用C 语言将平方根法和改进的平方根法编写成通用的子程序,然后用你编写的程序求解对称正定方程组b Ax =,其中 (1)b 随机的选取,系数矩阵为100阶矩阵 ?????? ???? ? ? ?101 1101 1101 1101 1101110 ; (2)系数矩阵为40阶的Hilbert 矩阵,即系数矩阵A 的第i 行第j 列元素为 1 1-+= j i a ij ,向量b 的第i 个分量为∑=-+ = n j i j i b 1 1 1. 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编

3.《数值分析简明教程》,王能超编 3)三对角线方程组的追赶法(3人)/*黄佳礼、唐伟、韦锡倍*/ 用C 语言将三对角线方程组的追赶法法编写成通用的子程序,然后用你编写的程序求解如下84阶三对角线方程组 ???? ?????? ? ??=??????????? ????????????? ? ?1415151515768 168 168 168 16816 84 8382321 x x x x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值分析简明教程》,王能超编 4)线性方程组的Jacobi 迭代法(3人)/*周桂宇、杨飞、李文军*/ 用C 语言将Jacobi 迭代法编写成独立的子程序,并用此求解下列方程组, 精确到小数点后5位 ???? ? ??=????? ??????? ? ?-149012 2111221 3 2 1 x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编 3.《数值分析简明教程》,王能超编 5)线性方程组的Gauss-Seidel 迭代法(3人)/*张玉超、范守平、周红春*/ 用C 语言将Gauss-Seidel 迭代法编写成独立的子程序,并用此求解下列方程组,精确到小数点后5位 ???? ? ??=????? ??????? ? ?--39721 1111112 3 2 1 x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编 3.《数值分析简明教程》,王能超编 6)解线性方程组的最速下降法法(2人)/*赵育辉、阿热孜古丽*/ 用C 语言将最速下降法编写成通用的子程序,然后用你编写的程序求解对称

曲线拟合的数值计算方法实验

曲线拟合的数值计算方法实验 【摘要】实际工作中,变量间未必都有线性关系,如服药后血药浓度与时间的关系;疾病疗效与疗程长短的关系;毒物剂量与致死率的关系等常呈曲线关系。曲线拟合(curve fitting)是指选择适当的曲线类型来拟合观测数据,并用拟合的曲线方程分析两变量间的关系。曲线直线化是曲线拟合的重要手段之一。对于某些非线性的资料可以通过简单的变量变换使之直线化,这样就可以按最小二乘法原理求出变换后变量的直线方程,在实际工作中常利用此直线方程绘制资料的标准工作曲线,同时根据需要可将此直线方程还原为曲线方程,实现对资料的曲线拟合。常用的曲线拟合有最小二乘法拟合、幂函数拟合、对数函数拟合、线性插值、三次样条插值、端点约束。 关键词曲线拟合、最小二乘法拟合、幂函数拟合、对数函数拟合、线性插值、三次样条插值、端点约束 一、实验目的 1.掌握曲线拟合方式及其常用函数指数函数、幂函数、对数函数的拟合。 2.掌握最小二乘法、线性插值、三次样条插值、端点约束等。 3.掌握实现曲线拟合的编程技巧。 二、实验原理 1.曲线拟合 曲线拟合是平面上离散点组所表示的坐标之间的函数关系的一种数据处理方法。用解析表达式逼近离散数据的一种方法。在科学实验或社会活动中,通过 实验或观测得到量x与y的一组数据对(X i ,Y i )(i=1,2,...m),其中各X i 是彼此不同的。人们希望用一类与数据的背景材料规律相适应的解析表达式,y=f(x,c)来反映量x与y之间的依赖关系,即在一定意义下“最佳”地逼近或 拟合已知数据。f(x,c)常称作拟合模型,式中c=(c 1,c 2 ,…c n )是一些待定参 数。当c在f中线性出现时,称为线性模型,否则称为非线性模型。有许多衡量拟合优度的标准,最常用的一种做法是选择参数c使得拟合模型与实际观测值在

有限元实例分析

作业一:有限元分析实例 实例:请对一个盘轴配合机构进行接触分析。轴为一等直径空心轴,盘为等厚度圆盘,其结构及尺寸如图所示。盘和轴为一种材料,材料参数为:弹性模量Ex=2.5E5,泊松比NUXY=0.3,摩擦系数MU=0.25,试采用有限元计算方法分析轴和盘在过盈配合时的应力应变分布以及将轴从盘心拔出时轴和盘的接触情况。 问题分析说明 (1)本题主要分析装配过程中结构的静态响应,所以分析步选择通用静态分析步。由于为过盈配合,属于大变形,故应考虑几何 非线性的影响。 (2)模型具有轴对称性,所以可以采取轴对称模型来进行分析,先建立二维模型计算,再转换为三维模型计算,这样可以节省计

算时间。分析过程由两个载荷步组成, 第一个载荷步为过盈分 析, 求解过盈安装时的情况。第二个载荷步为将轴从盘心拔出 时的接触分析, 分析在这个过程中盘心面和轴的外表面之间的 接触应力。它们都属于大变形问题, 属于非线性问题。在分析 时需要定义一些非线性选项来帮助问题的收敛。 (3)接触面之间有很大的相对滑动,所以模型要使用有限滑移。 模型建立的分析说明 (1)进定义单元类型此项实例分析的问题中涉及到大变形, 故选用So li d185 单元类型来建立本实例入部件模块,的模型。盘 轴接触问题属于面面接触, 目标面和接触面都是柔性的, 将使用接触单元T ARGET 170 和CO NTAT17 4来模拟接 触面。分别创建名为为part1、part2的部件。 (2)定义材料属性,在线性各向同性材料属性对话框中的EX (弹性模量) 文本框中输入 2 . 5E5,PRX Y (泊松比) 文本框中输入 0 . 3,并将定义的材料属性赋予给part1和part2。如下图所示。 (3)进入装配模块,创建两者间的装配关系。

数值分析实验报告1

实验一误差分析 实验1.1(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 其中ε(1.1)和(1.221,,,a a 的输出b ”和“poly ε。 (1(2 (3)写成展 关于α solve 来提高解的精确度,这需要用到将多项式转换为符号多项式的函数poly2sym,函数的具体使用方法可参考Matlab 的帮助。 实验过程: 程序: a=poly(1:20); rr=roots(a); forn=2:21 n form=1:9 ess=10^(-6-m);

ve=zeros(1,21); ve(n)=ess; r=roots(a+ve); -6-m s=max(abs(r-rr)) end end 利用符号函数:(思考题一)a=poly(1:20); y=poly2sym(a); rr=solve(y) n

很容易的得出对一个多次的代数多项式的其中某一项进行很小的扰动,对其多项式的根会有一定的扰动的,所以对于这类病态问题可以借助于MATLAB来进行问题的分析。 学号:06450210 姓名:万轩 实验二插值法

太原理工大学数值计算方法实验报告

本科实验报告 课程名称:计算机数值方法 实验项目:方程求根、线性方程组的直接解 法、线性方程组的迭代解法、代数插值和最 小二乘拟合多项式 实验地点:行勉楼 专业班级: ******** 学号: ********* 学生姓名: ******** 指导教师:李誌,崔冬华 2016年 4 月 8 日

y = x*x*x + 4 * x*x - 10; return y; } float Calculate(float a,float b) { c = (a + b) / 2; n++; if (GetY(c) == 0 || ((b - a) / 2) < 0.000005) { cout << c <<"为方程的解"<< endl; return 0; } if (GetY(a)*GetY(c) < 0) { return Calculate(a,c); } if (GetY(c)*GetY(b)< 0) { return Calculate(c,b); } } }; int main() { cout << "方程组为:f(x)=x^3+4x^2-10=0" << endl; float a, b; Text text; text.Getab(); a = text.a; b = text.b; text.Calculate(a, b); return 0; } 2.割线法: // 方程求根(割线法).cpp : 定义控制台应用程序的入口点。// #include "stdafx.h" #include"iostream"

心得体会 使用不同的方法,可以不同程度的求得方程的解,通过二分法计算的程序实现更加了解二分法的特点,二分法过程简单,程序容易实现,但该方法收敛比较慢一般用于求根的初始近似值,不同的方法速度不同。面对一个复杂的问题,要学会简化处理步骤,分步骤一点一点的循序处理,只有这样,才能高效的解决一个复杂问题。

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

有限元例题

【1】图示弹性力学平面问题,采用三角形常应变元,网格划分及单元、节点编号如图1所示。试求: (1) 计算系统刚度矩阵的最大带宽; (2) 根据图中结构的边界约束状态,给出约束节点位移值。 【解】 (1) 相邻节点号的最大差为d = 4; 所以,半带宽为B = 2 ? (4 + 1) = 10。 (2) u1 = 0,v1 = 0,u4 = 0,v4 = 0。 【2】弹性力学平面问题4节点等参元,其单元自由度是多少?单元刚度矩阵是多少阶的?单元刚度矩阵有多少个元素? 【解】平面问题4节点等参元,其单元自由度是4 ?2 = 8个;单元刚度矩阵是8 ? 8 阶的,单元刚度矩阵有64个元素。

【3】平面刚架结构梁单元(考虑轴向和横向变形)的自由度是多少?单元刚度矩阵是多少阶的?单元刚度矩阵有多少个元素? 【解】平面刚架结构梁单元(考虑轴向和横向变形)的自由度是2 ? 3 = 6个;单元刚度矩阵是6 ? 6阶的;单元刚度矩阵有36个元素。 【4】已知一等截面直杆中某一微段的起始点坐标为0.5m,终点坐标为0.6m,起始点的位移为0.2mm,终点的位移为0.3mm。假定直杆内的位移是线性分布的。求该微段等截面直杆的位移表达式f(x)。 【解】已知:x i = 0.5m, x j= 0.6m, u i = 0.2mm = 0.2?10-3m, u j= 0.3mm = 0.3?10-3m。 即

【5】已知4节点一维问题中单元①(1, 2)的应力矩阵为 结构总体位移列阵为 求单元①的应力(用矩阵计算)。 【解】由总体结构位移列阵知,单元①的位移列阵为 由{σ} = [C] {?}e可求得单元①的应力

CATIA有限元分析计算实例讲诉

CATIA有限元分析计算实例 11.1例题1 受扭矩作用的圆筒 11.1-1划分四面体网格的计算 (1)进入【零部件设计】工作台 启动CATIA软件。单击【开始】→【机械设计】→【零部件设计】选项,如图11-1所示,进入【零部件设计】工作台。 图11-1单击【开始】→【机械设计】→【零部件设计】选项 单击后弹出【新建零部件】对话框,如图11-2所示。在对话框内输入新的零件名称,在本例题中,使用默认的零件名称【Part1】。点击对话框内的【确定】按钮,关闭对话框,进入【零部件设计】工作台。 (2)进入【草图绘制器】工作台 在左边的模型树中单击选中【xy平面】, 如图11-3所示。单击【草图编辑器】工具栏内的【草图】按钮,如图11-4所示。这时进入【草图绘制器】工作台。

图11-2【新建零部件】对话框 图11-3单击选中【xy平面】 (3)绘制两个同心圆草图 点击【轮廓】工具栏内的【圆】按钮,如图11-5所示。在原点点击一点,作为圆草图的圆心位置,然后移动鼠标,绘制一个圆。用同样分方法再绘制一个同心圆,如图11-6所示。 图11-4【草图编辑器】工具栏 图11-5【轮廓】工具栏 下面标注圆的尺寸。点击【约束】工具栏内的【约束】按钮,如图11-7所示。点击选择圆,就标注出圆的直径尺寸。用同样分方法标注另外一个圆的直径,如图11-8所示。

图11-6两个同心圆草图 图11-7【约束】工具栏 双击一个尺寸线,弹出【约束定义】对话框,如图11-9所示。在【直径】数值栏内输入100mm,点击对话框内的【确定】按钮,关闭对话框,同时圆的直径尺寸被修改为100mm。用同样的方法修改第二个圆的直径尺寸为50mm。修改尺寸后的圆如图11-10所示。 图11-8标注直径尺寸的圆草图 图11-9【约束定义】对话框 (4)离开【草图绘制器】工作台 点击【工作台】工具栏内的【退出工作台】按钮,如图11-11所示。退出【草图绘制器】工作台,进入【零部件设计】工作台。 图11-10修改直径尺寸后的圆 图11-11【工作台】工具栏

数值计算方法实验5

实验报告 学院(系)名称: 主程序部分列选主元部分

实验结果: 一.列主元消去法 输入各个数据,最终使用列选主元法,得到结果为:x1=x2=x3=1二.高斯-赛德尔迭代法 输入各个数据,输出每一步迭代数据,最终结果为:x1=0.285716,附录(源程序及运行结果) 一.列主元高斯消去法 #include #include void print(double a[3][3],int n,double b[3]){ printf("输出矩阵:\n"); for(int i=0;ifabs(d)){ d=a[i][k]; l=i; } i++; } printf("选出主元:%lf\n",d); if(d==0) printf("矩阵奇异!\n"); else if(l!=k){ for(int j=k;j

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

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

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

ansys有限元建模与分析实例-详细步骤

《有限元法及其应用》课程作业ANSYS应用分析 学号: 姓名: 专业:建筑与土木工程

角托架的有限元建模与分析 一 、模型介绍 本模型是关于一个角托架的简单加载,线性静态结构分析问题,托架的具体形状和尺寸如图所示。托架左上方的销孔被焊接完全固定,其右下角的销孔受到锥形压力载荷,角托架材料为Q235A 优质钢。角托架材料参数为:弹性模量366E e psi =;泊松比0.27ν= 托架图(厚度:0.5) 二、问题分析 因为角托架在Z 方向尺寸相对于其在X,Y 方向的尺寸来说很小,并且压力荷载仅作用在X,Y 平面上,因此可以认为这个分析为平面应力状态。 三、模型建立 3.1 指定工作文件名和分析标题 (1)选择菜单栏Utility Menu → 命令.系统将弹出Jobname(修改文件名)对话框,输入bracket (2)定义分析标题 GUI :Utility Menu>Preprocess>Element Type>Add/Edit/Delete 执行命令后,弹出对话框,输入stress in a bracket 作为ANSYS 图形显示时的标题。 3.2设置计算类型 Main Menu: Preferences … →select Structural → OK 3.3定义单元类型 PLANE82 GUI :Main Menu →Preprocessor →Element Type →Add/Edit/Delete 命令,系统将弹出Element Types 对话框。单击Add 按钮,在对话框左边的下拉列表中单击Structural Solid →Quad 8node 82,选择8节点平面单元PLANE82。单击ok ,Element Types 对话框,单击Option ,在Element behavior 后面窗口中选取Plane strs w/thk 后单击ok 完成定义单元类型。 3.4定义单元实常数 GUI :Main Menu: Preprocessor →Real Constants →Add/Edit/Delete ,弹出定义实常数对话框,单击Add ,弹出要定义实常数单元对话框,选中PLANE82单元后,单击OK →定义单元厚度对话框,在THK 中输入0.5.

CATIA有限元分析计算例题

CA TIA有限元分析计算例题 11.1例题1 受扭矩作用的圆筒 11.1-1划分四面体网格的计算 (1)进入【零部件设计】工作台 启动CATIA软件。单击【开始】→【机械设计】→【零部件设计】选项,如图11-1所示,进入【零部件设计】工作台。 图11-1单击【开始】→【机械设计】→【零部件设计】选项单击后弹出【新建零部件】对话框,如图11-2所示。在对话框内输入新的零件名称,在本例题中,使用默认的零件名称【Part1】。点击对话框内的【确定】按钮,关闭对话框,进入【零部件设计】工作台。 (2)进入【草图绘制器】工作台 在左边的模型树中单击选中【xy平面】, 如图11-3所示。单击【草图编辑器】工具栏内的【草图】按钮,如图11-4所示。这时进入【草图绘制器】工作台。 图11-2【新建零部件】对话框 图11-3单击选中【xy平面】 (3)绘制两个同心圆草图 点击【轮廓】工具栏内的【圆】按钮,如图11-5所示。在原点点击一点,作为圆草图的圆心位置,然后移动鼠标,绘制一个圆。用同样分方法再绘制一个同心圆,如图11-6

所示。 图11-4【草图编辑器】工具栏 图11-5【轮廓】工具栏 下面标注圆的尺寸。点击【约束】工具栏内的【约束】按钮,如图11-7所示。点击选择圆,就标注出圆的直径尺寸。用同样分方法标注另外一个圆的直径,如图11-8所示。 图11-6两个同心圆草图 图11-7【约束】工具栏 双击一个尺寸线,弹出【约束定义】对话框,如图11-9所示。在【直径】数值栏内输入100mm,点击对话框内的【确定】按钮,关闭对话框,同时圆的直径尺寸被修改为100mm。用同样的方法修改第二个圆的直径尺寸为50mm。修改尺寸后的圆如图11-10所示。 图11-8标注直径尺寸的圆草图 图11-9【约束定义】对话框 (4)离开【草图绘制器】工作台 点击【工作台】工具栏内的【退出工作台】按钮,如图11-11所示。退出【草图绘制器】工作台,进入【零部件设计】工作台。

有限元实例分析1

有限元实例练习分析 学号: 姓名: 专业:材料成型及控制工程 201年5月2日

引言 有限元方法发展到今天。已经成为一门相当复杂的实用工程技术。有限元分析的最终目的是还原一个实际工程系统的数学行为特征。即分析必须针对一个物理原型准确的数学模型。模型包括所有节点、单元、材料属性、实常数、边界条件以及其他用来表现这个物理系统的特征。Marc是一种融结构、热、流体、电磁和声学于一体的非线型有限元分析软件,可广泛应用于航空航天、汽车、造船、石油化工、铁道、能源、电子元件、机械制造、材料工程、土木工程、医疗器材、冶金工艺和家用电器等。该软件功能特色具体包括:多种物理场的分析能力、复合场的耦合分析能力、强大的非线性分析能力、最先进的接触分析功能、并行计算功能、丰富的单元库、开放的用户环境、强大的网格自适应功能和全自动三维网格重划分;Marc的学习、应用是一个系统、复杂的工程。由于它涉及到多方面的知识,所以在学Marc的过程中一定要对Marc所涉及到的一些理论知识有一个大概的了解,以加深对Marc的理解。

目录 引言 一、目的 (4) 二、软件应用介绍 (4) 三、实例内容 (6) 四、求解步骤 (6) 1. 建立有限元模型 (6) 2. 加载求解 (11) 3、后处理 (12) 五、总结 (16) 参考文献

有限元实例练习分析 一、目的 1、熟悉有限元建模、求解及结果分析步骤和方法。 2、能利Marc软件对实例结构进行静力有限元分析。 3、加深有限元理论关于网格划分概念、划分原则等的理解。 二、软件应用介绍 有限元分析是对于结构力学分析迅速发展起来的一种现在计算方法。它是50年代首先在连续体力学领域—飞机结构静、动态特性分析中应用的一种有效的数值分析方法,随后很快广泛的应于求解热传导、电磁场、流体力学等连连续行问题。想要解答,必须先简化结构,采用数值模拟方法分析。 (一)有限元软件发展特点 1. 单一场计算向多物理耦合场问题的求解发展 2. 由求解线性问题发展到求解非线性问题 3. 与CAD/CAM等软件的集成 4. 提高自动化的网格处理能力 5.软件面向专业用户的开放性 6. 软件开发强强联合 (二)、分析研究过程 1、前处理 (1)建模 有限元分析的最终目的是还原一个实际工程系统的数学行为特

(完整版)数值计算方法上机实习题答案

1. 设?+=1 05dx x x I n n , (1) 由递推公式n I I n n 1 51+-=-,从0I 的几个近似值出发,计算20I ; 解:易得:0I =ln6-ln5=0.1823, 程序为: I=0.182; for n=1:20 I=(-5)*I+1/n; end I 输出结果为:20I = -3.0666e+010 (2) 粗糙估计20I ,用n I I n n 51 5111+- =--,计算0I ; 因为 0095.05 6 0079.01020 201 020 ≈<<≈??dx x I dx x 所以取0087.0)0095.00079.0(2 1 20=+= I 程序为:I=0.0087; for n=1:20 I=(-1/5)*I+1/(5*n); end I 0I = 0.0083 (3) 分析结果的可靠性及产生此现象的原因(重点分析原因)。 首先分析两种递推式的误差;设第一递推式中开始时的误差为000I I E '-=,递推过程的舍入误差不计。并记n n n I I E '-=,则有01)5(5E E E n n n -==-=-Λ。因为=20E 20020)5(I E >>-,所此递推式不可靠。而在第二种递推式中n n E E E )5 1(5110-==-=Λ,误差在缩小, 所以此递推式是可靠的。出现以上运行结果的主要原因是在构造递推式过程中,考虑误差是否得到控制, 即算法是否数值稳定。 2. 求方程0210=-+x e x 的近似根,要求4 1105-+?<-k k x x ,并比较计算量。 (1) 在[0,1]上用二分法; 程序:a=0;b=1.0; while abs(b-a)>5*1e-4 c=(b+a)/2;

数值分析实验报告总结

数值分析实验报告总结 随着电子计算机的普及与发展,科学计算已成为现代科 学的重要组成部分,因而数值计算方法的内容也愈来愈广泛和丰富。通过本学期的学习,主要掌握了一些数值方法的基本原理、具体算法,并通过编程在计算机上来实现这些算法。 算法算法是指由基本算术运算及运算顺序的规定构成的完 整的解题步骤。算法可以使用框图、算法语言、数学语言、自然语言来进行描述。具有的特征:正确性、有穷性、适用范围广、运算工作量少、使用资源少、逻辑结构简单、便于实现、计算结果可靠。 误差 计算机的计算结果通常是近似的,因此算法必有误差, 并且应能估计误差。误差是指近似值与真正值之差。绝对误差是指近似值与真正值之差或差的绝对值;相对误差:是指近似值与真正值之比或比的绝对值。误差来源见表 第三章泛函分析泛函分析概要 泛函分析是研究“函数的函数”、函数空间和它们之间 变换的一门较新的数学分支,隶属分析数学。它以各种学科

如果 a 是相容范数,且任何满足 为具体背景,在集合的基础上,把客观世界中的研究对象抽 范数 范数,是具有“长度”概念的函数。在线性代数、泛函 分析及相关的数学领域,泛函是一个函数,其为矢量空间内 的所有矢量赋予非零的正长度或大小。这里以 Cn 空间为例, Rn 空间类似。最常用的范数就是 P-范数。那么 当P 取1, 2 ,s 的时候分别是以下几种最简单的情形: 其中2-范数就是通常意义下的距离。 对于这些范数有以下不等式: 1 < n1/2 另外,若p 和q 是赫德尔共轭指标,即 1/p+1/q=1 么有赫德尔不等式: II = ||xH*y| 当p=q=2时就是柯西-许瓦兹不等式 般来讲矩阵范数除了正定性,齐次性和三角不等式之 矩阵范数通常也称为相容范数。 象为元素和空间。女口:距离空间,赋范线性空间, 内积空间。 1-范数: 1= x1 + x2 +?+ xn 2-范数: x 2=1/2 8 -范数: 8 =max oo ,那 外,还规定其必须满足相容性: 所以

数值分析实验报告-Sor法分析

数值分析实验报告 一、 实验目的 1、会使用Sor 法求解一个线性方程组 2、熟悉matlab 语言并结合原理编程求方程组 3、改变ω的值观察实验结果 4、会分析实验结果 二、实验题目 编制Sor 迭代格式程序进行求解一个线性方程组的迭代计算情况,运行中要选用不同的松弛因子ω进行尝试 三、 实验原理 Jacobi 迭代和seidel 迭代对具体的线性方程组来说,逼近*x 的速度是固定不变的,遇到收敛很慢的情况时就显得很不实用。 Sor 法是一seidel 迭代为基础,并在迭代中引入参数ω以增加迭代选择的灵活性,具体为: ! 用seidel 迭代算出的,)()1()()1(k k J k k J x x x x x -=?++相减得到差向量与再用参数ω乘之再加上 )1()()()1()1()()()1(++++-=?+=k J k k k k k k x x x x x x x x ωωω,即的下一步迭代作为,由seidel 迭代的公式可以得到Sor 法的迭代格式为 n i x a x a b a x x k j n i j ij k j i j ij i ii k i k i ,2,1),()1()(1)1(11)()1( =--+-=∑∑+=+-=+ω ω 式中ω称为松弛因子。 四、 实验内容 用matlab 编程得到Sor 法求线性方程组的算法为: function [x,n]=SOR(A,b,x0,w,eps,M) if nargin==4

eps= ; M = 200; elseif nargin<4 error return : elseif nargin ==5 M = 200; end if(w<=0 || w>=2) error; return; end D=diag(diag(A)); %求A的对角矩阵L=-tril(A,-1); %求A的下三角阵( U=-triu(A,1); %求A的上三角阵B=inv(D-L*w)*((1-w)*D+w*U); f=w*inv((D-L*w))*b; x=B*x0+f; n=1; %迭代次数 while norm(x-x0)>=eps x0=x; x =B*x0+f; n=n+1; if(n>=M) (

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.选择“File”→“Clear&Start New”。 2.选择“File”→“Change Jobname”命令,弹出如图1-1所示的“Change jobname”对话框。在“Enter new Jobname”文本框中输入“example”,同时“New log and error files”中的复选框“NO”不选,并单击“OK”按钮。 图1-1 “Change Jobname”对话框 3.选择Main Menu→Preferences。弹出的图1-2所示的对话框,选中“Structure”项,单击“OK”按钮。 图1-2

4.选择Main Menu→Preprocessor→ Element Type→Add/Edit/Delete。弹 出如图1-3所示的对话框,单击“ADD” 按钮;弹出图1-4所示的对话框,在 左侧“Structure Beam”,在右侧列表 中选“2 node 188”,单击“OK”按钮; 返回到图1-3所示的对话框,单击对 话框中的“Close”按钮。 图1-3 图1-4 5.拾取Main Menu→Preprocessor→ Section→Beam→Common Section。 在弹出的“Beam tool”对话框中输 入B→3,H→3单击“OK”按钮。

6.拾取Main Menu→Preprocessor→Material Props→Material Modles→Structural→linear→Isotropic如图1-5 如图1-5 如图1-6 弹出如图1-6所示的对话框输入EX=2e11,PRXY=0.3 7.拾取Main Menu→Preprocessor→Modeling→Create→

数值计算方法实验3

学院(系)名称:

附录(源程序及运行结果): 一.变步长梯形法 #include #include double f(double x){return 4/(1+x*x);} void main(){ double a,b,h,T1,T2,e,S,x; printf("请输入区间a和b:"); scanf("%lf,%lf",&a,&b); printf("精度:"); scanf("%lf",&e); h=b-a; T2=h/2*(f(a)+f(b)); do{ T1=T2; S=0; x=a+h/2; do{ S=S+f(x); x=x+h; }while(x=e); printf("用变步长梯形法输出T2:%lf\n",T2); } 运行结果: 二.龙贝格积分法 #include #include double f(double x){return sin(x);} void main(){ double a,b,h,T1,T2=1,e,S,S1,S2=1,x,C1,C2,R1=0,R2=1; printf("请输入区间a和b:"); scanf("%lf,%lf",&a,&b); printf("精度:"); scanf("%lf",&e); h=2*(b-a); T2=(b-a)/2*(f(a)+f(b)); int k=0; while(fabs(R2-R1)>=e){ k=k+1; h=h/2; T1=T2; S1=S2; S=0; x=a+h/2; do{S=S+f(x); x=x+h; }while(x

相关文档