タグ付けされた質問 「banded-matrix」

2
ノイマン境界条件でポアソン方程式有限差分行列を書く
有限差分アプローチを使用してポアソン方程式を解くことに興味があります。ノイマン境界条件で行列方程式を書く方法をよりよく理解したいと思います。誰かが以下をレビューしますか、それは正しいですか? 有限差分行列 ポアソン方程式 ∂2u (x )∂バツ2= d( x )∂2あなたは(バツ)∂バツ2=d(バツ) \frac{\partial^2u(x)}{\partial x^2} = d(x) 有限差分行列方程式で近似できます。 1(Δは、xは)2M ∙ u^= d^1(△バツ)2M∙あなたは^=d^ \frac{1}{(\Delta x)^2} \textbf{M}\bullet \hat u = \hat d ここで、は行列で、およびは(列)ベクトルです。 N × N uは dは 1 × NのMM\textbf{M}n × nn×nn \times nあなたは^あなたは^\hat ud^d^\hat d1 × n1×n1 \times n ノイマン境界条件の追加 ノイマン境界条件は、境界で既知のフラックスを強制します(ここでは、境界がである左側に適用します)。x = 0バツ=0x=0 ∂u …

4
変数を並べ替えて最小帯域幅のバンド行列を生成する方法は?
私は有限差分によって2Dポアソン方程式を解こうとしています。このプロセスでは、各方程式に変数がしかないスパース行列を取得します。たとえば、変数が場合、離散化の結果は次のようになります。555UUU うんi−1,j+Ui+1,j−4Ui,j+Ui,j−1+Ui,j+1=fi,jUi−1,j+Ui+1,j−4Ui,j+Ui,j−1+Ui,j+1=fi,jU_{i-1,j} + U_{i+1,j} -4U_{i,j} + U_{i,j-1} + U_{i,j+1} = f_{i,j} 私はこのシステムを反復法で解くことができることを知っていますが、変数を適切に順序付ければ、直接法(すなわち、ガウス消去法w / oピボット)。これは可能ですか?他の、おそらく構造化されていないスパースシステムでこれを行うための戦略はありますか?

1
LAPACKは3重対角システムをどのように解決しますか?その理由は?
私のプロジェクトでは、タイムステップごとに2つの3重対角行列を解く必要があるため、それらに対して優れたソルバーを使用することが重要です。私は独自の実装を行いましたが、ウィキペディアに記載されている古典的な方法で実装しました。その後、代わりにLapackを使用してみましたが、驚いたことに遅くなりました! さて、Lapackの内部では、LU分解による解法を実行しているように見えますが、なぜそうなるよりも複雑ではないのでしょうか。 さらに、nr.comの「Numerical Recipes」の本で、システムを再帰的に小さな三重対角問題に分割するアルゴリズムを見つけました。それは有望に見えた。他にグッズはありますか? 更新:問題のサイズは約1000x1000です。私はGotoBLASを使用しましたが、Lapack 3.1.1ライブラリも提供します。問題は対称的ではありません。私は一般的な三重対角行列にLapackルーチンを使用しました。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.