transformPoints コマンド

transformPointsコマンドとは、メッシュに対して拡大、縮小、回転の操作を行うユーティリティです。

例として、tutorials/incompressible/icoFoam/cavity/cavity において実行してみます。
ケースディレクトリ内で、まず以下のコマンドを実行します。

 $ blockMesh 

これにより、計算領域のメッシュが作成されます。
このメッシュ全体を1/10に縮小させてみます。
以下のコマンドを実行します。

 $ transformPoints -scale “(1e-1 1e-1 1e-1)” 

図24はblockMeshで作成したメッシュ(白)とtransformPointsで1/10に縮小したメッシュ(赤)を示しています。
実際にメッシュがXYZ全方向に縮小しているのがわかります。

図 24: メッシュの縮小
コマンドラインオプション

transformPointsコマンドを使用するには、オプションが必要となります。

 $ transformPoints <options…> 

オプションとしては、以下があります。

-case <dir>:ケースディレクトリを指定します。デフォルトでは現在いるディレクトリです。
-decomposeParDict <file>:特定の場所からdecomposeParDictファイルを読み込む場合に使用します。
-noFunctionObjects:functionObjects を実行しないようにします。
-parallel:並列で実行します。
-region <name>:別のメッシュ領域を指定します。
-rollPitchYaw <vector>:メッシュを'(roll pitch yaw)’で指定した角度分、回転させます。
-roots <(dir1 .. dirN)>:複数のケースを処理する場合にディレクトリを指定します。
-rotate <(vectorA vectorB)>:メッシュをvectorAからvectorBへ回転させます。
-rotateFields:ベクトルやテンソルも回転させます。
-scale <vector>:指定した比率で拡大縮小を行います。
-translate:ベクトル分だけ平行移動を行います。
-yawPitchRoll <vector>:メッシュを'(yaw pitch roll)’で指定した角度分、回転させます。
-srcDoc:ブラウザを用いてソースコードを表示します。
-doc:ブラウザを用いてドキュメントを表示します。
-help:ヘルプを表示します。

例として、以下の様な使い方があります。
 XYZ方向について1/10に縮小を行う

 $ transformPoints -scale “(1e-1 1e-1 1e-1)” 

 X方向に0.05だけ平行移動を行う

 $ transformPoints -translate “(0.05 0 0)” 

※このオプションはOpenFOAM V1612で動作を確認しています。お使いのバージョンによりましては、本ユーティリティならびにオプションが使えない場合がございます。