2
応用数学議論
文献あり

近接固有値に属する固有ベクトルの計算困難性について

218
0

近接固有値に属する固有ベクトルの計算困難性

非常に近い値をもつ固有値を近接固有値という.一般に,近接固有値に属する固有ベクトルを数値計算することは困難な課題である.
まずは具体的な例でこれを確認してみよう.

行列の近接固有値

実数tR に対して実対称行列 A(t)
A(t)=(1tt1)
と定める.解析的に計算されるA の固有値は
λ1(t)=1|t|,  λ2(t)=1+|t|
となる.t0 のときに λ1(t)λ2(t)となるので,この2つの固有値は近接固有値と呼ばれる.
ここで,
u1=12(11)u2=12(11)
は解析的に計算されるA の固有ベクトルとなる.
ただし,t の符号によって固有値・固有ベクトルの対応関係が変化することに注意する必要がある.
実際は,
t>0 のときは(λ1,u1), (λ2,u2) が行列Aの固有対となり,
t<0 のときは(λ1,u2), (λ2,u1) が行列Aの固有対となる.
t=0のときは固有値は重複(λ1=λ2)となり,u1,u2 が固有空間の基底となる.

図1にt=0 の近傍において,固有値λ1(t),λ2(t)tに関するグラフを示した.

!FORMULA[24][-586356060][0]のグラフ λk(t) (k=1,2)のグラフ

近接固有値に属する固有ベクトルの数値計算

近接固有値に属する固有ベクトルを計算することが難しいことを感覚的に理解するために,
固有値が近接する場合(t0)における行列A(t)の固有ベクトルをべき乗法を使って計算機で求めてみよう.

べき乗法とは,行列 A の最大固有値に対応する固有ベクトルを反復計算により近似的に求める手法である.
初期ベクトル v(0) を適当に選び,以下の反復を行う:
v(k+1)=Av(k)Av(k),
ここで はユークリッドノルムを表す.
理論的には十分な反復回数によりv(k)A の最大固有値に対応する固有ベクトルに収束することが知られているが,
固有値間の差が非常に小さい場合には丸め誤差の影響が顕著となり,計算結果が真の解から回転してしまう問題が生じる.
以下に,実際の数値計算環境下での検証例について述べる.
ここでは,t>0の場合に行列
A(t)=(1tt1)
を考える.解析的に求めた固有値は
λ1=1t,λ2=1+t
であり,最大固有値 λ2 に対応する真の固有ベクトルは
vtrue=12(11)
となる.
数値実験では,MATLAB の double 精度環境下においてべき乗法による反復計算を用い,
最大反復回数を 1000 回,収束判定の閾値を 1012 と設定した.
また,入力パラメータ t105 から 101 まで対数スケールで変化させ,各 t に対して
べき乗法により計算された固有ベクトル v と真の固有ベクトル vtrueとの間の回転角
θ=arccos(|vtrueTv|)
を求めた.図2は横軸を t(対数スケール),縦軸を回転角 θ(度)として,
べき乗法により求めた近似固有ベクトルと解析的に求めた真の固有ベクトルとの間の回転角の変化を示すものである.
近似固有ベクトルの回転角 近似固有ベクトルの回転角

t0に近づくに従って回転角が大きくなっていることを見ると,この方法ではtが小さいときに正しい近似固有ベクトルを計算できていないことが分かる.

手法や設定により異なるものの,丸め誤差がある限り普通の数値計算では固有ベクトルを正しく計算できるtの下限が存在する.この意味で,数値計算を用いて「すべてのt(0,t0) に対してv^vtrueとなる」近似固有ベクトルv^を求めることはill-posed problem である.

ディリクレラプラシアンの近接固有値

角度θ(0,π/3)に対して,次の頂点を持つ三角形Tθを考えよう:
(0,0), (1,0), (cosθ,sinθ).

三角形領域Tθにおいて,ラプラシアンのディリクレ固有値問題は次のように定式化される:
(1)Δu=λuin Tθ,u=0on Tθ,
ここで関数 u は固有関数と呼ばれ,λ は固有値と呼ばれる.
ただし,2次元領域におけるラプラシアンΔは次式で定義される微分作用素である:
Δ:=2x2+2y2.
スペクトル定理によりラプラシアンの固有値は可算無限個存在し,非減少の実数列をなす.
三角形領域Tθは連結であるから第一固有値λ1は単純あり,固有値の列を次のように表すことができる:
0<λ1<λ2λ3.

固有値の近似計算

θ=π/3のとき,三角形Tθは正三角形となる,
Tθが正三角形に近いときの固有値λ2,λ3の挙動に注目してみよう.
McCartin により,θ=π/3のときこれらの固有値は重複(λ2=λ3)となることが知られている.
図3はθπ/3のとき,数値計算によりθに関するλ2,λ3のグラフを描いたものである.
θ=π/3で重複固有値が存在し,その近傍でλ2,λ3が近接固有値となっていることが分かる.

第2,3固有値の挙動 第2,3固有値の挙動

固有値の差分商公式と近接固有値に属する固有関数の数値計算

偏微分方程式の数値解法の1つである有限要素法を用いると,ラプラシアンの固有値問題 (1) は離散化され,固有値・固有関数の数値計算を次のような形式の一般化固有値問題を解くことに帰着できる:
(2)Mx=λ^Nx  
ただし,M,Nは同じサイズを持つ正定値対称行列である.

正三角形に近い形状をもつ三角形領域Tθ (θπ/3)の場合のように,もとの固有値問題 (1) の固有値が近接する場合には,行列固有値問題 (2)を解くことによって得られる近似固有値λ^近接し,本ノートの前半で説明したようなことと同様の現象が起こり,通常の方法ではうまく固有ベクトルxを計算することができない.(したがって,固有関数もうまく計算できない.)

ところが「固有値の差分商公式」を用いて計算結果を補正することにより,近接固有値に属する固有関数もうまく数値計算することができる(かもしれない).

注意書き1:ここから先に書かれていることは別に論文で裏付けられたことではないので注意(ここから前もそうですが)

固有値の差分商公式と近似固有関数の補正

差分商公式の主張を説明する.

  • パラメータ p=(x,y)(R2) に対して,頂点が (0,0),(1,0),(x,y) である三角形領域を Tp とする.

  • 固有値 λnp,,λNpp において重複している,つまり
    λnp==λNp(=:λ)
    であると仮定する.
    ここで,E を固有値 λ に対応する固有空間とする.

  • t>0,eR2 かつ e2=1 のとき,pt:=p+te(=:(x~,y~))p の摂動とする.記号を簡略化するために,Tt:=TptT0:=Tp,および λit:=λipt と表す.固有値 λnt,,λNt に対応する線形独立な固有関数をそれぞれ unt,,uNt とする.

  • また,St:R2R2を三角形領域 T0Tt に写す線形変換とする.

  • u~it:=uitSt(H01(T0))i=n,,N)として,E~t:=span{u~nt,,u~Nt}(H01(T0))
    と定める.

  • さらに,固有値の差分商を
    Dtλi:=(λitλ)/t(i=n,,N)
    と表し,次のように 2×2 行列 Pteを定義する:Pte:=(St1StI)/t.

これらの設定のもと,以下の差分商公式が成り立つ:

固有値の差分商公式 ([プレプリント [endoliu]])

dimE~t=dimE であると仮定する.E~t の基底を {ϕ~i}i=ni=NE の基底を {ϕi}i=ni=N とし,次のように定義する:
Mt:=((Pteϕ~i,ϕj)T0),  Nt:=((ϕ~i,ϕj)T0)(i,j=n,,N).
このとき,差分商 Dtλi は次の行列固有値問題の (in+1) 番目の固有値となる:
Mtσ=μNtσ.
さらに,摂動された領域 Tt における固有関数 uit(i=n,,N) に対して,次が成り立つ:
u~it=uitSt=sniϕ~n++sNiϕ~N(E~t)(i=n,,N),
ここで,σi:=(sni,,sNi) は固有値Dtλiに対応する固有ベクトルとなる.

注意書き2:ここから先に書かれていることは引用しているプレプリントの結果とは関係ありません

さて前節では,正三角形Tp(p=(cos(π/3),sin(π/3))ではλ2,λ3が近接固有値となる事に触れた.
以下では,正三角形Tp(p=(cos(π/3),sin(π/3)) の頂点pe=(sin(π/3),cos(π/3))方向にt>0だけ摂動してできる三角形領域Ttにおける固有関数u2t,u3tを正しく数値計算する例を与える.

アルゴリズム

以下のアルゴリズムで正しくu2t,u3tを数値計算することができる:

  1. 正三角形領域T0 において,通常の有限要素法で近似固有関数求めて,ϕ2,ϕ3とする.
  2. 摂動された三角形領域Tt において,通常の有限要素法で近似固有関数求めて,ϕ~2,ϕ~3とする.
  3. 上で求めたϕ2,ϕ3ϕ~2,ϕ~3をつかって定理1に現れる行列Mt,Ntを求める.
  4. 固有値問題Mtσ=μNtσを解いて固有対(Dtλi,σi) (i=2,3)を計算する.
  5. 摂動された三角形領域Tt における現状の近似固有関数ϕ~2,ϕ~3を次式を用いて補正する:
    u~2t=s22ϕ~2+s23ϕ~3,    u~3t=s32ϕ~2+s33ϕ~3.

数値計算結果

図4はt=1012,1013,1014,1015に対して,摂動された三角形領域Ttにおける固有関数u2tを数値計算して描画したものである.
ただし,図4の上段は通常の有限要素法を使って求めた近似固有関数,下段は固有値の差分商公式を使って求めた近似固有関数である.
計算にはすべての場合に同じメッシュを用いた.

求めた近似固有関数 求めた近似固有関数

通常の有限要素法による計算では,t=1014,1015あたりで固有関数の回転が起こっているように見えるのに対して,新しいアルゴリズムでは正確に計算できているように見える.
固有値が単純である限り,固有関数はtに関して連続に動くはずなので上段の計算結果が正しいということはあり得なさそうである.

参考文献

[1]
McCartin, Brian J., Eigenstructure of the equilateral triangle, Part I: The Dirichlet problem., Siam Review, 2003, 267-287
[2]
Ryoki Endo, Xuefeng Liu, Rigorous estimation for the difference quotients of multiple eigenvalues, arXiv:2305.14063
投稿日:212
更新日:212
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

「音の現象」を数学的に検証することに興味を持っています. 微分作用素の固有値問題に対する計算機援用証明について研究しています.

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中
  1. 近接固有値に属する固有ベクトルの計算困難性
  2. ディリクレラプラシアンの近接固有値
  3. 固有値の差分商公式と近似固有関数の補正
  4. 参考文献