Natural convection in a rectangular domain (Steady, Boussinesq approximation)

Update: June 1, 2017
OpenFOAM 4.x

Case directory

$FOAM_TUTORIALS/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom

Summary

Using the Boussinesq approximation, we calculate steady state of natural convection in a rectangular domain with a central hot floor from 0 sec to 2000 sec.

The floor (region "floor") temperature is set to 300 K and only its central part (red part) is set to 600 K. The ceiling is fixed at 300 K, and the sides are thermally opened to allow heat to escape. The all six sides are assumed to be a no-slip wall, with no fluid flowing into or out of the analysis domain.

Model geometry Model geometry

The hot part can be set using the utility "setFields". The location and temperature of the hot part can be specified in the file system/setFieldsDict as follows.

defaultFieldValues
(
    volScalarFieldValue T 300
);
regions
(
    boxToFace
    {
        box (4.5 -1000 4.5) (5.5 1e-5 5.5);
        fieldValues
        (
            volScalarFieldValue T 600
        );
    }
);

The magnitude and direction of the gravity acceleration can be specified in the file constant/g as follows.

dimensions      [0 1 -2 0 0 0 0];
value           (0 -9.81 0);

The meshes are as follows, and the number of mesh is 4000.

Mesh Meshes

The calculation result is as follows.

Flow velocity at final time (U) Flow velocity at final time (U)
Temperature at final time (T, cell-base rendering) Temperature at final time (T, cell-base rendering)

The calculation results show that an updraft occurs in the center of the domain and natural convection is generated.

Commands

cp -r $FOAM_TUTORIALS/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom hotRoom
cd hotRoom

blockMesh
cp 0/T.orig 0/T
setFields
buoyantBoussinesqSimpleFoam

paraFoam

The utility "setFields" is used to set the temperature in the specified area.

Calculation time

15.09 seconds *Single, Inter(R) Core(TM) i7-2600 CPU @ 3.40GHz 3.40GHz