OpenFOAM【chtMultiRegionFoam:複数領域の設定】

バージョンはOpenFOAM-v1912

chtMultiRegionFoamのmultiRegionHeaterを参考に設定します。(/tutorial/heatTransfer中に格納)。

ファイル構成

/systemに以下を配置します。

  • blockmeshDict
  • topoSetDict
  • controlDict
  • fvSolution
  • fvSchemes

topoSetDictが領域分割の実体です。大体こんな感じ。

actions
(
    // Heater
    {
        name    heaterCellSet;
        type    cellSet;
        action  new;
        source  boxToCell;
        box     (-0.01001 0 -100) (0.01001 0.00999 100);
    }   
    {
        name    heaterCellSet;
        type    cellSet;
        action  add;
        source  boxToCell;
        box     (-0.01001 -100 -0.01001) (0.01001 0.00999 0.01001);
    }   
    {
        name    heater;
        type    cellZoneSet;
        action  new;
        source  setToCellZone;
        set     heaterCellSet;
    }   
......
);

実行コマンド

実行コマンドはAllrun.preをカンニングします。

$ blockMesh
$ topoSet
$ splitMeshRegions -cellZones -overwrite

実行するとメッシュファイルができているので、確認しましょう。

$ paraFoam

固体-流体領域の設定

/constant中のregionPropertiesに記載します。

regions
(
    fluid       (bottomWater topAir)
    solid       (heater leftSolid rightSolid)
);

参考にしました

PENGUINITIS - 流体・固体熱連成解析

PENGUINITIS - セットの作成

http://www.opencae.or.jp/wp-content/uploads/2018/02/OpenCAE2018_001.pdf