図
1のポテンシャル分布を求めるプログラムを作成せよ。ただし、詳
細な寸法は、図
8の通りとする。
途中まで作成したソースプログラムを
/tmp/5e/laplace_hint.cに置いておく。プログラム
作成の手がかりがつかめない者は、これを完成させよ。
このヒントのプログラムの変数は、次のように使われている。
- u[i][j]
- i,j番目の格子点のポテンシャルを入れる配列
- x[i][j],y[i][j]
- i,j番目の格子点の座標を入れる配列
- flag[i][j]
- i,j番目の格子点が、内部電極内ならば1、それ以外1となるフ
ラグ
- iteration
- ガウス・ザイデル法での最大計算回数。
- nlat
- x方向とy方向の分割数。問題が正方形領域なので、同一としている。
また、使われている関数の動作は以下の通りである。
- initialize
- ポテンシャルとフラグの値をゼロに初期化する。
- set_cordinate
- 格子点の座標を設定する。
- set_boundary_wall_pot
- 外部境界の格子点のポテンシャルを
0、フラグを1に設定する。
- set_circle
- 電極内部の格子点のポテンシャルを設定する。さらにその
フラグを1に設定する。
- plot_3d
- 結果を3次元グラフに表示する。
ホームページ:
Yamamoto's laboratory著者:
山本昌志
Yamamoto Masashi
平成17年2月8日