より高度なプロット制御

先頭へ  前へ  次へ

 

 

切断面上でのプロットの指定方法については既に議論しました。必要であれば積分の場合と同様なやり方でプロット範囲に制限を加えることができます。

 

さらにextrusion面(レイヤ境界面)上でのプロットも指定することができます(平面である必要はありません)。

 

プロットに対する基本制御メカニズムは ON <thing> ステートメントです。

 

例えばステートメント

 

CONTOUR(Phi) ON 'Sphere Top' ON 'Blob'

 

はextrusion面 'Sphere Top' 上のリージョン 'Blob' の範囲においてポテンシャル Phi の等高線図作成を要求します。一方、

 

CONTOUR(NORMAL(-K*GRAD(Phi))) ON 'Sphere Top' ON 'Blob' ON 'Can'

 

は上側の半球面上における熱流束の法線成分の値について等高線図の作成を要求します。ただしその場合、値の評価はレイヤ 'Can' 側で、すなわち球面内部で行われます。

 

一般に修飾詞 ON <name> は指定されたオブジェクト名称のタイプに応じてプロット範囲のローカライズを行います。
 
ON REGION <number> という指定の場合には番号によってリージョンが選択されます。
 
ON SURFACE <number> という指定の場合には番号によってレイヤ境界面が選択されます。
 
ON LAYER <number> という指定の場合には番号によってレイヤが選択されます。

 

一例として上に示した球面上での熱流束のプロットを要求してみましょう。このコマンドをPLOTSセクションに追加すると共に、同一曲面上での積分値も念のため計算しておくことにします。プロットジェネレータはプロットグリッド上で自動的に積分値を計算します。本来これは計算メッシュ上の積分値を用いたSURF_INTEGRALの結果と一致すべきものです。

 

CONTOUR(NORMAL(-K*GRAD(Phi))) ON 'Sphere Top' ON 'Blob' ON 'Can'

REPORT(surf_integral(NORMAL(-k*GRAD(Phi)),'Sphere Top','Blob','Can')) AS 'Surface Flux'

 

結果は次の通りです。

 

3ex405_001

 

この例の場合、積分値は 7e-4 前後の値がキャンセルした結果であるため、レポートされた 9.6e-8 という値はデフォルトの誤差許容値 ERRLIM=0.001 を十分満たしています。一方、プロットグリッド上での計算値 "Surf_Integral" はやや大きめな値 8.96e-6 を示しています。これはプロット用グリッドが計算用のグリッドに比べて目が粗いことによるものです。