メッシュの再分割
OpenFOAM 4.x
このチュートリアルの実行には make のインストールが必要です。Ubuntu ではコマンド 「sudo apt install make」 でインストールが可能です。
ケース
$FOAM_TUTORIALS/mesh/refineMesh/refineFieldDirs
概要
ユーティリティー refineMesh を使用して既存のメッシュを再分割します。
まず blockMesh を使用して以下の様な初期メッシュを作成します。その後、 Z 方向に6回に分けて再分割を行い、さらに円筒座標系に合わせて3回に分けて再分割を行います。
初期メッシュ - メッシュ数1880
メッシュは以下の通りです。
Z方向に再分割したメッシュ - メッシュ数50400
最終メッシュ - メッシュ数197120
実行コマンド
cp -r $FOAM_TUTORIALS/mesh/refineMesh/refineFieldDirs refineFieldDirs
cd refineFieldDirs
# calcRadiusField をビルドしてシステムにインストール
wmake calcRadiusField
wclean calcRadiusField
# 初期メッシュを作成
blockMesh
mkdir 0
# Z方向で6段階に分けて再分割
calcRadiusField
topoSet -dict system/topoSetDict.tier1
refineMesh -dict system/refineMeshDict.tier1 -overwrite
rm -r 0/*
calcRadiusField
topoSet -dict system/topoSetDict.tier2
refineMesh -dict system/refineMeshDict.tier2 -overwrite
rm -r 0/*
calcRadiusField
topoSet -dict system/topoSetDict.tier3
refineMesh -dict system/refineMeshDict.tier3 -overwrite
rm -r 0/*
calcRadiusField
topoSet -dict system/topoSetDict.tier4
refineMesh -dict system/refineMeshDict.tier4 -overwrite
rm -r 0/*
calcRadiusField
topoSet -dict system/topoSetDict.tier5
refineMesh -dict system/refineMeshDict.tier5 -overwrite
rm -r 0/*
calcRadiusField
topoSet -dict system/topoSetDict.tier6
refineMesh -dict system/refineMeshDict.tier6 -overwrite
rm -r 0/*
# 円筒座標系で3段階に分けて再分割
calcRadiusField -calcDirections
topoSet -dict system/topoSetDict.range1
refineMesh -dict system/refineMeshDict.range1 -overwrite
rm -r 0/*
calcRadiusField -calcDirections
topoSet -dict system/topoSetDict.range2
refineMesh -dict system/refineMeshDict.range2 -overwrite
rm -r 0/*
calcRadiusField -calcDirections
topoSet -dict system/topoSetDict.range3
refineMesh -dict system/refineMeshDict.range3 -overwrite
rm -r 0/*
paraFoam
計算時間
22秒 ※シングル、Inter(R) Core(TM) i7-2600 CPU @ 3.40GHz 3.40GHz