@DavidKetchesonが提供する答えを拡張します。最初に、方程式は一次保存則の双曲線システムとして書き直されます。
qt+∇⋅F(q)=0
または
qt+Aqx+Bqy+Cqz=0
ここで、は応力テンソルのコンポーネント形成された状態ベクトルですおよび速度ベクトル成分。q(σ11,σ22,σ33,σ12,σ23,σ13)(u,v,w)
q=⎛⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜σ11σ22σ33σ12σ23σ13uvw⎞⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟,
A=⎛⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜0000001ρ0000000000000000000000000001ρ0000000000000000001ρc11c12c13c14c15c16000c16c26c36c46c56c66000c15c25c35c45c55c56000⎞⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟,
B=⎛⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜00000000000000001ρ00000000000000001ρ00000000001ρ000000000c16c26c36c46c56c66000c12c22c23c24c25c26000c14c24c34c44c45c46000⎞⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟,
C=⎛⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜000000000000000000000000001ρ00000000000000001ρ00000001ρ00c15c25c35c45c55c56000c14c24c34c44c45c46000c13c23c33c34c35c36000⎞⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟.
(上記のように)問題の速度を計算するには、行列を作成する必要があります。ここで、は単位ベクトルで、伝播の方向を決定します。CFL状態を見つけるには、解決する必要がありますA^(n1,n2,n3)=n1A+n2B+n3Cn=(n1,n2,n3)
max(θ,ϕ)maxiγi(θ,ϕ)
ここで、は球面角、は行列の固有値です。(θ,ϕ)γiA^(θ,ϕ)
これと@DavidKetchesonによって提供される答えに基づいて、クリストッフェル方程式の固有値を計算し、最適化問題を解決する方が簡単です。
max(θ,ϕ)maxiλi(θ,ϕ)
クリストッフェルの方程式の固有値。そして速度はちょうどです。λic=λi/ρ−−−−√