![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
2次元ラプラス方程式を差分法で解くというプログラムなのですが、
・プログラムの流れ
・具体的にどのような計算をしているのか
を教えていただけないでしょうか?
面倒だとは思いますがお願いします。
以下プログラムURL
http://www.geocities.jp/laprog321/
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_04.png?e8efa67)
No.1ベストアンサー
- 回答日時:
double second()
ただ単に、処理時間を表示するために、時間を
取得しているだけで、方程式の解法には関係あ
りません。
void init(double u[SIZE+2][SIZE+2])
解くべき方程式の境界条件を設定しています。
と思ったら、初期条件を設定しています。
ちょっと不自然な気もしますが。
int main()
方程式を解くための主要部分です。
格子状の配列の、上・下・右・左の値の平均を
とることを繰り返しています。
これを繰り返すことで、方程式の解に収束します。
配列を、u, uu と2つ準備し、
・一番最初に、init() を呼んで初期条件をセット。
・uu の配列で、上・下・右・左の値の平均をとって
u に代入(1回分の計算)
・この繰り返しが収束したかどうかチェックするために
u (このステップの計算前)と uu(このステップの計
算後)のノルム(この場合は、差の自乗の和)が、EPS
以下になるまで繰り返し。
・繰り返しに当たって、u の値を、uu に代入して、同
じ計算を繰り返す。
※実は繰り返しの最初で、u を uu に代入(コピー)
しているので、init(uu); は不要。
・最後に結果とかかった時間を表示
(と思ったら、結果は表示していませんでした)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 至急!研究の統計について 6 2023/07/12 00:38
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- その他(プログラミング・Web制作) VBA 1 2023/01/19 16:19
- JavaScript 最小二乗法 2 2023/01/01 20:57
- 数学 dx/dt=x-2y +e^t dy/dt=-3x +2y+1 初期値[1,0] [x,y] この連 3 2023/05/15 18:23
- C言語・C++・C# C言語 3 2022/10/04 15:07
- その他(プログラミング・Web制作) プログラムが書けません。 6 2023/01/22 22:58
- その他(ビジネス・キャリア) グーグルの障害者訓練プログラム募集あるがどうだろ?6時間勤務で月収22万!! 1 2023/02/17 20:36
- 数学 ラプラス変換について 1 2022/06/28 22:26
- C言語・C++・C# numpyスライス機能を使った数値計算 2 2023/05/08 16:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
変化させるセルが変化しない
-
排他的論理和 BCC(水平パリテ...
-
VBAの再計算が反映されない件に...
-
VBAで関数をつくる
-
バッチファイルでウインドウを...
-
モジュラス103の計算とは何でし...
-
EXCELなどで「返す」という表現
-
数値計算の高速化 (cos, sin, exp)
-
傾いた四角形内の範囲の条件式
-
骨折リスク評価のFRAXについて...
-
matlab計算での進捗状況を知りたい
-
Excel VBAにてFFT
-
C言語についてです。 再帰を使...
-
C言語について 下の画像は do-w...
-
アドオン利率を実質年率に変換
-
エクセルで特定のセルのみを任...
-
電卓でmodの計算
-
引き放し法による除算アルゴリ...
-
y=(x^2 +3x+1)^4を微分の定義を...
おすすめ情報