next up previous contents
: スキームの適合性と安定性 : 1 次元 MPDATA : 時間方向の差分と誤差   目次

1 次元 MPDATA

MPDATA では(8)式に現れた数値拡散の効果を補正することを考える. まず数値拡散による $\psi $ の変化


\begin{displaymath}
\DP{}{x}\left(K_{impl}\DP{\psi }{x}\right),
\end{displaymath}

が,

\begin{displaymath}
- \DP{}{x}(u_{d}\psi ),
\end{displaymath} (9)

と表されるような拡散速度(diffusion velocity) $u_{d}$


\begin{displaymath}
u_{d}=\left\{
\begin{array}{ccl}
-\frac{K_{impl}}{\psi}\D...
...&\psi >0 \\
0, & \mbox{if} & \psi =0.
\end{array} \right.
\end{displaymath} (10)

の移流によるものであるとする. $u_{d}$ の移流による変化分を補正するため 反拡散速度(antidiffusive velocity) $\tilde{u}$

\begin{displaymath}
\tilde{u}= -u_{d},
\end{displaymath} (11)

を定義し, これを用いた上流差分(3)をもう一度計算する. 全体の手続きをまとめると,

  1. 普通に上流差分を計算する.
    \begin{displaymath}
\psi _{i}^{*} = \psi _{i}^{n} -
\{F(\psi _{i}^{n},\psi _{...
...
F(\psi _{i-1}^{n},\psi _{i}^{n},u_{i-\frac{1}{2}}^{n})\}.
\end{displaymath} (12)

  2. $\tilde{u}$ を求め, それを用いて上流差分を計算する.
    \begin{displaymath}
\psi _{i}^{n+1} = \psi _{i}^{*} -
\{F(\psi _{i}^{*},\psi ...
...(\psi _{i-1}^{*},\psi _{i}^{*},\tilde{u}_{i-\frac{1}{2}})\}.
\end{displaymath} (13)

    ただし,

    \begin{displaymath}
\tilde{u}_{i+\frac{1}{2}} = \frac{
(\vert u_{i+\frac{1}{2}...
...}^{*})}
{(\psi _{i}^{*}+\psi _{i+1}^{*}+\epsilon )\Delta x}.
\end{displaymath} (14)

となる. $\epsilon $ は 0 割を防ぐための微小量で Smolarkiewicz(1983) では $10^{-15}$ としている. (13), (14)式を用いた 計算を繰り返すことで精度はよくなるが, Smolarkiewicz(1984) では 3 回以上 繰り返しても計算量が増えるわりには精度が上がらなかったとしている.


next up previous contents
: スキームの適合性と安定性 : 1 次元 MPDATA : 時間方向の差分と誤差   目次
Odaka Masatsugu 平成18年2月10日