スペクトル法

提供: testwiki
2025年2月19日 (水) 20:15時点における133.86.227.82 (トーク)による版 (参考文献)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

スペクトル法は、主に高速フーリエ変換を用いた微分方程式の数値解法の総称であり、応用数学科学計算で使用されている。 微分方程式の解をある「基底関数」の和によって近似し、方程式を充足する和の係数を求める。基底関数の選び方としては、例えば正弦波を用いる方法があり、この場合の解の近似表現はフーリエ級数になる。

スペクトル法は有限要素法と密接に関連しており、基本的にはどちらも同じアイデアに基づいている。これらの主な違いは、近似に用いる基底関数の定義域にある。スペクトル法は近似対象とする関数の定義域全体に渡って非零になるような基底関数を使用するため全体をカバーできるのに対し、有限要素法はある点の近傍など限られた範囲にのみ基底関数を用い、残りはゼロであると仮定する。こうした理由から、スペクトル法と有限要素法はそれぞれ、大域的アプローチ、局所的アプローチと呼ばれ区別される。

大域的アプローチの性質から、スペクトル法は解が滑らかな関数である場合に誤差が指数関数に従い収束するという特性(「指数収束」)を持ち、有限要素法よりも遥かに高速に収束することが知られている。 ただし、指数収束は解が滑らかでない場合には保証されないため、たとえば単連結な三次元定義域におけるテンプレート:Ill[1]といった課題に対しては一般に成立しない。これはインパルス波の微分不可能性に起因する。なお、有限要素法の分野でも、要素の次数がグリッド幅hと反比例して大きくなるような手法を「テンプレート:Ill」と呼ぶことがあるが、これはスペクトル法とは厳密には異なる手法である。(「#スペクトル要素法との関係」で後述)

スペクトル法を使用すると、 常微分方程式 (ODE)や偏微分方程式 (PDE)などの微分方程式を含む固有値問題を解くことができる。 時間依存のPDEにスペクトル法を適用した場合、解は時間依存の係数を持つ基底関数の合計として記述される。これをPDEに代入すると、ODEの任意の数値法を使用して解くことができる係数のODEシステムが生成される。 ODEの固有値問題も同様に行列固有値問題に変換されるテンプレート:要出典

スペクトル法は、1969年より数学者のスティーブン・オルザグによって出版された複数編に渡る論文により確立されたものであるが、一連の論文は今日で多く実装されている周期幾何問題を対象にしたフーリエ級数を用いたもの以外にも、以下のような手法を含んでいる。

  • 有限幾何・非有界幾何のための多項式スペクトル法
  • 高次非線形問題のための擬球スペクトル法
  • 定常問題の高速解法のためのスペクトル反復法

これらのスペクトル法は、通常、選点法テンプレート:Ill、およびタウ法のいずれかを用いることで実装される。

スペクトル法は有限要素法よりも計算コストが低くなるが、複素幾何や不連続係数の問題では精度が低下する。 この誤差の増加は、 ギブス現象によるものである。

スペクトル法の例

具体例(線形の場合)

ここでは、基本的な多変量計算フーリエ級数の理解を前提としている。 もしg(x,y)が2つの実変数を取る既知の複素関数であり、gx, yに関して周期的であるとき(つまり、 g(x,y)=g(x+2π,y)=g(x,y+2π)である場合 )、以下を満たす関数 f(x, y) を見つけることを考える。

(2x2+2y2)f(x,y)=g(x,y)for all x,y

ただし、左辺はx, yにおけるfの2次偏微分係数をそれぞれ示している。これはポアソン方程式であり、物理的には熱伝導の問題、またはポテンシャル理論の問題として解釈できる。

フーリエ級数でfgを書くと、

f=:aj,kei(jx+ky)
g=:bj,kei(jx+ky)

であり、これを微分方程式に代入すると、次の方程式が得られる。

aj,k(j2+k2)ei(jx+ky)=bj,kei(jx+ky)

ここで偏微分を無限和と交換している。これは、たとえばfに連続的な2次導関数があると仮定した場合に正当である。フーリエ展開の一意性定理により、フーリエ係数を項ごとに等しくする必要がある。

(*) aj,k=bj,kj2+k2

これは、フーリエ係数aj,kの陽な表現である。

周期的境界条件から、ポアソン方程式b0,0 = 0の場合に限り解を持つ。したがって、我々は自由に解の平均値a0,0を選択することができる。これは、積分定数の選択に対応する。

ここからアルゴリズムを構成するため、有限数の周波数のみを解く。 これにより、hnに比例する誤差が発生する。ただしh:=1/nであり、nは処理対象の最大周波数である。

アルゴリズム

  1. gのフーリエ変換(bj,k) を計算
  2. 式(*)を用いてfのフーリエ変換(aj,k)を計算
  3. (aj,k)の逆フーリエ変換を実行してfを計算

ここでは幅nの周波数の有限窓のみに関心があるため、このアルゴリズムは高速フーリエ変換を使用して実行できる。したがって、アルゴリズムはグローバルにテンプレート:Nowrap時間で実行できる。

非線形の場合

スペクトルアプローチを使用し、強制的な非定常非線形バーガース方程式を解く。

与えられたu(x,0)周期領域でx[0,2π) 、次式を満たすu𝒰を見つけることを考える。

tu+uxu=ρxxu+fx[0,2π),t>0

ここで、 ρ粘度係数である。 弱保存形では、これは次式のようになる。

tu,v=x(12u2+ρxu),v+f,vv𝒱,t>0

ただし、f,g:=02πf(x)g(x)dx内積である。 部分積分と周期性により、

tu,v=12u2ρxu,xv+f,vv𝒱,t>0.

フーリエ- ガラーキン法を適用するには、以下の両方を選択する。

𝒰N:={u:u(x,t)=k=N/2N/21u^k(t)eikx}
𝒱N:=span{eikx:kN/2,,N/21}

ただし、u^k(t):=12πu(x,t),eikx 。 これにより、u𝒰Nの探索は以下の問題に帰着される。

tu,eikx=12u2ρxu,xeikx+f,eikxk{N/2,,N/21},t>0.

ここで、直交関係eilx,eikx=2πδlkを利用している。ただしδlkクロネッカーデルタである。上記の3つの項をkについて整理すると次のようになる。

tu,eikx=tlu^leilx,eikx=ltu^leilx,eikx=2πtu^k,f,eikx=lf^leilx,eikx=2πf^k, and12u2ρxu,xeikx=12(pu^peipx)(qu^qeiqx)ρxlu^leilx,xeikx=12pqu^pu^qei(p+q)x,ikeikxρillu^leilx,ikeikx=ik2pqu^pu^qei(p+q)x,eikxρkllu^leilx,eikx=iπkp+q=ku^pu^q2πρk2u^k.

これらの3つの項をkについてまとめることで次式を得る。

2πtu^k=iπkp+q=ku^pu^q2πρk2u^k+2πf^kk{N/2,,N/21},t>0.

両辺を2πで除することで、最終的に次式を得る。

tu^k=ik2p+q=ku^pu^qρk2u^k+f^kk{N/2,,N/21},t>0.

フーリエ変換後の初期条件u^k(0)と外力f^k(t) を入力として与えることで、この常微分方程式の結合系の時間発展は、ルンゲ=クッタ法などを使った数値積分によって解くことができる。 第一項(非線形項)は畳み込み演算であるため、これも効率的に評価するための変換がいくつか存在する。 BoydおよびCanutoらの参考文献を参照してください。詳細については。

スペクトル要素法との関係

gが無限回微分可能な関数であるとき、高速フーリエ変換を使用する数値アルゴリズムは、グリッドサイズhのどの多項式よりも速く収束することを示すことができる。 つまり、nが正であるとき、任意の十分小さな値hに対し、誤差がCnhn以下になるような Cn<が存在する。n>0に対し、Cnが適切に選ばれることでこの誤差条件が満たされる手法はn次スペクトル法と呼ばれる。

スペクトル要素法もまた非常に高次の有限要素法であるため、収束特性には類似点がある。 ただし、スペクトル法は特定の境界値問題の固有分解を用いるためそれだけ適用範囲が狭くなるが、有限要素法はこうした固有分解に依存しないため、任意の楕円境界値問題に対して適用することができる。

関連記事

参考文献

テンプレート:Reflist

  1. pp 235, Spectral Methods: evolution to complex geometries and applications to fluid dynamics, By Canuto, Hussaini, Quarteroni and Zang, Springer, 2007.