キャビティ流れ(粗密のあるメッシュへのマッピング)
OpenFOAM 4.x
ケース
$FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavityGrade
概要
このケースを実行するには事前にケース「cavity(キャビティ流れ)」を実行しておく必要があります。
またケース cavity 実行後に cavity の親ディレクトリで以下のコマンドを実行してケース「cavityFine」を作成、実行しておく必要があります。
mkdir cavityFine
cd cavityFine
cp -r ../cavity/0 .
cp -r ../cavity/system .
cp -r ../cavity/constant .
sed -i -e s/"20 20 1"/"41 41 1"/g system/blockMeshDict
sed -i -e s/"\(startTime[ \t]*\) 0;"/"\1 0.5;"/g system/controlDict
sed -i -e s/"\(endTime[ \t]*\) 0.5;"/"\1 0.7;"/g system/controlDict
sed -i -e s/"\(deltaT[ \t]*\) 0.005;"/"\1 0.0025;"/g system/controlDict
sed -i -e s/"\(writeControl[ \t]*\) timeStep;"/"\1 runTime;"/g system/controlDict
sed -i -e s/"\(writeInterval[ \t]*\) 20;"/"\1 0.1;"/g system/controlDict
blockMesh
mapFields ../cavity -sourceTime latestTime -consistent
icoFoam
解析の流れは以下の様になります。
- ケース cavity で0.5秒まで流れを計算
- 計算結果をメッシュが細かいケース cavityFine の初期条件としてマッピング
- ケース cavityFine で0.5秒から0.7秒まで流れを計算
- 計算結果をメッシュに粗密があるケース cavityGrade(本チュートリアル)の初期条件としてマッピング
- ケース cavityGrade で0.5秒から0.7秒まで流れを計算
境界条件はケース cavity と同じで以下の通りです。
モデル形状
cavity、cavityFine、本チュートリアルの各ケースのメッシュは以下の通りです。Z 方向は1メッシュとして2次元問題として計算を行います。
cavity のメッシュ
cavityFine メッシュ
本チュートリアルのメッシュ
ユーティリティー mapFields を使用してケース cavityFine の計算結果をマッピングして初期条件として使用します。
計算結果は以下の通りです。
0.7秒での流速(U)
0.7秒での圧力(p)
実行コマンド
cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavityGrade cavityGrade
cd cavityGrade
blockMesh
mapFields ../cavityFine -sourceTime latestTime -consistent
icoFoam
paraFoam
計算済みの cavityFine ディレクトリは cavityGrade と同じディレクトリにあるものとします。
マッピング元とマッピング先の形状、境界条件が同じ場合は mapFields 実行時にオプション -consistent を指定します。
計算時間
--- ※シングル、Inter(R) Core(TM) i7-2600 CPU @ 3.40GHz 3.40GHz