FEM:剛性マトリックスの特異点


11

私は微分方程式を解いています 初期条件、。ここで、はパラメーターです。演算子形式では、微分方程式をとして書き換えることができます。ここで、演算子は正定値です。

(σ2(x)u(x))=f(x),0x1
u(0)=u(1)=0u(0)=u(1)=0σ(x)σ0>0Au=fA

FEMスキームに従って、問題を最適化問題に縮小します v_ {として 有限要素h_ {k}(x)を導入しますk}(x)= \ left \ {\ begin {array} {rl} 1-\ left(\ frac {x-x_ {k}} {h} \ right)^ 2、&x \ in [x_ {k -1}、x_ {k + 1}] \\ 0、および\ text {otherwise} \ end {array} \ right。 任意のk = 1、\ ldots、n-1の場合、x_ {k} = hkh = \ frac {1} {n}。有限要素v_ {0}(x)およびv_ {n}(x)も同様に導入されています。

J(u)=(Au,u)2(f,u)minu
hk(x)
vk(x)={1(xxkh)2,x[xk1,xk+1]0,otherwise
k=1,,n1xk=hkh=1nv0(x)vn(x)

u(x)= \ sum_ {k = 0} ^ {n} \ alpha_ {k} v_ {k}(x)が最適化問題を解決するようなベクトル\ alphaを数値的に見つけようとします。我々は J(U)= \和\ limits_ {I = 0} ^ {N} \和\ limits_ {J = 0} ^ {N} \ alpha_ {I} \ alpha_ {J}(Av_ {I}を、V_ {j})-\ sum \ limits_ {i = 0} ^ {n} 2 \ alpha_ {i}(v_ {i}、f)= \ alpha ^ {T} V \ alpha-2 \ alpha ^ {T} B \分\限界_ {\アルファ} \に B_ {I} =(F、V_ {I})およびV_ {I、J} =(Av_ {I}、V_ {J})\ alphaに関する微分の後、 V \ alpha = b を受け取ります が、ここでは剛性マトリックスVは特異です。それで、私は何をしなければなりませんか?他の有限要素を選択する必要があるかもしれませんか?αu(x)=k=0nαkvk(x)

J(u)=i=0nj=0nαiαj(Avi,vj)i=0n2αi(vi,f)=αTVα2αTbminα,
bi=(f,vi)Vi,j=(Avi,vj)α
Vα=b,
V

こんにちは、Nimza、正確な解決策を知っているテスト問題がありますか?はいの場合、最初にV ^ TV \ alpha = V ^ T bを解いVTVα=VTbて、ドメイン内で基底が正しいかどうかをテストします。すべてが正しいように見える場合は、間違ったポーズのBCが行列を特異にすることがあります。しかし、BCは私には大丈夫のようです。
シュハオカオ

回答:


13

尤度の降順

  1. 誤った根拠。あなたの説明から、各要素をサポートする2つの二次関数が正確にあるように見えます。その空間は単一性のパーティションではなく、(連続一階微分)ではありません。4次の問題を直接離散化するには(たとえば、2次の方程式系に減らすのではなく)、基底が必要です。基底は、すべての線形関数を正確に再現できる必要があることに注意してください。C1C1C1

  2. 境界条件が不十分です。これは、ヌルスペースを計算してプロットすると明らかになります。

  3. 誤ったアセンブリ。要素から組み立てられた順序へのマップをチェックして、たとえば要素の方向が逆になっていないなど、予想どおりであることを確認します。

  4. 誤ったローカルアセンブリ。1Dでは、要素剛性マトリックスがどのように見えるかを分析的に計算し(おそらく単純化された場合)、コードがそれを再現することを確認できます。


ありがとうございました。1.なので、基底が必要になると思います。次に、境界条件を満たす関数のみを考慮すると、ます。C2(Au,v)=01σ2(x)u(x)v(x)dxkerA={0}
アップリケ

1
A根拠が十分である、積分は連続である必要はありません。2次導関数の境界条件は境界積分になることに注意してください。4次問題の直接離散化には基底を使用できますが、1次および2次システムの不連続ガラーキン法のようにジャンプ項を統合する必要があります。これは悪い方法ではありませんが、1Dでは不必要に複雑です。なぜなら、連続性のある順序(スプラインなど)でベースを構築するのは非常に簡単だからです。このペーパーは、「 DG」の例です。C1C0C0
ジェドブラウン

OK。私は私の基礎訂正:今のと。現在はです。しかし、メソッドはまだ機能しません。vk(x)=cos2(π2h(xxi))[xi1,xi+1]i=1,,n1C1
アップリケ

根拠は、線形関数を再現することができるはずですが、これはできません。それを修正したら、積分が正しく実行されていることを確認し、境界条件を確認します。C1
ジェドブラウン

0

明らかに、問題にはODD次数微分があります。より具体的には、ペクレ数が大きい場合、剛性マトリックスは「微細な」形状を維持しない可能性があり、アセンブリ中にゼロが作成されるため、ソリューションプロットの振動で顕著になる特異な、または非常に小さな行列式になります。

この種の問題の解決策は、他の方法の中でも特にペナルティの使用です。より具体的には、これはPetrov-Galerkin methodと呼ばれます。

私の英語の理解力がすみません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.