固有値とモード解析

先頭へ  前へ  次へ

 

 

FlexPDEを使って偏微分方程式の固有値や固有関数を求めることもできます。

 

上で示した時間依存型の同次熱流体方程式について考えてみましょう。

 

mode1

 

境界条件についても同次型のもの、すなわち

 

mode2

 

mode3

 

を想定します。

 

今、次のような変数分離型の解を求めたいとします。

 

mode4

 

このとき偏微分方程式は次のようになります。

 

mode5      

           

この方程式が自明以外の解を持つときのlambdapsiをそれぞれ系の固有値、固有関数と呼びます。偏微分方程式に対する一般解は、非同次境界条件を満たす一つの特解とこれら固有関数を組み合わせたものとして表現できます。

 

FlexPDEに固有値問題を解かせるには定常状態用のベーシックなスクリプトに対し次のような変更を加える必要があります。

 

SELECTセクションのMODESパラメータに対し値を設定します。この数によっていくつのlambdaの値を計算するかが決定されます。大きさの小さいものから順に使用されます。
 
方程式の記述に際しては固有値を表す予約語LAMBDAを使用してください。その際、LAMBDAはすべて正の値となるよう方程式を調整する必要があります。さもないと求解に際しての順番に問題が生じることになります。
 

 

TITLE 'Modal Heat Flow Analysis'

SELECT

modes=4

VARIABLES

Phi                { the temperature }

DEFINITIONS

K = 1              { default conductivity }

R = 0.5            { blob radius }

EQUATIONS

Div(k*grad(Phi)) + LAMBDA*Phi = 0

BOUNDARIES

REGION 1 'box'

START(-1,-1)

VALUE(Phi)=0        LINE TO (1,-1)

NATURAL(Phi)=0      LINE TO (1,1)

VALUE(Phi)=0        LINE TO (-1,1)

NATURAL(Phi)=0      LINE TO CLOSE

REGION 2        'blob'        { the embedded blob }

k = 0.2                { This value makes more interesting pictures }

START 'ring' (R,0)

ARC(CENTER=0,0) ANGLE=360 TO CLOSE

PLOTS

CONTOUR(Phi)

VECTOR(-k*grad(Phi))

ELEVATION(Phi) FROM (0,-1) to (0,1)

ELEVATION(Normal(-k*grad(Phi))) ON 'ring'

END

 

FlexPDEによって出力される解は次のような特徴を持ったものとなります。

 

すべてのプロットは要求されたモードごとに出力される。
固有値の一覧を示すプロットページが追加される。
個々のプロットにはモード番号と固有値に関する情報が付加される。
LAMBDAという名称は数式中でも使用できる。

 

最初の2つの固有値に対応した等温線図は次のようになります。

 

ex401_01

 

ex401_02