One Dimensional Finite Element Method
Weighted Residual Method-7

■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) 重み関数は別に与える。

上では自由度n=1とn=2のみを紹介しましたが、n=3とn=4についても計算しました。 wrmeのページに詳細を述べてあります。見て下さい。

■4つのプログラムに共通な項目■
プログラムには、計算する上でキーになる変数が使われています。 それらを下表にまとめてみました。

変数名意味
N Gauss-Legendre積分のSammpling点数のこと。
ALPHASQ 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)重み関数を計算する。**
*=WRM2X2.FOR と WRM2X2H.FOR のみ。
**=WRM1X1H.FOR と WRM2X2H.FOR のみ。


BACK NEXT

Menu View Helm wrm Lin Element Rmrk Vari Para Non-L Wire
Internet College of Finite Element Method