N体シミュレーション
Particle-Mesh (PM) 法は高速フーリエ変換に基づいて重力ポテンシャルの計算を行う。まず最初に計算領域にグリッドを生成し、各頂点での密度の値をその近傍の粒子分布に基づいて決定する。重力ポテンシャルは (フーリエ空間では) ラプラス方程式
− k 2 Φ k = 4 π G ρ k {\displaystyle -k^{2}\Phi _{\mathbf {k} }=4\pi G\rho _{\mathrm {k} }}
により密度場に結びついているため、密度場のフーリエ係数 ρ k {\displaystyle \rho _{\mathbf {k} }} を求め、そこから逆フーリエ変換することにより重力ポテンシャル Φ {\displaystyle \Phi } や重力場 − ∇ Φ {\displaystyle -\nabla \Phi } を求めることができる。この計算時間はグリッド数を M {\displaystyle M} とすると O ( M ln  M ) {\displaystyle {\mathcal {O}}(M\ln M)} である。
なお近くの粒子からの重力は直接法で、遠方の粒子からの寄与は PM 法で計算する複合的な手法のことを Particle-Particle Particle-Mesh (PM) 法と呼ぶ。
Φ ^ ( t , x ) = − G m a ∑ n ∈ Z 3 e r f c ( α | x − n L | ) | x − n L | − G m π a L ∑ h ≠ 0 exp  ( − π 2 | h | 2 α 2 L 2 ) 1 | h | 2 e i k h ⋅ x + G m a π α 2 L 3 {\displaystyle {\hat {\Phi }}(t,{\mathbf {x} })=-{\frac {Gm}{a}}\sum _{{\mathbf {n} }\in \mathbf {Z} ^{3}}{\frac {{\mathrm {erfc} \,}(\alpha |{\mathbf {x} }-{\mathbf {n} }L|)}{|{\mathbf {x} }-{\mathbf {n} }L|}}-{\frac {Gm}{\pi aL}}\sum _{{\mathbf {h} }\neq {\mathbf {0} }}\exp \left(-{\frac {\pi ^{2}|{\mathbf {h} }|^{2}}{\alpha ^{2}L^{2}}}\right){\frac {1}{|{\mathbf {h} }|^{2}}}e^{i{\mathbf {k} }_{\mathbf {h} }\cdot {\mathbf {x} }}+{\frac {Gm}{a}}{\frac {\pi }{\alpha ^{2}L^{3}}}}
となる。ここに α {\displaystyle \alpha } は任意の正の定数、 e r f c {\displaystyle \mathrm {erfc} } は相補誤差関数である。