■例題1: プログラムによる計算■
ここでは、解析プログラムとデータ作成プログラムを紹介します。まず、解析プログラムは、次の2つ用意しました。
FEM3.FOR | FEM3.FORは、三角形要素を用い、Laplace Equation を解きます。熱伝導係数には、Anisotropic係数マトリックス[E]が使えます。このプログラムは、フルマトリックス(nXn)の連立方程式を作成しますので、実用的ではありませんが、プログラム上でのAssembly がどように実行されているかを勉強のに役立ちます。 |
---|---|
FEM3Q.FOR | FEM3Q.FORは、連立方程式周辺の処理方法を除けば、上のFEM3.FORと同じです。このプログラムでは、Halfbandwidthの連立方程式の解法を用いています。従って、[K]マトリックスに占領されるメモリーを、FEM3.FORに比べ、大幅に節約できます。 |
◆プログラムの構成◆
プログラムの構成は、1次元FEMのBUCKLE.FORとほぼ同じです。[sk]の計算については、Subroutine GSMで行われ、Assemblyも Subroutine GSMが行っています。境界条件の組み込みは、1次元と同様にSubroutine FORMが担当し、連立方程式の計算は、Subroutine SYSTEMで行われます。
◆プログラムの入力で使われる変数◆
以下に、入力に使われる変数と簡単な説明を下に示します。入力データを作成するときの参考にして下さい。
変数名 | TYPE | 意味/説明 |
---|---|---|
EXX, EXY, EYY | 実数 | Anisotropic熱伝導係数。Isotropicにするには、EXX=EYY=k、EXY=0にすればよい。 |
NE | 整数 | 領域を三角形要素で分割した数。つまり、要素数 |
NODEX(I,J) | 整数 2次元配列 |
各要素毎に、要素を構成する節点番号を入力します。節点番号の入力は、反時計方向とする。 |
NNODE | 整数 | 全節点数のこと。 |
XCOORD(I) | 実数 1次元配列 |
各節点のx座標値のこと。 |
YCOORD(I) | 実数 1次元配列 |
各節点のy座標値のこと。 |
NB | 整数 | 領域の境界上の節点数のこと。 |
IBND(I) | 整数 1次元配列 |
境界上の節点です。NBの数だけの入力が必要です。 |
ITYPE(I) | 整数 1次元配列 |
IBND(I)に対応した境界条件。ITYPE(I)=1はDirichlet型、ITYPE(I)=2はNeumann型となっています。 |
BVALUE(I) | 実数 1次元配列 |
IBND(I)とITYPE(I)に対応した境界値。 |
BACK | NEXT |
---|
Menu | Heat Eq. | Cdtvty | WRM2 | Tri | Stiff | Bound | Ex | Rmk |