関数$ u $が個別の方法でボールに定義されていると仮定します。$ u $の値のみがわかります。球面グリッドのノード$(i、j、k)$では、$ i $は半径座標、$ j $は角度$ \ varphi $の座標、$ k $は角度$ \ psi $の座標です。 。
ベクトル関数$$ \ nabla u_ {i、j、k} = \ left(\ frac {\ partial u} {\ partial r} _ {i、j、k}、\ frac {1} {r_i \ sin \ psi_k} \ frac {\ partial u} {\ partial \ varphi} _ {i、j、k}、\ frac {1} {r_i} \ frac {\ partial u} {\部分的な\ psi} _ {i、j、k} \ right)-$ u $の$$勾配。
$ \ nabla u_ {i、j、k} $の値を知る必要があります。デカルト座標のz軸上。これは球面座標の$ \ psi = 0 $軸に対応しますが、$ \ psi = 0 $の場合、第2項が無限大になるため、上記の式を使用することはできません。
実際には、数値導関数の式を使用して$ \ frac {\ partial u} {\ partial z} $の値を見つけることができますが、$ \ frac {\を見つけるのに問題があります。グリッドが長方形ではないため、partial u} {\ partial x} $、$ \ frac {\ partial u} {\ partial y} $。このようなことを手伝ってくれて、どうしたらいいか教えてくれませんか?
コメント
- $(r、 \ varphi、\ psi)$座標系?これにより、$ x $-$ y $-軸と$ z $軸に投影して、勾配の$ x $-$ y $-と$ z $-成分を与えることができるベクトルが得られます。
- いいえ、数値微分を計算できません。$ \ psi = 0 $の場合、$ \ varphi $-角度が定義されておらず、数式に特異性があるためです。
- 解決策がある可能性があります。クォータニオンを使用しますが、それがwrtのように正確にどのように見えるかを理解するのはちょっと難しいです。あなたの命名法。戦おうとしている効果は、一般に" ジンバルロック
- この問題を正しく処理するための1つのバリアントを見つけました。ここでは、勾配再構成に最小二乗法を使用できますが、正確な説明とその使用方法は見つかりませんでした。
- おそらく'の場合-適度に正常に動作する$ u $$の場合-$ \ lim _ {\ psi \ to 0} \ frac {1} {\ sin \ psi} \ frac {\ partial u} {\ partial \ phi} = 0 $。しかし、'ベクトルの中央の成分に意味があるとは思わないので、'これを極座標の微分方程式に代入すると微分方程式の座標も中央の座標に重みを与えない場合があります。
回答
次の3つの方法があります。この状況を回避しますが、使用する前に、計算エラーのためにこの方法が適切かどうかを確認する必要があります。
1)グリーンガウスセル法:ここでは勾配の定義が使用されます:
$$ \ nabla u_i \ approx \ frac {1} {V_ {i}} \ int \ limits _ {\ partial V_i} ud \ overline {S} \ append_ {k = 1} ^ {n} {u_ {f_k} S_k \ overline {n} _k}、$$ここで、$ k $-セルの近傍の数$ V_ {i} $
2)最小二乗法:エラー
$$ \ sum \ limits_ {k = 1} ^ {n} {\ frac {1} {d_ {ik}} E_ {i、k} ^ {2}}、E_ {i、k} = \ nabla u_i \ cdot \ Delta r_ {i、k} + u_i-u_k $$を最小化する必要があるため、$ \ nabla u_i $
3)補間法のコンポーネントを取得します。勾配の値は、勾配ベクトル関数の値から補間されます。