前言
数学物理方程中的各类定解问题,都是有生活中碰到的各类问题归纳总结而来,但课本中提出的一些解法只可求解一些方程较为简单且求解区域规则的的问题,而工程技术中遇到的许多问题往往无法满足以上陈述的两个条件,因而无法取出有效的准确解,求解近似解可有效解决此类问题。笔者在学习王元明老师编纂的数理方程第五版教材后,根据教材第七章提及的差分解法并结合网上相关资料做了一些归纳。
由于个人水平有限,本文不讨论解的存在性与差分格式的收敛性问题,出现错误的地方也请不吝赐教。
一、差分方程的概念
先回顾一下导数的定义式:
f ′ ( x ) = lim h → 0 f ( x + h ) − f ( x ) h = lim h → 0 f ( h ) − f ( x − h ) h f^{'}(x)=\lim\limits_{h\to0}\frac{f(x+h)-f(x)}{h}=\lim\limits_{h\to0}\frac{f(h)-f(x-h)}{h} f′(x)=h→0limhf(x+h)−f(x)=h→0limhf(h)−f(x−h)
函数的导数表示为了函数值的增量与自变量增量的比值,式中函数值的增量即称作函数的差分。
由此,对于一个微分方程,我们可以把其中的微分用差分来代替,并把代替后得到的方程成为差分方程,也叫递推关系。
二、差分格式的构造
函数的一阶导与二阶导在 ∣ Δ x ∣ \left|\Delta x \right| ∣Δx∣很小的情况下可分别用一节差商和二阶差商代替。方便起见,本文直接给出一、二阶差商形式,下文所作讨论也均针对一、二阶偏微分方程。
对于一阶导数的近似有:
u ′ ( x ) = f ( x + h ) − f ( x ) h 或 u ′ ( x ) = f ( h ) − f ( x − h ) h u^{'}(x)=\frac{f(x+h)-f(x)}{h}或u^{'}(x)=\frac{f(h)-f(x-h)}{h} u′(x)=hf(x+h)−f(x)或u′(x)=hf(h)−f(x−h)
二阶导数的近似有:
u ′ ′ ( x ) = u ( x + Δ x ) − 2 u ( x ) + u ( x − Δ x ) ( Δ x ) 2 u^{''}(x)=\frac{u(x+\Delta x)-2u(x)+u(x-\Delta x)}{(\Delta x)^{2}} u′′(x)=(Δx)2u(x+Δx)−2u(x)+u(x−Δx)
举一维波动方程 ∂ 2 u ∂ t 2 = a 2 ∂ 2 u ∂ x 2 \frac{\partial^{2} u}{\partial t^{2}}=a^{2}\frac{\partial^{2}u}{\partial x^{2}} ∂t2∂2u=a2∂x2∂2u为例,将式中的二阶导数用二阶差商代替得:
u ( t + Δ t ) − 2 u ( t ) + u ( t − Δ t ) ( Δ t ) 2 = a 2 u ( x + Δ x ) − 2 u ( x ) + u ( x − Δ x ) ( Δ x ) 2 \frac{u(t+\Delta t)-2u(t)+u(t-\Delta t)}{(\Delta t)^{2}}=\\a^{2}\frac{u(x+\Delta x)-2u(x)+u(x-\Delta x)}{(\Delta x)^{2}} (Δt)2u(t+Δt)−2u(t)+u(t−Δt)=a2(Δx)2u(x