常微分方程初值问题的数值解法的一些基本概念

2020/11/20 常微分方程初值问题的数值解法

常微分方程初值问题的数值解法的一些基本概念

# 一般 m 阶常微分方程

一般 mm 阶常微分方程的形式为

F(x,y,y,y,,y(m))=0(1)F(x,y,y',y'',\cdots,y^{(m)}) = 0 \tag{1}

如果方程 (1)(1) 能写成

amy(m)+am1(x)ym1++a0(x)y=g(x)a_m y^{(m)} + a_{m-1}(x) y^{m-1} + \cdots + a_0(x) y = g(x)

则它是 mm 阶线性方程(其中 am0a_m \neq 0

如果方程 (1)(1) 能写成

ym=F(x,y,y,y,,y(m)1)y^{m} = F(x,y,y',y'',\cdots,y^{(m)-1})

则称方程为显式方程。

# 步长

如果初值问题在区间 [x0,b][x_0, b] 上的离散解,引入点列 xn{x_n} 满足

xn=xn1+hn(n=1,2,)x_n = x_{n-1} + h_n \qquad (n = 1,2,\cdots)

其中 hn>0h_n > 0 称为步长, xnx_n 称为节点。亦有等步长情况:

xn=x0+nhx_n = x_0 + n h

# 线性多步法

如果确定序列 {yn}\{y_n\} 的一个计算方法是由 yn+jy_{n+j}fn+jf_{n+j} 的线性关系所组成,即

j=0kajyn+j=hj=0kβjfn+j\sum_{j=0}^{k} a_j y_{n+j} = h \sum_{j=0}^{k} \beta_j f_{n+j}

则此方法称为 kk 步的线性多步法,其中,设 ak0a_k \neq 0,且 a0,β0a_0, \beta_0 两者不能全为 0。

可变形为

yn+k=a0yna1yn+1ak1yn+k1+h(β0fn+β1fn+1++βkfn+k)\begin{aligned} y_{n+k} = &- a_0 y_n - a_1 y_{n+1} - \cdots - a_{k-1} y_{n+k-1} \\ &+ h(\beta_0 f_n + \beta_1 f_{n+1} + \cdots + \beta_k f_{n+k}) \end{aligned}

βk=0\beta_k=0 则称之为显式线性多步法,若 β0\beta \neq 0 则称之为隐式线性多步法。

# 单步法

yn+1=yn+hϕ(xn,yn,yn+1,h)y_{n+1} = y_n + h\phi(x_n,y_n,y_{n+1},h)

若函数 ϕ\phi 不显含 yn+1y_{n+1} 则称之为显式单步法,若函数 ϕ\phi 显含 yn+1y_{n+1} 则称之为隐式单步法。

#

若显式单步法的某一种方法满足

y(x+h)y(x)hϕ(x,y(x),h)=O(hp+1)y(x+h) - y(x) -h\phi(x, y(x), h) = O(h^{p+1})

的最大整数 pp 称为该方法的

# 相容

ϕ(x,y,0)=f(x,y)\phi(x,y,0) = f(x,y)

则称该方法与初值问题相容

若利用泰勒公式展开,则与初值问题相容的方法至少是一阶方法。

# 收敛

limh0,n=y(x)\lim \limits_{h \to 0, n \to \infty} = y(x)

则称该方法收敛。

::: tips 在实际使用的方法中,应该是相容和收敛的 :::

# 整体截断误差

en+1=y(xn+1)yn+1e_{n+1} = y(x_{n+1}) - y_{n+1}

称为数值方法在 xn+1x_{n+1} 点的整体截断误差。

# 局部截断误差

Tn+1=y(xn+1)y(xn)hϕ(xn,y(xn),h)T_{n+1} = y(x_{n+1}) - y(x_n) - h \phi(x_n, y(x_n), h)

称为方法在 xn+1x_{n+1} 点的局部截断误差。

# 主局部截断误差

如果方法是 pp 阶方法,则局部截断误差可以写成

Tn+1=ψ(xn,y(xn)hp+1)+O(hp+2)T_{n+1} = \psi(x_n, y(x_n) h^{p+1}) + O(h^{p+2})

则称 ψ(xn,y(xn)hp+1)\psi(x_n, y(x_n) h^{p+1}) 为方法在 xn+1x_{n+1} 的主局部截断误差。

Last Updated: 2023-10-29T08:26:04.000Z