OpenFOAM 2.1.0: Boundary Conditions
Time-Dependent Conditions
Users can now initialise a range of boundary conditions (BCs) to be time-varying. This feature has been made available by incorporating the DataEntry class into BCs. The time-varying options are described below using the uniformFixedValue BC example, that requires the user to specify the value by the uniformValue
keyword entry.
constant value
uniformValue constant 1.0;
inline table
uniformValue table ( ( 0 0.0) (100 10.0) );
OpenFOAM table file
uniformValue tableFile; tableFileCoeffs { fileName "$FOAM_CASE/myDataFile" outOfBounds clamp; }
CSV file
uniformValue csvFile; csvFileCoeffs { fileName "$FOAM_CASE/myDataFile" outOfBounds clamp; hasHeaderLine true; refColumn 0; componentColumns (0 1 2); // vector example }
polynomial
uniformValue polynomial // y = 0.1 + 1.3x^2 + 2.7x^3 ( (0.1 0) (1.3 2.0) (2.7 3.0) );
The BCs that include time-varying options in v2.1.0 are:
- flowRateInletVelocity: inlet condition with time-varying flow-rate.
- oscillatingFixedValue: oscillatory fixed value condition with time-varying amplitude and frequency.
- rotatingPressureInletOutletVelocity: total pressure condition for a rotating patch with time-varying angular velocity.
- rotatingTotalPressure: total pressure condition for a rotating patch with time-varying angular velocity.
- rotatingWallVelocity: velocity condition for a rotating boundary, e.g. a wheel, with time-varying angular velocity.
- uniformFixedValue: general fixed value condition with time-varying value.
- uniformTotalPressure: total pressure condition with time-varying pressure.
The new handling of time-varying BCs makes the timeVaryingFlowRateInletVelocity, timeVaryingUniformFixedValue and timeVaryingUniformTotalPressure BCs redundant. They are therefore deprecated in v2.1.0.
Source code
- finiteVolume library
$FOAM_SRC/finiteVolume
- DataEntry class
$FOAM
_SRC/OpenFOAM/primitives/functions/DataEntry
Examples
- T-Junction example
$FOAM_TUTORIALS/incompressible/pimpleFoam/TJunction
- Oscillating box example
$FOAM_TUTORIALS/incompressible/potentialFreeSurfaceFoam/oscillatingBox
Other New Conditions
Other new BCs include:
- waveSurfacePressure: for use with the new potentialFreeSurfaceFoam solver, this condition applies a fixed pressure condition based on the wave height potential.
- pressureInletOutletParVelocity: similar to pressureInletOutletVelocity condition, except with slip condition applied tangential to the patch when an inlet.
- codedMixed: an run-time compiled variant of mixed, extending on the codedFixedValue BC in the v2.0.0 release.
Source code
- finiteVolume library
$FOAM_SRC/finiteVolume
Example
- Oscillating box example
$FOAM_TUTORIALS/incompressible/potentialFreeSurfaceFoam/oscillatingBox