トップ - 技術ドキュメント - OpenFOAM 付属チュートリアル一覧

2次元輪郭からの3次元メッシュ作成(回転押し出し)

更新:2017/6/1
OpenFOAM 4.x

ケース

$FOAM_TUTORIALS/mesh/foamyQuadMesh/square

概要

輪郭情報から foamyQuadMesh を使用して2次元メッシュを作成し、さらに extrude2DMesh で回転押し出しして3次元メッシュを作成します。

形状の輪郭はファイル constant/triSurface/unit_cube.stl で定義されています。

jaggedBoundary.stl で定義された輪郭形状 unit_cube.stl で定義された輪郭形状

2次元メッシュ作成の設定はファイル system/foamyQuadMeshDict で指定します。形状ファイルで指定した形状以外に以下の様に領域 refinementBox を定義してメッシュの粗密をコントロールしています。

geometry
{
    unit_cube.stl
    {
        name cube;
        type triSurfaceMesh;
    }
    refinementBox
    {
        type searchableBox;
        min (0.25 0.25 -1000);
        max (0.75 0.75 1000);
    }
}		

押し出し方法は以下の様にファイル system/extrude2DMeshDict で指定します。extrudeModel として「wedge」を設定することで回転押し出しを行います。

extrudeModel        wedge;
patchInfo
{}
patchType           wedge;
sectorCoeffs
{
    axisPt          (0 0 0);
    axis            (1 0 0);
    angle           10;
}

メッシュは以下の通りで、メッシュ数は80365です。

輪郭定義とメッシュ 輪郭定義と3次元メッシュ
2次元メッシュ 2次元メッシュ
2次元メッシュ(拡大) 2次元メッシュ(拡大)
3次元メッシュ 3次元メッシュ
3次元メッシュ(拡大) 3次元メッシュ(拡大)

実行コマンド

cp -r $FOAM_TUTORIALS/mesh/foamyQuadMesh/square square
cd square

surfaceFeatureExtract
foamyQuadMesh -overwrite
extrude2DMesh -overwrite polyMesh2D
checkMesh -allGeometry -allTopology -constant -noZero

paraFoam

計算時間

11.86秒 ※シングル、Inter(R) Core(TM) i7-2600 CPU @ 3.40GHz 3.40GHz