■Fortran Programs■
ここでちょっと一服しましょう。有限要素法の勉強は、まだまだ続きますが、いままで貴方が学習したことを、プログラム化して(Fortranで)、計算してみましょう。プログラムとして、次の 4 つを用意しましたので、どの様に計算が実行されているか、観察してみて下さい。
プログラム名 | 近似式 | 重み関数 |
---|---|---|
WRM1X1.FOR | u(x)=φ0(x)+a1φ1(x) | φ1(x) |
WRM1X1H.FOR | u(x)=φ0(x)+a1φ1(x) | 重み関数は別に与える。 |
WRM2X2.FOR | u(x)=φ0(x)+a1φ1(x)+a2φ2(x) | φ1(x)とφ2(x) |
WRM2X2H.FOR | u(x)=φ0(x)+a1φ1(x)+a2φ2(x) | 重み関数は別に与える。 |
■4つのプログラムに共通な項目■
プログラムには、計算する上でキーになる変数が使われています。それらを、下表にまとめてみました。
変数名 | 意味 |
---|---|
N | Gauss-Legendre積分のSammpling点数のこと。 |
ALPHA | Helmholtz Eq.のα2のこと。 |
NSEG | 領域の分割数。積分式をGauss法で計算するために、領域を幾つかの数に分割します。 |
DELTAX | 数値微分のΔxのこと。 |
MULTI | Δx=L/(MULTI*NSEG)としている。 |
SAI(I) | Gauss-Legendre積分のξiのこと。 |
W(I) | Gauss-Legendre積分のωiのこと。 |
XST | 積分の下限値のこと。 |
XEN | 積分の上限値のこと。 |
A1 | 近似式のa1のこと。 |
A2 | 近似式のa2のこと。* |
プログラムでは、幾つかのサブプログラムが使われています。以下に名前と役割まとめてみました。
INTE | 与えられた関数 G1 と G2 を用い、積分式をXSTからXENまで計算する。 |
F0(X) | 近似式のφ0(x)のこと。 |
F1(X) | 近似式のφ1(x)のこと。 |
F2(X) | 近似式のφ2(x)のこと。* |
DERIV | 与えられた関数の与えられた点で微分を計算する。 |
F(....) | 積分される関数を計算する。** |
H1(X) | 重み関数を計算する。** |
BACK | NEXT |
---|
Menu | View | Helm | wrm | Lin | Element | Rmrk | Vari | Para | Non-L | Wire |