• 検索結果がありません。

データのサンプリング

ドキュメント内 OpenFOAM User Guide (ページ 176-179)

CPWRITE

6.5 データのサンプリング

OpenFOAM

はフィールドデータの任意の位置における値を取得するユーティリティ,

sample

を提供しています.グラフ上にプロットするために

1

次元の線上,または等値面画像を表示する ために

2

次元平面上のデータが取得されます.データ取得位置は,ケースの

system

ディレクトリ にある,

sampleDict

で指定します.データは良く知られているグラフパッケージ,

Grace/xmgr

gnuplot

jPlot

のような様々な形式で書き出すことができます.

sampleDict

ディクショナリは,

$FOAM_UTILITIES/postProcessing/sampling/sample

sample

ソースコードディレクトリにある

sampleDict

の例をコピーすることで作成できます.

$FOAM_

TUTORIALS/solidDisplacementFoam

plateHole

チュートリアルのケースにも

1D

線型データ 取得のための記述例があります.

17

18 interpolationScheme cellPoint;

19

20 setFormat raw;

21 22 sets

23 (

24 leftPatch

25 {

26 type uniform;

27 axis y;

28 start ( 0 0.5 0.25 );

29 end ( 0 2 0.25 );

30 nPoints 100;

31 }

32 );

33

34 fields ( sigmaxx );

35 36

37 // ************************************************************************* //

このファイルには,次の入力項目があります.

interpolationScheme

データ内挿のスキーム

sets

フィールドが線型サンプルされる

(1D)

解析領域の中の位置

キーワード オプション 説明

interpolationScheme cell セル中心の値でセル全体が一定とみなす

cellPoint セルの値から線型重み付け補間

cellPointFace 線型重み付けまたはセル表面から補間

setFormat raw ASCII生データ

gnuplot gnuplot形式データ

xmgr Grace/xmgr形式データ

jplot jPlot形式データ

surfaceFormat null 出力しない

foamFile 点,面,値のファイル

dx DXスカラまたはベクトル形式

vtk VTK ASCII形式

raw xyz座標と値.gnuplotのsplotなどで使われる

stl ASCII STL.表面のみ,値なし

fields サンプルするフィールドのリスト,たとえば速度Uの場合,

U Uの全成分を出力

sets 1次元のsetsサブディクショナリのリスト.表6.4を参照

surfaces 2次元のsurfacesサブディクショナリリスト.表6.5および表6.6を参照 表6.3 sampleDictにおけるキーワード指定

surfaces

フィールドが面型サンプルされる

(2D)

解析領域の中の位置

setFormat

線データ出力のフォーマット

surfaceFormat

面データ出力のフォーマット

fields

サンプルされるフィールド

interpolationScheme

には,多面体の各セルを四面体に分割し,サンプルされる値が四面体

頂点の値から補間される

cellPoint

cellPointFace

オプションがあります.

cellPoint

は,四面体の頂点は,多面体のセルの中心と,面の頂点三つからなります.セルの中心と一致 する頂点は,セル中心のフィールド値を継承し,他の頂点はセルの中心の値から内挿した値を とります.

cellPointFace

では,四面体頂点の内の一つが,面の中心とも一致します.面が交 差するセルの中心での値による内挿スキームによって,フィールド値を継承します.

ラインサンプリングのための

setFormat

エントリは,生データフォーマットと,グラフ描画 パッケージのための

gnuplot

Grace/xmgr

jPlot

フォーマットがあります.データは,ケー スディレクトリの

sets

ディレクトリに書き出されます.そのディレクトリは,一連の時刻ディ レクトリに分割され,データファイルは,その中に格納されます.各々のデータファイルは,

フィールド名,サンプルセット名,そして出力フォーマットに関係した拡張子をもつ名前が付 けられます.拡張子は,生データでは

.xy

Grace/xmgr

用には

.agr

jPlot

には

.dat

となりま

す.

gnuplot

のフォーマットは,生の形式のデータと,それに加えてコマンドファイルを含ん

でいます.このコマンドファイルは,

.gplt

という拡張子をもち,グラフを生成するためのも

のです.

sample

が実行されるときは,既存の

sets

ディレクトリが削除されるので注意してくだ

さい.

サーフェスサンプリングのための

surfaceFormat

エントリは,生データフォーマットとグラ フ描画パッケージのための

gnuplot

Grace/xmgr

jPlot

フォーマットがあります.データは,

ケースディレクトリの,

surfaces

ディレクトリに書き出されます.そのディレクトリは時間ディ レクトリに分割され,データファイルは

sets

と同様にその中に格納されます.

fields

リストは,データを取得したいフィールドが記述されます.

sample

ユーティリティ は,次の限定された関数を,ベクトルやテンソルフィールドを修正することができるように,解 析することができます.例えば,

U

のためには,

U.component(n)

これは,ベクトル(テンソル)のn番目の要素を書く.n= 0,1, . . .

mag(U)

これは,ベクトル(テンソル)の大きさを書く

sets

リストは,サンプルされるべきデータの位置の,サブディクショナリで構成されます.各 サブディクショナリは,そのセットの名前に従って名前が付けられ,表6.4にも示すようにデー タ取得位置に関する記述がなされます.

例えば,

uniform

サンプリングは,

start

end

ポイントで指定した直線上に,均等に分割 したn点でデータを取得します.全ての

sets

には,

type

とグラフ用の縦軸の長さを指定する

axis

キーワードを与えます.

必要項目

サンプル型 データ取得位置 name axis start end nPoints points

uniform 線上に一様配分 • • • • •

face 指定された線とセル表面の交点 • • • •

midPoint 線・面の交点と交点の中点 • • • •

midPointAndFace 中点および面 • • • •

curve 曲線に沿った指定された点 • • •

cloud 指定された点 • • •

入力項目 説明 オプション

type データ取得の型 上の一覧参照 axis Output of sample location x x

y y

z z

xyz xyz

distance 点0からの距離 start データ取得線の始点 e.g. (0.0 0.0 0.0) end データ取得線の終点 e.g. (0.0 2.0 0.0)

nPoints データ取得点の数 e.g. 200

points データ取得点一覧

表6.4 setsサブディクショナリにおけるエントリ

キーワード 説明 オプション

basePoint 平面上の点 e.g. (0 0 0)

normalVector 平面の法線ベクトル e.g. (1 0 0)

interpolate 補間の有無 true/false

triangulate 三角形で分割するか(オプション) true/false 表6.5 surfacesサブディクショナリにおけるsurfaces用のエントリ

キーワード 説明 オプション

patchName パッチ名 e.g. movingWall

interpolate データ補間の有無 true/false

triangulate 三角形で分割するか(オプション) true/false 表6.6 surfacesサブディクショナリにおけるpatch用のエントリ

surfaces

リストは,データ取得位置のサブディクショナリのリストによって構成されます.

各サブディクショナリは,表面の名前に従った名前が付けられ,

type

で始まる一連の記述で構 成されます.平面上の点と法線ベクトルで定義され,表6.5に示される項目の記述がなされる

plane

か,または,既存の境界パッチと一致し,表6.6に示される項目の記述がなされる

patch

のいずれかです.

ドキュメント内 OpenFOAM User Guide (ページ 176-179)