スペクトル法
ここでは、基本的な多変量計算とフーリエ級数の理解を前提としている。 もし g ( x , y ) {\displaystyle g(x,y)} が2つの実変数を取る既知の複素関数であり、gがx, yに関して周期的であるとき(つまり、 g ( x , y ) = g ( x + 2 π , y ) = g ( x , y + 2 π ) {\displaystyle g(x,y)=g(x+2\pi ,y)=g(x,y+2\pi )} である場合 )、以下を満たす関数 f(x, y) を見つけることを考える。
( ∂ 2 ∂ x 2 + ∂ 2 ∂ y 2 ) f ( x , y ) = g ( x , y ) for all x , y {\displaystyle \left({\frac {\partial ^{2}}{\partial x^{2}}}+{\frac {\partial ^{2}}{\partial y^{2}}}\right)f(x,y)=g(x,y)\quad {\text{for all }}x,y}
ただし、左辺はx, yにおけるfの2次偏微分係数をそれぞれ示している。これはポアソン方程式であり、物理的には熱伝導の問題、またはポテンシャル理論の問題として解釈できる。
フーリエ級数でfとgを書くと、
f =: ∑ a j , k e i ( j x + k y ) {\displaystyle f=:\sum a_{j,k}e^{i(jx+ky)}}
, N / 2 − 1 } {\displaystyle {\mathcal {V}}^{N}:=\operatorname {span} \left\{e^{ikx}:k\in -N/2,\dots ,N/2-1\right\}}
ただし、 u ^ k ( t ) := 1 2 π ⟨ u ( x , t ) , e i k x ⟩ {\displaystyle {\hat {u}}_{k}(t):={\frac {1}{2\pi }}\langle u(x,t),e^{ikx}\rangle } 。 これにより、 u ∈ U N {\displaystyle u\in {\mathcal {U}}^{N}} の探索は以下の問題に帰着される。
⟨ ∂ t u , e i k x ⟩ = ⟨ 1 2 u 2 − ρ ∂ x u , ∂ x e i k x ⟩ + ⟨ f , e i k x ⟩ ∀ k ∈ { − N / 2 , ... , N / 2 − 1 } , ∀ t > 0. {\displaystyle \langle \partial _{t}u,e^{ikx}\rangle =\left\langle {\frac {1}{2}}u^{2}-\rho \partial _{x}u,\partial _{x}e^{ikx}\right\rangle +\left\langle f,e^{ikx}\right\rangle \quad \forall k\in \left\{-N/2,\dots ,N/2-1\right\},\forall t>0.}
ここで、直交関係 ⟨ e i l x , e i k x ⟩ = 2 π δ l k {\displaystyle \langle e^{ilx},e^{ikx}\rangle =2\pi \delta _{lk}} を利用している。
g =: ∑ b j , k e i ( j x + k y ) {\displaystyle g=:\sum b_{j,k}e^{i(jx+ky)}}
であり、これを微分方程式に代入すると、次の方程式が得られる。
∑ − a j , k ( j 2 + k 2 ) e i ( j x + k y ) = ∑ b j , k e i ( j x + k y ) {\displaystyle \sum -a_{j,k}(j^{2}+k^{2})e^{i(jx+ky)}=\sum b_{j,k}e^{i(jx+ky)}}
ここで偏微分を無限和と交換している。これは、たとえばfに連続的な2次導関数があると仮定した場合に正当である。フーリエ展開の一意性定理により、フーリエ係数を項ごとに等しくする必要がある。
(*) a j , k = − b j , k j 2 + k 2 {\displaystyle a_{j,k}=-{\frac {b_{j,k}}{j^{2}+k^{2}}}}
これは、フーリエ係数aj,kの陽な表現である。
周期的境界条件から、ポアソン方程式はb0,0 = 0の場合に限り解を持つ。したがって、我々は自由に解の平均値a0,0を選択することができる。これは、積分定数の選択に対応する。
ここからアルゴリズムを構成するため、有限数の周波数のみを解く。 これにより、 h n {\displaystyle h^{n}} に比例する誤差が発生する。ただし h := 1 / n {\displaystyle h:=1/n} であり、 n {\displaystyle n} は処理対象の最大周波数である。