热传导方程的差分解法

  • 格式:pdf
  • 大小:545.93 KB
  • 文档页数:16

热传导方程的差分解法

物理学中对热传导现象和扩散现象等物理过程的描述, 通常采用二阶偏微分方程, 统称

为热传导方程.

9.1. 热传导方程概述

一般而言, 在介质内部传导的热量与传热时间、传热截面及温度梯度成正比. 设t时刻,

点,,xyz处的温度为,,,uxyzt, 则t时间内通过S横截面积传导的热量为

,,,uQkxyzttSn

其中,,,0kxyzt, 是介质的热传导系数. un是温度沿S面的法向微商, 即温度梯度的

法向分量. 为讨论热传导的规律, 设在介质中任取一小区域V, 其边界面S为一封闭曲面.

现讨论自1t至2t时间内, 小体积V内热量变化的情况. 首先, 通过包面S传入V的热量为

211,,,ttSuQdtkxyztdsn

由矢量积分定理可得 211,,,ttVQdtkxyztudV

其中是哈密顿算子.

设介质的比热容为c, 密度为, 则V内温度变化所消耗的热量为

212ttVuQdtcdVt

设体积V内部热源密度为,,,Fxyzt, 其物理意义是, t时刻, 点,,xyz处, 单位体积

热源在单位时间内产生的热量. 所有内部热源产生的热量为 213,,,ttVQdtFxyztdV

由能量守恒定律, 即

213QQQ

可得

2110ttVuQdtckuFdVt

因为体积和时间都是任取的, 所以有

uckuFt (9.1)

式(9.1)称为各向同性介质有热源的热传导方程, 也叫做三维非齐次热传导方程. 为简单起见,

设介质是均匀的, 即c、和k都是常量. 再设体积V内无热源, 即,,,0Fxyzt, 则有 uckut (9.2)

式(9.2)称为各向同性介质无热源的热传导方程, 也叫做三维齐次热做传导方程. 其中是拉

普拉斯算子. 式(9.2)也可表示为 2222222uuuuatxyz (9.3) 其中2kac.

9.2. 一维热传导方程的差分解法

各向同性介质中无热源的一维热传导方程为 22220,0uuaatTtx (9.4)

其中T表明时间的有限范围. 要求解方程(9.4), 需要一定的初始条件和边界条件, 统称为定

解条件.

9.2.1 初值问题 ,0uxxx (9.5)

即初始时刻空间各点的温度颁布函数.

9.2.2 初、边值混合问题

初始条件为 ,00uxxxl (9.6)

0x和xl两端的边界条件有三种情况:

第一类边界条件 120,0,utgttultgt (9.7)

第二类边界条件 

1

20,

0,utgtxtTultgtx (9.8)

其中1gt、2gt为给定函数.

第三类边界条件 

11

220,0,0,,uttutgtxtTulttultgtx

 (9.9)

其中1、2、1gt、2gt为给定函数, 其中10, 20, 且不同时为零.

用差分方法求解偏微分方程式(9.4), 首先要建立差分格式. 通常取空间步长和时间步长

均为常量. 设空间步长为h, 时间步长为, 计算时的步序号空间用i表示, 时间用k表示.

定义一阶向前商近似为

1kkkiiiuuuxh

一阶向后差商近似为

1kkkiiiuuuxh 二阶中心差商作为二阶微商近似为 21122,2kkkiiiikuuuuxh (9.10)

对时间的一阶差分近似为 1

,kkiiikuuut (9.11)

将(9.10)和式(9.11)代入(9.4), 并令 22ah (9.12)

即可得一维热传导方程的差分格式为 111121,2,,10,1,,kkkkiiiiuuuuiNkM (9.13) 其中,lTNMh, “”表示取整.

定解条件为 

0

01211,2,,1

1,11,,1ikkNuihiN

ugkugkkM





差分公式(9.13)为显式格式, 可由初始条件和边界条件逐次计算出任一时刻各点的温度. 习

惯上把时刻计算的各点称为一层, 而计算则是一层一层进行的. 计算过程中层间各点的关系

如图9.1所示. 从图中可直观地看出, 1k时刻第i个点的值是由k时刻1i, i和1i三点

的值算出来.

由于初始条件和边界条件的误差及其计算中的舍入误差, 用式(9.13)计算出的值并非该

式的精确解kiu. 设计算值与其精确之间的误差为ki, 若当k增加时, ki有减小的趋势, 或

至少不增加, 则称其差分格式为稳定差分格式. 可以证明, 对于一维热传导方程, 差分格式

(9.13)为稳定差分格式的充分条件是 2212ah (9.14)

差分格式(9.13)计算的具体步骤如下: 1. 给定2,,,,alhT

2. 计算初始值: ,lTNMh, 计算22ha

3. 计算初始值:011,2,,1iuihiN;

计算边界值:0121,11,,1kkNugkugkkM

4. 用差分格式(9.13)计算1kiu.

泛定方程 2201,0uuxttx

初始条件 ,04101uxxxx

边界条件 0,001,0uttut

程序设计:

clear

%设置参数

lambda=1;

alpha=1/6;

L=1;

h=0.01;

T=0.6;

tao=alpha*h^2/lambda;

N=fix(L/h);

M=fix(T/tao);

%设置u矩阵及x的值

I=N+1;

K=M+1;

for i=1:I

x(i)=(i-1)*h;

end

u(I,K)=zeros;

%设置初始条件

u(:,1)=4.*x.*(1-x);

%设置左端第一类边界条件

u(1,:)=0;

%设置右端第一类边界条件

u(I,:)=0;

%计算矩阵u

for k=1:K

for i=2:I-1

u(i,k+1)=1/6*u(i+1,k)+2/3*u(i,k)+1/6*u(i-1,k);

end

end

%u;

for k=1:1000:K

plot(x,u(:,k),'-k','LineWidth',2)

hold on

end

00.10.20.30.40.50.60.70.80.9100.10.20.30.40.50.60.70.80.91

x/cmTCOaxis([0,1,0,1])

xlabel ('\fontsize{14}\bfx/cm')

ylabel ('\fontsize{14}\bfTC^O')

grid on 8.6 一维扩散方程的有限差分格式

8.6.1 隐式六点差分格式(C—N格式)

以下介绍一维扩散方程或热传导方程的有限差分解法, 考虑一维扩散方程的定解问题 





22max2

002

111

222,,0,0

,

0tuxtuxtaxltttxuxtuxkaucaubcxnuaubcxln (8.62)

取,xht进行离散化, 如图8.12所示, 结点坐标为 11,2,11,2,ikxihiNtkkK (8.63)

结点处的函数为,kikiuxtu. 在,12ik点, ut用中心差商,

22ux用,ik和,1ik两点的中心差商的平均值代替, 则(8.62)

中的偏微分方程变为 1111111121222kkkkkkkkiiiiiiiiuuuuuuuuh(8.64) 引入212211,1,1aPPPhPP, 将上式中的含1ku项移至等号左边, 将含ku项移至等

号右边, 式(8.64)变为 11111112122kkkkkkiiiiiiuPuuuPuu (8.65)

上式表明由k时的值可求得1k时的u值, 但要解联立方程组, 所以这种差分格式是隐式的.

整个方程涉及到六个点处的u值, 所以称为隐式差分格式, 又称为Crank_Nicolson格式, 简

称C_N格式, 误差为22OOh, 是无条件稳定的.

8.6.2 边界条件的差分格式

由式(8.62)知, 一维扩散方程的边界条件为



111

22200uaubcxnuaubcxan (8.66)

在x轴上设置两个虚格点0i和1iN(见图8.13). 用中心差商代替.66)中的un, 则



111021

221122

2NNNbauuuchbauuuch (8.67)

由式(8.67)解出

011111222uhcbhaubu

t

1k

k

O1ii1ix图8.12