LoginSignup
3
2

More than 1 year has passed since last update.

差分法によるPoisson方程式の離散化とJacobi法で用いる漸化式

Last updated at Posted at 2019-06-18

概要

Poisson方程式を差分法で離散化したときの離散化形式と,Jacobi法で反復計算を行うときの式を導出する.
実装の必要が生じたときには忘れていることが多いので,取り急ぎ記しておく.

そのうち導出とかを加筆する.

Poisson方程式

数値計算において,Poisson方程式は様々な場面で現れてくる.

  • 1次元
\frac{\partial^2 f}{\partial x^2} = g
  • 2次元
\frac{\partial^2 p}{\partial x^2}+\frac{\partial^2 p}{\partial y^2} = \frac{\rho}{\Delta t}\theta^*
  • 3次元
\frac{\partial^2 \psi}{\partial x^2}+\frac{\partial^2 \psi}{\partial y^2}+\frac{\partial^2 \psi}{\partial z^2} = -\omega

離散化

  • 1次元
\frac{f_{i+1}-2f_{i}+f_{i-1}}{\Delta x^2} = g_i
  • 2次元
\frac{p_{i+1,j}-2p_{i,j}+p_{i-1,j}}{\Delta x^2}+\frac{p_{i,j+1}-2p_{i,j}+p_{i,j-1}}{\Delta y^2}  = \frac{\rho}{\Delta t}\theta^*_{i,j}
  • 3次元
\frac{\psi_{i+1,j,z}-2\psi_{i,j,z}+\psi_{i-1,j,z}}{\Delta x^2}+\frac{\psi_{i,j+1,z}-2\psi_{i,j,z}+\psi_{i,j-1,z}}{\Delta y^2}+\frac{\psi_{i,j,z+1}-2\psi_{i,j,z}+\psi_{i,j,z-1}}{\Delta z^2} = -\omega_{i,j,k}

漸化式

  • 1次元
f_{i}^{(m+1)} = \frac{f_{i+1}^{(m)}+f_{i-1}^{(m)}}{2} - \frac{\Delta x^2}{2}g_i
  • 2次元
p_{i,j}^{(m+1)} = \frac{\Delta y^2(p_{i+1,j}^{(m)}+p_{i-1,j}^{(m)}) +\Delta x^2(p_{i,j+1}^{(m)}+p_{i,j-1}^{(m)})-\frac{\rho}{\Delta t}\theta^*_{i,j}\Delta x^2\Delta y^2}{2(\Delta x^2+\Delta y^2)}
  • 3次元
\psi_{i,j,k}^{(m+1)} = \left.\left[\Delta y^2\Delta z^2(\psi_{i+1,j,k}^{(m)}+\psi_{i-1,j,k}^{(m)}) +\Delta x^2\Delta z^2(\psi_{i,j+1,k}^{(m)}+\psi_{i,j-1,k}^{(m)})+\Delta y^2\Delta z^2(\psi_{i,j,k+1}^{(m)}+\psi_{i,j,k-1}^{(m)})-(-\omega_{i,j,k})\Delta x^2\Delta y^2\Delta z^2\right] \middle/ 2(\Delta y^2\Delta z^2+\Delta x^2\Delta z^2+\Delta x^2\Delta y^2)\right.

準調和方程式

\nabla\cdot\left(\frac{1}{\rho}\nabla p\right) = \frac{1}{\Delta t}\theta^*

離散化

\frac{1}{\Delta x}\left(\frac{2}{\rho_{i+1,j}+\rho_{i,j}}\frac{p_{i+1,j}-p_{i,j}}{\Delta x}-\frac{2}{\rho_{i,j}+\rho_{i-1,j}}\frac{p_{i,j}-p_{i-1,j}}{\Delta x}\right)+\frac{1}{\Delta y}\left(\frac{2}{\rho_{i,j+1}+\rho_{i,j}}\frac{p_{i,j+1}-p_{i,j}}{\Delta y}-\frac{2}{\rho_{i,j}+\rho_{i,j-1}}\frac{p_{i,j}-p_{i,j-1}}{\Delta y}\right) = \frac{1}{\Delta t}\theta^*_{i,j}

漸化式

p_{i,j}^{(m+1)} = \frac{ \frac{1}{\Delta x^2} \left(\frac{p_{i+1,j}^{(m)}}{\rho_{i+\frac{1}{2},j}}+\frac{p_{i-1,j}^{(m)}}{\rho_{i-\frac{1}{2},j}}\right) + \frac{1}{\Delta y^2} \left( \frac{p_{i,j+1}^{(m)}}{\rho_{i,j+\frac{1}{2}}}+\frac{p_{i,j-1}^{(m)}}{\rho_{i,j-\frac{1}{2}}} \right) -\frac{\theta^*_{i,j}}{\Delta t}}{\frac{1}{\Delta x^2} \left(\frac{1}{\rho_{i+\frac{1}{2},j}}+\frac{1}{\rho_{i-\frac{1}{2},j}}\right) + \frac{1}{\Delta y^2} \left( \frac{1}{\rho_{i,j+\frac{1}{2}}}+\frac{1}{\rho_{i,j-\frac{1}{2}}} \right)}
\begin{eqnarray}
\rho_{i+\frac{1}{2},j} &=& \frac{\rho_{i+1,j}+\rho_{i,j}}{2}\\
\rho_{i-\frac{1}{2},j} &=& \frac{\rho_{i,j}+\rho_{i-1,j}}{2}\\
\rho_{i,j+\frac{1}{2}} &=& \frac{\rho_{i,j+1}+\rho_{i,j}}{2}\\
\rho_{i,j-\frac{1}{2}} &=& \frac{\rho_{i,j}+\rho_{i,j-1}}{2}
\end{eqnarray}
3
2
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2