① 単純な方法としては、熱流速を温度勾配になおして勾配指定で与えることだと思います。
② 目的と環境によりますが、OpenCFD 版 v1712 以降であれば、function object の energyTransport で温度計算を追加できます。
とはいえ、こちらも同じ問題があります。
externalWallHeatFluxTemperature の fluidThermo は圧縮性流体の熱物性なので、非圧縮性流体ソルバーでは使えない。
代わりに kappaMethod に lookup を指定して、kappa フィールド (熱伝導率) を用意する。
lowerWall
{
type externalWallHeatFluxTemperature;
mode flux;
//kappaMethod fluidThermo;
kappaMethod lookup;
kappa kappa;
...
}
kappa フィールドには、熱流束を設定する境界に fixedValue で熱伝導率の値を指定すればよい。
ただ、kappa は勝手には読んでくれないので、ソルバーを修正して createFields で kappa を読み込ませるか、
controlDict の function object の energyTransport の設定の前で readFields で読み込ませる。
readFields
{
type readFields;
libs (fieldFunctionObjects);
fields (kappa);
}
修正ソルバーの温度計算の実装方法によっては、②の境界条件の修正で対応可能かもしれません。
2020年11月11日水曜日 11:22:27 UTC+9 kyuma: