偏微分方程的有限元方法共65页
- 格式:ppt
- 大小:6.03 MB
- 文档页数:65
第二章有限元方程的求解方法有限元方法是一种用于求解微分方程的数值近似方法,它将求解域(问题的区域)分割成许多小的子域,通过在每个子域上建立适当的数学模型,将微分方程转化为代数问题进行求解。
在有限元方法中,关键的一步是建立数学模型,即选择合适的试验函数空间和相应的权函数。
常用的有限元方法有有限元法和有限差分法,这两种方法都是在数学模型的基础上进行离散化处理,然后用有限元方程求解方法求解代数问题。
有限元法是一种建立在小区域上近似表示的方法,它将整个求解域分割成许多小的子域,每个子域内选取适当的试验函数来近似表示原问题的解。
这样,原问题就可以表示为求解子域上的代数问题。
有限元法的关键是选择适当的试验函数和权函数。
试验函数是用来近似表示原问题的解,而权函数则是用来衡量试验函数与原问题解之间的误差。
通常,试验函数和权函数都是在每个子域上选取的多项式函数。
有限差分法是一种将原问题的微分方程转化为代数方程的方法。
在有限差分法中,求解域被分割成格点,并在这些格点上定义函数的值。
通过使用各个格点上的函数值及其邻域的函数值,可以近似表示微分方程中的导数项。
然后,将微分方程转化为代数方程进行求解。
有限差分法的关键是选择合适的差分格式,这决定了在每个格点上求解代数方程时所使用的邻域函数值。
无论是有限元法还是有限差分法,最后都需要用数值算法求解得到的代数方程。
常用的数值算法有直接法和迭代法。
直接法是一种直接求解代数方程的方法,例如高斯消元法和LU分解法等。
迭代法是一种通过迭代求解逼近原问题解的方法,常用的迭代法有雅可比迭代法和高斯-赛德尔迭代法等。
在使用有限元方法求解微分方程时,步骤通常包括:建立数学模型,选择合适的试验函数和权函数;将微分方程离散化处理,得到代数方程;选择适当的数值算法求解代数方程;对得到的数值解进行后处理,例如计算导数或积分等。
在实际应用中,有限元方法广泛应用于结构力学、流体力学、热传导等领域的求解。
16.901讲义笔记一维有限%首先,我们考虑•个比上一节稍微复杂点的问题; 豎二f(X),卫冲,V(O) = O.V(L)=O在这里,f(X)是)C的般函数,我们来看•个特别的情形:f(x)=x(L-x),此时,方程的梏确解如F:有限元方法利用加权残差的方法■其中:(1)设va)=£«Ma), v()()是我们对v(x)的近似,省为未知常数9 V|(x)是用户选择的歯数,即形状朗数:(2)定义N个加权残差LRj = p^(x)R(V)dx • j = l-> N to其中,RV)二器・f为绒差凹⑴足“用户”选择的加权函数,即权函数:(3)令加权残并为冬•町以确定⑷的值,即求耳使得对所fi 1=I->N, Rj=Oe令限元方法( )是加权残若法的一种,下血看看我们是如何用它来解决问题的。
一维有限元方法有限元方法(〉扌野个连续区域离散化-系列小单尤,这些单元与有限差分法()或有限体积法()产牛的网格完全相同,而佼之前两者主耍的优点在于:能够容易地把握单元的变化范囤。
对于我们讨论的一维问题,可以将区域(数轴〉离散化为如下图所示:这里,叫三单•元的个数。
我们还会用別下血i些定义:个三角划分;尽管令限元法对于一维,二维,三维甚至高细问题都是仃效的,们我们还是要谈及区域离散化的一种方浓,即三角划分。
4 T定义为第I个单元所在的区域。
对于_维问题,这表明,TS-个满足片心的X的集合。
接卜来耍确定的是毎个单兀该用什么样的函数,典型的函数形式就是用从一个单元到卜一个单兀保持解连续的多项式。
例如:一个线性有限元如卜團;i示:在毎个单元内的函数是线形的,在毎两个单元的交点处足连续的。
对于专门诜择的满足线件变化的形状函数,右估计残差时有一个很明显的问题:回忆前曲的内容,RV)二器一f,它在一个单冗里等于什么呢?因为函数是线性的,所以器=0,则有:R(V)=f ,即R(V)与无关。
冋时,满足线性变化的形状函数似乎也是一个好的近似,我们举-个例子来说明。
有限元方法求解微分方程有限元方法是一种常用的数值计算方法,可以用来求解微分方程。
在本文中,我们将介绍有限元方法的基本原理和求解微分方程的步骤。
有限元方法是一种将连续问题离散化的数值方法,它将连续的物理域划分为许多小的子域,称为有限元。
这些有限元可以是简单的几何形状,如线段、三角形或四边形。
通过在这些有限元上建立适当的数学模型,我们可以得到一个离散化的方程系统。
要求解微分方程,首先需要将微分方程转化为一个变分问题。
变分问题是通过将微分方程左右两边乘以一个测试函数,然后对整个方程进行积分得到的。
通过这样的转化,我们可以将微分方程问题转化为一个变分问题,这样就可以应用有限元方法进行求解。
在有限元方法中,我们选取一个适当的有限元空间,并在每个有限元上构建一个适当的试验函数空间。
试验函数空间是由一组基函数生成的,这些基函数是在每个有限元上定义的。
通过将基函数与试验函数空间上的权函数相乘,并在整个物理域上进行积分,我们可以得到一个离散化的方程系统。
接下来,我们需要对离散化的方程系统进行求解。
通常,我们使用线性代数方法,如高斯消元法或迭代法,来解决这个离散化的方程系统。
通过求解这个方程系统,我们可以得到有限元问题的近似解。
我们需要对有限元解进行后处理。
这包括计算物理量的值和误差的估计。
通过计算物理量的值,我们可以得到微分方程问题的数值解。
通过计算误差的估计,我们可以评估数值解的精度。
有限元方法是一种常用的求解微分方程的数值方法。
通过将微分方程转化为一个变分问题,然后应用有限元方法进行离散化和求解,我们可以得到微分方程的数值解。
通过对数值解进行后处理,我们可以评估数值解的精度。
有限元方法在工程和科学计算中有广泛的应用,可以解决各种不同类型的微分方程问题。
%对于d2u/dx2=f的FEM解算器,其中f=x*(1-x)%%边界条件u(0)=0, u(1)=0.%精确解用以比对xx=linspace(0,1,101);%产生0-1之间的均分指令,101为元素个数uex=(1/6).*xx.^3-(1/12).*xx.^4-(1/12).*xx;%对力项设置高斯点的数目NGf=2;if (NGf==2)xiGf=[-1/sqrt(3);1/sqrt(3)];%ξ1、ξ2的值aGf=[1 1];else,NGf=1;xiGf=[0.0];aGf=[2.0];end%单元数目Ne=5;%建立网格节点x=linspace(0,1,Ne+1);%零刚性矩阵K=zeros(Ne+1,Ne+1);b=zeros(Ne+1,1);%对所有单元循环计算刚性和残差for ii=1:Ne,kn1=ii;kn2=ii+1;x1=x(kn1);x2=x(kn2);dx=x2-x1;%每一个单元的长度dxidx=2/dx;%dξ/dxdxdxi=1/dxidx;%dx/dξdN1dxi=-1/2;%dζ1/dξdN2dxi=1/2;%dζ2/dξdN1dx=dN1dxi*dxidx;%-1/(x j-x j-1)dN2dx=dN2dxi*dxidx;%1/(x j-x j-1)K(kn1,kn1)=K(kn1,kn1)-2*dN1dx*dN1dx*dxdxi;%Rj的第二项K(kn1,kn2)=K(kn1,kn2)-2*dN1dx*dN2dx*dxdxi;K(kn2,kn1)=K(kn2,kn1)-2*dN2dx*dN1dx*dxdxi;K(kn2,kn2)=K(kn2,kn2)-2*dN2dx*dN2dx*dxdxi;%用高斯积分估计力项的积分for nn=1:NGf%NGf=2xiG=xiGf(nn);%得到高斯点的ξN1=0.5*(1-xiG);%求N1和N2(即在xiG的权重/插值) 形状函数在ξ的值N2=0.5*(1+xiG);%ζ值fG=xiG*(1-xiG);%对ξ点求fgG1=N1*fG*dxdxi;%在节点处估计权函数在高斯点的被积函数gG2=N2*fG*dxdxi;%估计是个积分值b(kn1)=b(kn1)+aGf(nn)*gG1;% aGf为1b(kn2)=b(kn1)+aGf(nn)*gG2;endend%在x=0处设置Dirichlet条件kn1=1;K(kn1,:)=zeros(size(1,Ne+1));K(kn1,kn1)=1;b(kn1)=0;%在x=1处设置Dirichlet条件kn1=1;K(kn1,:)=zeros(size(1,Ne+1));K(kn1,kn1)=1;b(kn1)=0;%求解方程v=K\b;%v为Kx=b的解plot(x,v,'*-');%画图并比较hold on;plot(xx,uex);hold off;xlabel('x');ylabel('u');。
有限元方法及其应用有限元方法(Finite Element Method, FEM)是一种数值计算方法,用于求解各种物理问题中的偏微分方程。
该方法将复杂的连续介质划分为有限个简单的几何单元,然后在每个几何单元内建立适当的数学模型,最终通过拼接各个几何单元的数学模型来近似求解整个物理问题。
有限元方法在工程学、物理学、计算机科学和应用数学等领域中有着广泛的应用。
下面将从几个典型的应用领域来介绍有限元方法的具体应用。
首先是结构力学领域,有限元方法可用于求解各种结构的静力学和动力学问题。
例如,在建筑工程中,可以利用有限元方法对大跨度桥梁的受力情况进行分析和优化设计。
在机械工程中,可以利用有限元方法对各种机械零件的应力和变形进行分析,从而指导设计和改进产品结构。
其次是流体力学领域,有限元方法可用于模拟和预测流体在各种复杂几何形状中的流动情况。
例如,在航空航天领域,可以利用有限元方法对飞机的气动特性进行模拟和优化,以提高飞行性能。
在汽车工程中,可以利用有限元方法对车辆的空气动力学和燃烧流动进行分析,以改善车辆的燃油效率和安全性能。
再次是热传导和传热学领域,有限元方法可用于求解各种热传导和传热问题。
例如,在电子工程中,可以利用有限元方法对微电子器件的温度分布进行模拟和优化,以提高器件的性能和可靠性。
在能源工程中,可以利用有限元方法对燃烧和热传导过程进行分析,以指导能源设备的设计和运行。
有限元方法还可用于地震工程、电磁场分析、生物力学、材料科学等领域。
例如,在地震工程中,可以利用有限元方法对建筑物的抗震性能进行评估和改进。
在电磁场分析中,可以利用有限元方法对电磁场的分布和传输进行模拟和优化,以指导电子设备的设计和布局。
有限元方法是一种强大而灵活的数值计算方法,可用于求解各种复杂的物理问题。
通过将连续介质离散化为有限个简单的几何单元,并在每个几何单元内建立适当的数学模型,有限元方法能够近似求解整个物理问题。
这种方法在工程学、物理学和计算机科学等领域中具有广泛的应用,为科学研究和工程实践提供了强有力的工具。
偏微分方程特征值问题的弱有限元方法我折腾了好久偏微分方程特征值问题的弱有限元方法,总算找到点门道。
说实话,一开始接触这个的时候,我完全是一头雾水。
我当时就是直接按照那种传统的有限元方法思路去套,结果发现根本行不通。
就像你要拿螺丝刀去开一把锁,结果发现那锁孔根本不是螺丝刀能解决的类型,白费劲了。
我首先犯的错呢,就是在构建弱形式的时候。
我没有完全理解偏微分方程特征值问题的本质特点。
我只是很机械地把常规的操作进行了移植,少考虑了很多重要的约束条件。
比如说,特征值问题里,特征函数是有特定的归一化条件之类的,我在构建弱形式的时候最初就忽略了,后来导致算出来的结果完全不对,那数看起来就很离谱,根本不是那么回事儿。
后来我就重新回去看基础理论。
我决定把偏微分方程特征值问题的数学原理好好捋一遍,就像在整理一团乱麻一样。
我把方程中的各项分别拿出来,分析它在物理或者数学意义下的含义。
同时,我参考了好多以前成功的偏微分方程求解案例,不管是那种不是特征值问题的常规案例也好,就想找找思路。
在有限元的离散化这一块,我又遇到难题了。
我试过一次性用很精细的网格离散,想着这样能得到更准确的结果。
但是呢,那样做计算量超级大,我的电脑差点就死机了,这就好比你本来想慢慢走稳稳到达目的地,结果一下子给自己加了个超级重的行囊,根本走不动。
后来我发现应该逐步由粗到细地去构建网格,先看看大致的趋势,再慢慢细化网格得到更准确的结果。
说到弱有限元方法里这个弱的概念啊,就像是我们不要求方程在每一个点都严格成立,而是在一种平均的意义上成立。
打个比方,比如一条绳子,不是要每个小部分都绑得死死的才好,只要整体保持某种平衡就可以了。
在构建弱形式的时候,要注意选择合适的测试函数空间。
这空间要是选得太小,可能根本没法捕捉到特征值和特征函数;要是选得太大呢,就又会增加很多没必要的计算量。
我在这一块小测试函数空间这个事儿上就反复尝试了很多次。
我一开始选得比较大,结果运算半天,发现很多都是冗余的计算。