next up previous
: D. 湿潤飽和調節法の定式化 : 2 次元非静力学モデルの離散化 : B. 音波減衰項について


C. 差分式の導出と誤差

appendix-c

ここでは交互格子を用いた場合の空間微分の差分式の導出と, その誤差につい てまとめる. 具体例としてフラックス格子点の変数 $u$ の, $(i,j)$ 格子点 上における $x$ 方向一階微分

\begin{displaymath}
\left[\DP{u}{x}\right]_{i,k}
\end{displaymath}

の差分式と, その誤差を考える.

C.1 2 次精度中心差分

フラックス格子点 $(i(u),j)$ 上の $u$ $(u_{i(u),j})$$x$ 方向に $-\Delta x/2$ だけずれたスカラー格子点 $(i,j)$ 上の $u$ $(u_{i,j})$ のテー ラー展開として表すと, 以下のようになる.

$\displaystyle u _{i(u),j}$ $\textstyle =$ $\displaystyle u_{i,j}
+ \left[\DP{u}{x} \right]_{i,k}\frac{\Delta x}{2}
+ \frac...
...frac{1}{3!}\left[\DP[3]{u}{x} \right]_{i,k}
\left(\frac{\Delta x}{2}\right)^{3}$  
    $\displaystyle + \frac{1}{4!}\left[\DP[4]{u}{x} \right]_{i,k}
\left(\frac{\Delta...
...\left[\DP[5]{u}{x} \right]_{i,k}
\left(\frac{\Delta x}{2}\right)^{5}
+ \cdots .$ (C.1)

同様に, フラックス格子点 $(i-1(u),j)$ 上の $u$ $(u_{i-1(u),j})$$u_{i,j}$ のテーラー展開として表すと, 以下のようになる.

$\displaystyle u_{i-1(u),j}$ $\textstyle =$ $\displaystyle u_{i,j}
- \left[\DP{u}{x} \right]_{i,k}\frac{\Delta x}{2}
+ \frac...
...frac{1}{3!}\left[\DP[3]{u}{x} \right]_{i,k}
\left(\frac{\Delta x}{2}\right)^{3}$  
    $\displaystyle + \frac{1}{4!}\left[\DP[4]{u}{x} \right]_{i,k}
\left(\frac{\Delta...
...\left[\DP[5]{u}{x} \right]_{i,k}
\left(\frac{\Delta x}{2}\right)^{5}
+ \cdots .$ (C.2)

([*]) $-$ ([*]) より,

$\displaystyle u _{i(u),j} - u_{i-1(u),j}$ $\textstyle =$ $\displaystyle \left[\DP{u}{x} \right]_{i,k}\Delta x
+ \frac{1}{3}\left[\DP[3]{u...
...frac{1}{60}\left[\DP[5]{u}{x} \right]_{i,k}
\left(\frac{\Delta x}{2}\right)^{5}$  
    $\displaystyle + O[(\Delta x)^{7}]$ (C.3)

これを変形すると $(i,j)$ 格子点上における $u$$x$ 方向一階微分の式 が得られる.
$\displaystyle \left[\DP{\pi}{x} \right]_{i(u),k}$ $\textstyle =$ $\displaystyle \frac{\pi _{i+1,j} - \pi _{i,j}}{\Delta x}
- \frac{1}{24}\left[\DP[3]{\pi}{x} \right]_{i(u),k}
\left(\Delta x\right)^{2}$  
    $\displaystyle - \frac{1}{1920}\left[\DP[5]{\pi}{x} \right]_{i(u),k}
\left(\Delta x\right)^{4}
+ O[(\Delta x)^{6}]$ (C.4)

上式の $\left(\Delta x\right)^{2}$ 以上の高次項を無視することで, 交互格子を用いた場合の 2 次精度中心差分の式

\begin{displaymath}
\left[\DP{u}{x} \right]_{i(u),k} =
\frac{u_{i+1,j} - u_{i,j}}{\Delta x}
\end{displaymath} (C.5)

が得られる. このときの誤差の大きさは
\begin{displaymath}
\left\vert\frac{1}{24}\left[\DP[3]{u}{x} \right]_{i(u),k}
\left(\Delta x\right)^{2}\right\vert
\end{displaymath} (C.6)

となる.

C.2 4 次精度中心差分

2 次精度中心差分の式を求める際に用いた([*]), ([*])に加え, $(i,j)$ から $x$ 方向に $\pm
\Delta 3x/2$ だけずれたフラックス格子点での $u$ $(u _{i+1(u),j}, u
_{i-2(u),j})$ の値を$u_{i,j}$ のテーラー展開として求める.

$\displaystyle u _{i+1(u),j}$ $\textstyle =$ $\displaystyle u_{i,j}
+ \left[\DP{u}{x} \right]_{i,k}\frac{3\Delta x}{2}
+ \fra...
...rac{1}{3!}\left[\DP[3]{u}{x} \right]_{i,k}
\left(\frac{3\Delta x}{2}\right)^{3}$  
    $\displaystyle + \frac{1}{4!}\left[\DP[4]{u}{x} \right]_{i,k}
\left(\frac{3\Delt...
...left[\DP[5]{u}{x} \right]_{i,k}
\left(\frac{3\Delta x}{2}\right)^{5}
+ \cdots .$ (C.7)
$\displaystyle u _{i-2(u),j}$ $\textstyle =$ $\displaystyle u_{i,j}
- \left[\DP{u}{x} \right]_{i,k}\frac{3\Delta x}{2}
+ \fra...
...rac{1}{3!}\left[\DP[3]{u}{x} \right]_{i,k}
\left(\frac{3\Delta x}{2}\right)^{3}$  
    $\displaystyle + \frac{1}{4!}\left[\DP[4]{u}{x} \right]_{i,k}
\left(\frac{3\Delt...
...left[\DP[5]{u}{x} \right]_{i,k}
\left(\frac{3\Delta x}{2}\right)^{5}
+ \cdots .$ (C.8)

([*]) $-$ ([*]) より,

$\displaystyle u _{i+1(u),j} - u_{i-2(u),j}$ $\textstyle =$ $\displaystyle \left[\DP{u}{x} \right]_{i,k}3\Delta x
+ \frac{1}{3}\left[\DP[3]{...
...rac{1}{60}\left[\DP[5]{u}{x} \right]_{i,k}
\left(\frac{3\Delta x}{2}\right)^{5}$  
    $\displaystyle + O[(\Delta x)^{7}]$ (C.9)

([*])$\times 27 -$([*])を行い $(\Delta x)^{3}$ の項を消去すると,

$\displaystyle 27(u _{i(u),j} - u_{i-1(u),j}) - (u _{i+1(u),j} - u_{i-2(u),j})$ $\textstyle =$ $\displaystyle \left[\DP{u}{x} \right]_{i,k}24\Delta x
- \frac{216}{60}\left[\DP[5]{u}{x} \right]_{i,k}
\left(\frac{\Delta x}{2}\right)^{5}$  
    $\displaystyle + O[(\Delta x)^{7}]$ (C.10)

これを変形して $(i,j)$ 格子点上における $u$$x$ 方向一階 微分の式が得られる.

$\displaystyle \left[\DP{u}{x}\right]_{i,k}$ $\textstyle =$ $\displaystyle \frac{9}{8}\left(\frac{u_{i,j} - u _{i-1,j}}{\Delta x}\right)
- \frac{1}{24}\left(\frac{u_{i+1,j} - u _{i-2,j}}{\Delta x}\right)$  
    $\displaystyle + \frac{3}{640}\left[\DP[5]{u}{x} \right]_{i,k}
\left(\Delta x\right)^{4}
+ O[(\Delta x)^{6}]$ (C.11)

上式の $\left(\Delta x\right)^{4}$ 以上の高次項を無視することで, 交互格子を用いた場合の 4 次精度中心差分式

\begin{displaymath}
\left[\DP{u}{x}\right]_{i,k} =
\frac{9}{8}\left(\frac{u_{i...
...rac{1}{24}\left(\frac{u_{i+1,j} - u _{i-2,j}}{\Delta x}\right)
\end{displaymath} (C.12)

が得られる. このときの誤差の大きさは
\begin{displaymath}
\left\vert\frac{3}{640}\left[\DP[5]{u}{x} \right]_{i(u),k}
\left(\Delta x\right)^{4}\right\vert
\end{displaymath} (C.13)

となる.


next up previous
: D. 湿潤飽和調節法の定式化 : 2 次元非静力学モデルの離散化 : B. 音波減衰項について
Odaka Masatsugu 平成18年10月19日