Skip to content

有限元方法

Finite element method · FEM · Finite element assembly

用单元、局部函数空间和自由度构造 Galerkin 子空间,并组织局部积分、全局组装、边界处理、误差估计与线性求解。

有限元三元组

有限元方法不是“在网格上写离散公式”的泛称。它从变分形式出发,并按Galerkin 方法用网格单元上的局部函数空间与自由度拼成全局 trial/test spaces,再计算双线性型和线性泛函。有限差分通常直接近似点值导数;有限元的基本对象则是函数、局部自由度和弱积分。

一个有限元由三元组

(K,P,N)

定义。K 是几何单元,PK 上的有限维函数空间,m=dimP,而 N={N1,,Nm}P 上的一组线性自由度。要求这些自由度对 P 单值确定:若 pP 且所有 Ni(p)=0,则 p=0。等价地,存在局部形函数 {φj}j=1m 满足

Ni(φj)=δij.

在三角形上的一次 Lagrange 元中,P=P1(K),三个自由度是顶点值;但这只是多项式插值型有限元的一个家族。高阶 Lagrange 元还含边或内部节点,Nédélec 元使用切向自由度,Raviart–Thomas 元使用法向通量矩,某些元的自由度本身就是积分矩。不能把“有限元自由度”普遍解释成网格节点上的函数值。

从网格单元到全局空间

以下沿用网格与网格剖分页的 Th、局部尺度 hK、全局尺度 h、shape regularity 与 reference-to-physical map,不在本页重新定义通用网格。有限元新增的工作,是用该映射把参考单元形函数和自由度传到物理单元;向量元还需要保持切向或法向结构的 Piola 变换。几何映射必须非退化,否则局部空间、积分和组装都失去有效坐标基础。

对齐次 Dirichlet Poisson 问题,连续分片线性 Lagrange 空间是

Vh={vhC0(Ω):vh|KP1(K) KTh, vh=0 on Ω}.

连续性使 VhH01(Ω),所以这是 conforming Galerkin 方法。每个内部顶点对应一个全局 hat basis function ϕi:它在该顶点取值 1,在其他顶点取值 0,支撑只覆盖共享这个顶点的单元。局部支撑意味着两个自由度没有共同单元时,对应矩阵项为零。

Galerkin 离散与局部装配

对扩散—反应型双线性型

a(w,v)=Ωκwvdx+Ωcwvdx,

全局矩阵可分成刚度矩阵与质量矩阵:

A=K+M,Kij=Ωκϕjϕidx,Mij=Ωcϕjϕidx.

纯 Poisson 问题只有刚度项;随时间 PDE 的半离散常把不带反应系数的质量矩阵写在时间导数前。两种矩阵都来自所选弱形式和基函数,不应仅凭“主对角大、邻点为负”来命名。

实际计算逐单元形成局部量。设单元 K 有局部基 φaK,局部编号到全局编号的映射为 gK(a),则

KabK=KκφbKφaKdx,MabK=KcφbKφaKdx,faK=KfφaKdx+KΓNgNφaKds.

组装执行

AgK(a),gK(b)+=KabK+MabK,bgK(a)+=faK.

相邻单元对共享自由度的贡献必须相加。COO 格式允许先收集重复位置,再排序合并为 CSR/CSC;这与稀疏矩阵装配阶段的重复条目语义一致。装配生成代数系统,直接法或迭代法求解该系统是下一阶段,不能用“矩阵已组装”表示“有限元解已经算出”。

边界条件与计算接口

边界条件必须在空间和代数系统中一致处理。齐次 Dirichlet 自由度可在编号时消去;非齐次 Dirichlet 数据可通过 lifting 写成 uh=gh+wh,也可在消元时把已知列贡献移到右端。若直接覆盖矩阵行而不处理相应列,可能破坏原有对称性。Neumann 数据进入边界积分,Robin 条件同时贡献边界矩阵和右端。

算法输入至少包括网格拓扑与几何、元素家族和次数、方程系数、源项、边界分区与数据、积分规则以及线性求解容差。输出应包含自由度向量、可重建的有限元函数、装配统计、线性残差、误差或后验指标和退出状态。退化单元、几何映射 Jacobian 非正、边界标记缺失、积分点非有限、矩阵奇异或线性求解预算耗尽都应明确报告。

逼近误差与代数条件性

对形状正则、准均匀网格上的连续 P1 元,若 Poisson 解 uH2(Ω),插值估计与 Céa 引理给出

uuhH1(Ω)Ch|u|H2(Ω).

若对偶问题还具有所需椭圆正则性,Aubin–Nitsche 论证进一步给出

uuhL2(Ω)Ch2|u|H2(Ω).

这些阶数同时依赖解的正则性、元素逼近阶和网格质量。再入角、材料界面或粗糙数据会降低 u 的 Sobolev 正则性,此时均匀加密未必呈现名义阶。

对准均匀、形状正则网格上的二阶对称椭圆问题,若适当的 Dirichlet 约束已消除连续核,离散双线性型对 h 一致强制,且扩散系数满足与 h 无关的界

0<κminκ(x)κmax<,

则刚度矩阵为对称正定。采用标准局部基时,它在系数向量 2-范数下通常满足

κ2(A)=O(h2).

常数还受区域、扩散系数对比度和网格质量影响;矩阵条件数也依赖基与缩放,不能把它当成连续算子的坐标无关常数。局部加密和细长单元可能使条件性比单一的 h 更复杂,实际求解通常需要预条件

局部到全局的概念图像

有限元空间像由许多局部布片缝成的函数。每个单元只负责一小块多项式,公共自由度规定相邻布片怎样接合;conforming 条件保证拼接后的整体函数落在弱问题要求的空间中。改变元素家族,就是同时改变局部形状、接合规则和可表示的物理量。

局部积分形成单元对附近自由度的耦合,组装把这些局部关系累加到同一全局编号。由于一个基函数只跨少数邻接单元,远处自由度不会直接相互作用,于是得到稀疏矩阵。稀疏性来自局部支撑,不是事后把小数值截成零。

误差分析也遵循局部到全局的路线。插值理论描述每个单元上的多项式能逼近多好,shape regularity 防止局部常数失控,Céa 再把最佳逼近传递给 Galerkin 解。缺少其中任一环节,都不能只凭多项式次数宣布全局收敛阶。

一维 Poisson 装配闭环

在区间 [0,1] 上取均匀节点 xi=ih,用连续分片线性基函数并固定两个端点的 Dirichlet 值。分别取单位扩散系数 κ=1 和单位质量权 c=1,单元 Ki=[xi1,xi] 的标准局部刚度和质量矩阵为

KKi=1h(1111),MKi=h6(2112).

把相邻单元共享的节点贡献相加后,内部自由度上的矩阵成为

K=1h(210121012),M=h6(410141014).

这个三对角结构直接展示“每个节点只与共享单元的邻点耦合”。刚度矩阵在这一特殊均匀一维情形中具有 h1(2,1,1) 的系数模式,而 u 的中心差分算子使用 h2(2,1,1);整体尺度还要与有限元载荷积分一同解释。右端、质量矩阵、误差范数和向非结构网格推广的机制也不同,局部系数图案相似不能把 FEM 与有限差分视作同义方法。

高维几何、求积与方程结构

在二维三角形 P1 元中,形函数是重心坐标,梯度在每个三角形内为常向量。一个全局顶点基函数只覆盖围绕该顶点的 triangle patch,因此矩阵邻接图由网格顶点共享关系决定。非结构网格可以贴合复杂边界,但若三角形出现极小角或几何映射接近奇异,插值常数、数值积分和线性系统条件都会恶化。

曲边区域若只用直边单元逼近,计算实际上发生在 Ωh 而非原区域 Ω。等参元用同类形函数表示几何和解,可以提高曲边逼近阶;几何误差仍需与解空间误差一起计入。提高多项式次数却保留低阶几何,可能让几何误差先成为主导项。

局部矩阵通常由数值求积计算。积分规则不足会改变双线性型,严重时产生 hourglass 一类伪零能模态;过度求积则增加装配成本。规则应根据系数、几何映射和基函数乘积的次数选择,并把不可精确积分的误差作为离散误差的一部分。

当离散双线性型对称且强制、适当 Dirichlet 约束已消除核,并使用相同 trial/test space 与精确或足够稳定的积分时,系统为对称正定,可使用共轭梯度法。对流项会产生非对称矩阵,Helmholtz 型问题可不定,混合方法形成鞍点系统;“由 FEM 得到”本身不保证 SPD,也不保证局部或全局守恒。

求解、自适应与复现

FEM 的可扩展工作流应把网格与自由度编号、局部积分、稀疏组装、边界处理、线性或非线性求解和误差评估分开计量。固定次数单纯形元的局部矩阵规模是常数,但全局求解成本取决于非零模式、条件数、重排序与预条件,不能只报告单元数量。

后验误差指标可把工作集中到角点、界面或局部层附近,但自适应循环还必须规定标记、加密、保持网格合法以及解向新空间的传递。若只细化而不监测形状质量,自适应过程可能用更多自由度换来更差的条件性。

复现实验应报告网格族与 shape-regularity 指标、元素三元组、自由度数、积分阶、边界施加方式、矩阵非零数、求解器与停止准则,以及 H1/L2 等明确范数下的误差。仅展示彩色场图不能区分离散误差、几何误差、积分误差和代数求解误差。

参考资料
  • Philippe G. Ciarlet, The Finite Element Method for Elliptic Problems, SIAM Classics in Applied Mathematics, 2002.
  • Susanne C. Brenner and L. Ridgway Scott, The Mathematical Theory of Finite Element Methods, 3rd ed., Springer, 2008.
  • Dietrich Braess, Finite Elements: Theory, Fast Solvers, and Applications in Solid Mechanics, 3rd ed., Cambridge University Press, 2007.
  • MIT OpenCourseWare, 18.336 Numerical Methods for Partial Differential Equations, finite element notes.