有限元法是一种数值方法,它对物理、工程等领域中出现的微分方程给出近似解。与更常用的有限差分方法一样,有限元法通过将域细分为更小的区域(网格),将几何空间(或域)中出现的问题简化为寻找有限点的数值解。
我们首先考虑一个经典的导热问题,如图1 所示,中间是一根长度为L且截面为常数的细长均匀金属丝,左端是固定的热通量q,右端保持恒温T=
,杆的长度被绝缘材料包围。
我们进一步假设,电流可以通过这条金属丝,它将作为内部热源Q,利用傅里叶定律,我们可以很容易地写出这根金属丝上温度分布的微分方程:
(1)
其中,x是长度坐标,K为材料导热系数(假设常数),Q是单位体积内的热量
边界条件为:
(2)
(3)
假设Q是可积分的,通过直接积分法,可以得到:
(4)
如果Q是常数,那么
(5)
方程(5)只需要几行MATLAB代码,并且可以用符号和数字解决问题。
clear all
clc
syms x C1 C2 Q k TL L
dT = int(-(Q/k),x)+C1
T = int(dT,x)+C2
s=solve(subs(T,x,0),subs(T,x,L)-TL,C1,C2)
s.C1
s.C2
T = subs(T,{C1,C2},{s.C1,s.C2})
后面,我们将使用公式(4)作为基准,将得到的解与有限元程序进行比较。这个例子很简单,并且有唯一的解。如果更复杂的问题不容易得到解析解;因此,充分理解数值解在简单问题中的行为,对于将数值逼近恰当地解释为更复杂的问题是至关重要的。