- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ラプラス方程式の解法(情報処理として)と共役勾配法)
ラプラス方程式と共役勾配法の解法
このQ&Aのポイント
- ラプラス方程式とポアソン方程式の境界値問題を解く方法には、SOR法や共役勾配法などがあります。
- 連立一次方程式の解法としては、SOR法が使用されますが、ラプラス方程式やポアソン方程式を解く場合は、メモリ確保の前提条件は連立一次方程式の形ではないです。
- マトリックス解法としての共役勾配法もありますが、より特化した解説がされている本はあまりありません。簡単な説明を求めるなら、ラプラス方程式やポアソン方程式に焦点を当てた専門書を探すと良いでしょう。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#221368
回答No.1
考え方だと思うのですが、通常の流れは以下のようになると思います。 ラプラス方程式を数値計算に持ち込むには →何らかの手段で離散化(有限要素法や差分法など) →連立方程式 上記において、離散化と連立方程式はペアで出てきます。連続的な偏微分方程式を数値計算に持ち込むには、何らかの手段で離散化する必要があり、必然的に連立方程式が現れる、という意味です。 しかし実際のコーディング作業では、必ずしもMatrix形式を用いなくてもよいのも事実です。たいていの場合、得られる係数マトリックスは疎行列なので、非零要素だけを1次元配列に保存する事は可能です。既知ベクトルも1次元配列に保存します。 共役勾配法では、それらベクトルの内積計算だけで事が済みますが、このとき問題になるのが、係数配列と既知配列の添字のマッピングです。 マッピングを行う際には、やはり連立方程式を念頭において考えるのが順当と思えます。それで解説書は、連立方程式を基本にしているのではないでしょうか?。 もう一回言いますが、連立方程式を念頭に置くけれど、実際のコーディングは違います。
お礼
ご丁寧な回答、有難うございます。 連立方程式を念頭において作業はするもののコーディングは別とのこと、概ね腑に落ちるものです。疎行列の場合、メモリの使い方などが連立一次方程式(AX=B)とはかなり異なるのでむしろ連立(一次)方程式と言わない方が理解しやすいのではないかと思いますが。 一方で有限要素法の場合、これは疎行列ですが本当にマトリックスを構成するのでしょうか。境界要素法の場合は経験がありますが、密行列なので本当に連立1次方程式のAの行列を構成します。 解が存在するということの必要条件として連立方程式を構成することができるという事実はどの解法にも共通していることではあると理解しますが。