rotateMesh

2.2 rotateMesh

 

2.2.1 rotateMesh コマンドとは

rotateMeshコマンドとはメッシュやフィールドを回転させるユーティリティです。

以下はincompressible/icoFoam/cavity/cavityにおいて実行した例となります。

まず、blockMeshを行います。

 

  $ blockMesh  

 

実行前は図18のようにXY平面における流れ解析となっております。

そこで、以下のコマンドを実行します。

 

    $ rotateMesh “(1 0 0)” “(0 0 1)”  

 

このコマンドの実行後の状態は図19のようになり、YZ平面における流れ解析となるようにメッシュが回転しています。

このコマンドは第1引数のベクトルが第2引数のベクトルの向きになるように回転させるので、

上記のコマンドを実行すると、X方向ベクトルがZ方向ベクトルと一致するように回転します。

上記のコマンドを実行すると、ケースディレクトリ内に新しい時間ステップディレクトリ(例えば1)が作成されます。

 

  

図18 rotateMesh実行前                     図19 rotateMesh実行後

 

 

2.2.2 コマンドラインオプション

rotateMeshコマンドを使用するには、2つの引数が必要となります。

このコマンドは第1引数のベクトルn1が第2引数のベクトルn2と一致するように回転を行います。

ベクトルは3次元のリストで指定します。

rotateMeshコマンドは、設定ファイルを用意する必要はありません。

 

    $ rotateMesh <n1> <n2>  

 

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

-case <dir> ケースディレクトリを指定します。デフォルトでは現在いるディレクトリです。
-constant constantディレクトリにも適用します。
-decomposeParDict  <file>特定の場所からdecomposeParDictファイルを読み込む場合に使用します。
-latestTime 最新の時間ステップのみに適用します。
-newTimes 新しい時間ステップのみに適用します。
-noFunctionObjects functionObjects を実行しないようにします。
-noZero 0ディレクトリを除外します。
-parallel 並列で実行します。
-roots <(dir1 .. dirN)> 複数のケースを処理する場合にディレクトリを指定します。
-time <ranges> 指定した時間ステップ内に適用します。 設定例: ‘:10,20,40:70,1000:’
-srcDoc ブラウザを用いてソースコードを表示します。
-doc プラウザを用いてドキュメントを表示します。
-help ヘルプを表示します。