# A.4 Standard boundary conditions

 basic calculated This boundary condition is not designed to be evaluated; it is assmued that the value is assigned via field assignment, and not via a call to e.g. updateCoeffs or evaluate fixedValue This boundary condition supplies a fixed value constraint, and is the base class for a number of other boundary conditions fixedGradient This boundary condition supplies a fixed gradient condition, such that the patch values are calculated using: zeroGradient This boundary condition applies a zero-gradient condition from the patch internal field onto the patch faces mixed This boundary condition provides a base class for ’mixed’ type boundary conditions, i.e. conditions that mix fixed value and patch-normal gradient conditions directionMixed Base class for direction-mixed boundary conditions extrapolatedCalculated This boundary condition applies a zero-gradient condition from the patch internal field onto the patch faces when evaluated but may also be assigned. snGrad returns the patch gradient evaluated from the current internal and patch field values rather than returning zero Table A.7: basic boundary conditions.
 constraint cyclic This boundary condition enforces a cyclic condition between a pair of boundaries cyclicACMI This boundary condition enforces a cyclic condition between a pair of boundaries, whereby communication between the patches is performed using an arbitrarily coupled mesh interface (ACMI) interpolation cyclicAMI This boundary condition enforces a cyclic condition between a pair of boundaries, whereby communication between the patches is performed using an arbitrary mesh interface (AMI) interpolation cyclicSlip This boundary condition is a light wrapper around the cyclicFvPatchField condition, providing no new functionality empty This boundary condition provides an ’empty’ condition for reduced dimensions cases, i.e. 1- and 2-D geometries. Apply this condition to patches whose normal is aligned to geometric directions that do not constitue solution directions jumpCyclic This boundary condition provides a base class for coupled-cyclic conditions with a specified ’jump’ (or offset) between the values jumpCyclicAMI This boundary condition provides a base class that enforces a cyclic condition with a specified ’jump’ (or offset) between a pair of boundaries, whereby communication between the patches is performed using an arbitrary mesh interface (AMI) interpolation nonuniformTransformCyclic This boundary condition enforces a cyclic condition between a pair of boundaries, incorporating a non-uniform transformation processor This boundary condition enables processor communication across patches processorCyclic This boundary condition enables processor communication across cyclic patches symmetry This boundary condition enforces a symmetry constraint symmetryPlane This boundary condition enforces a symmetryPlane constraint wedge This boundary condition is similar to the cyclic condition, except that it is applied to 2-D geometries Table A.8: constraint boundary conditions.
 Inlet cylindricalInletVelocity This boundary condition describes an inlet vector boundary condition in cylindrical coordinates given a central axis, central point, rpm, axial and radial velocity fanPressure This boundary condition can be applied to assign either a pressure inlet or outlet total pressure condition for a fan fixedFluxExtrapolatedPressure This boundary condition sets the pressure gradient to the provided value such that the flux on the boundary is that specified by the velocity boundary condition fixedFluxPressure This boundary condition sets the pressure gradient to the provided value such that the flux on the boundary is that specified by the velocity boundary condition fixedMean This boundary condition extrapolates field to the patch using the near-cell values and adjusts the distribution to match the specified, optionally time-varying, mean value fixedMeanOutletInlet This boundary condition extrapolates field to the patch using the near-cell values and adjusts the distribution to match the specified, optionally time-varying, mean value. This extrapolated field is applied as a fixedValue for outflow faces but zeroGradient is applied to inflow faces fixedNormalInletOutletVelocity This velocity inlet/outlet boundary condition combines a fixed normal component obtained from the ”normalVelocity” patchField supplied with a fixed or zero-gradiented tangential component fixedPressureCompressibleDensity This boundary condition calculates a (liquid) compressible density as a function of pressure and fluid properties: flowRateInletVelocity Velocity inlet boundary condition either correcting the extrapolated velocity or creating a uniform velocity field normal to the patch adjusted to match the specified flow rate freestream This boundary condition provides a free-stream condition. It is a ’mixed’ condition derived from the inletOutlet condition, whereby the mode of operation switches between fixed (free stream) value and zero gradient based on the sign of the flux freestreamPressure This boundary condition provides a free-stream condition for pressure freestreamVelocity This boundary condition provides a free-stream condition for velocity mappedFlowRate Describes a volumetric/mass flow normal vector boundary condition by its magnitude as an integral over its area mappedVelocityFluxFixedValue This boundary condition maps the velocity and flux from a neighbour patch to this patch outletInlet This boundary condition provides a generic inflow condition, with specified outflow for the case of reverse flow outletMappedUniformInlet This boundary condition averages the field over the ”outlet” patch specified by name ”outletPatch” and applies this as the uniform value of the field over this patch plenumPressure This boundary condition provides a plenum pressure inlet condition. This condition creates a zero-dimensional model of an enclosed volume of gas upstream of the inlet. The pressure that the boundary condition exerts on the inlet boundary is dependent on the thermodynamic state of the upstream volume. The upstream plenum density and temperature are time-stepped along with the rest of the simulation, and momentum is neglected. The plenum is supplied with a user specified mass flow and temperature pressureDirectedInletOutletVelocity This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with the specified inlet direction pressureDirectedInletVelocity This velocity inlet boundary condition is applied to patches where the pressure is specified. The inflow velocity is obtained from the flux with the specified inlet direction” direction pressureInletOutletParSlipVelocity This velocity inlet/outlet boundary condition for pressure boundary where the pressure is specified. A zero-gradient is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with the specified inlet direction pressureInletOutletVelocity This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the patch-face normal component of the internal-cell value pressureInletUniformVelocity This velocity inlet boundary condition is applied to patches where the pressure is specified. The uniform inflow velocity is obtained by averaging the flux over the patch, and then applying it in the direction normal to the patch faces pressureInletVelocity This velocity inlet boundary condition is applied to patches where the pressure is specified. The inflow velocity is obtained from the flux with a direction normal to the patch faces pressureNormalInletOutletVelocity This velocity inlet/outlet boundary condition is applied to patches where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with a direction normal to the patch faces pressurePIDControlInletVelocity This boundary condition tries to generate an inlet velocity that maintains a specified pressure drop between two face zones downstream. The zones should fully span a duct through which all the inlet flow passes rotatingPressureInletOutletVelocity This velocity inlet/outlet boundary condition is applied to patches in a rotating frame where the pressure is specified. A zero-gradient is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with a direction normal to the patch faces rotatingTotalPressure This boundary condition provides a total pressure condition for patches in a rotating frame supersonicFreestream This boundary condition provides a supersonic free-stream condition surfaceNormalFixedValue This boundary condition provides a surface-normal vector boundary condition by its magnitude swirlFlowRateInletVelocity This boundary condition provides a volumetric- OR mass-flow normal vector boundary condition by its magnitude as an integral over its area with a swirl component determined by the angular speed, given in revolutions per minute (RPM) swirlInletVelocity This boundary condition describes an inlet vector boundary condition in swirl coordinates given a central axis, central point, axial, radial and tangential velocity profiles syringePressure This boundary condition provides a pressure condition, obtained from a zero-D model of the cylinder of a syringe timeVaryingMappedFixedValue This boundary conditions interpolates the values from a set of supplied points in space and time totalPressure This boundary condition provides a total pressure condition. Four variants are possible: totalTemperature This boundary condition provides a total temperature condition turbulentDFSEMInlet Velocity boundary condition including synthesised eddies for use with LES and DES turbulent flows turbulentDigitalFilterInlet Digital-filter based boundary condition for velocity, i.e. U, to generate synthetic turbulence-alike time-series for LES and DES turbulent flow computations from input turbulence statistics turbulentInlet This boundary condition produces spatiotemporal-variant field by summing a set of pseudo-random numbers and a given spatiotemporal-invariant mean field. The field can be any type, e.g. scalarField. At a single point and time, all components are summed by the same random number, e.g. velocity components (u, v, w) are summed by the same random number, p; thus, output is (u+p, v+p, w+p) turbulentIntensityKineticEnergyInlet This boundary condition provides a turbulent kinetic energy condition, based on user-supplied turbulence intensity, defined as a fraction of the mean velocity: uniformNormalFixedValue This boundary condition provides a uniform surface-normal vector boundary condition by its magnitude uniformTotalPressure This boundary condition provides a time-varying form of the uniform total pressure boundary condition Foam::totalPressureFvPatchField variableHeightFlowRateInletVelocity This boundary condition provides a velocity boundary condition for multphase flow based on a user-specified volumetric flow rate variableHeightFlowRate This boundary condition provides a phase fraction condition based on the local flow conditions, whereby the values are constrained to lay between user-specified upper and lower bounds. The behaviour is described by: waveSurfacePressure This is a pressure boundary condition, whose value is calculated as the hydrostatic pressure based on a given displacement: Table A.9: Inlet boundary conditions.
 Outlet advective This boundary condition provides an advective outflow condition, based on solving DDt(W, field) = 0 at the boundary where W is the wave velocity and field is the field to which this boundary condition is applied fanPressure This boundary condition can be applied to assign either a pressure inlet or outlet total pressure condition for a fan fixedNormalInletOutletVelocity This velocity inlet/outlet boundary condition combines a fixed normal component obtained from the ”normalVelocity” patchField supplied with a fixed or zero-gradiented tangential component flowRateOutletVelocity Velocity outlet boundary condition which corrects the extrapolated velocity to match the specified flow rate fluxCorrectedVelocity This boundary condition provides a velocity outlet boundary condition for patches where the pressure is specified. The outflow velocity is obtained by ”zeroGradient” and then corrected from the flux: freestream This boundary condition provides a free-stream condition. It is a ’mixed’ condition derived from the inletOutlet condition, whereby the mode of operation switches between fixed (free stream) value and zero gradient based on the sign of the flux freestreamPressure This boundary condition provides a free-stream condition for pressure freestreamVelocity This boundary condition provides a free-stream condition for velocity inletOutlet This boundary condition provides a generic outflow condition, with specified inflow for the case of return flow inletOutletTotalTemperature This boundary condition provides an outflow condition for total temperature for use with supersonic cases, where a user-specified value is applied in the case of reverse flow matchedFlowRateOutletVelocity Velocity outlet boundary condition which corrects the extrapolated velocity to match the flow rate of the specified corresponding inlet patch outletPhaseMeanVelocity This boundary condition adjusts the velocity for the given phase to achieve the specified mean thus causing the phase-fraction to adjust according to the mass flow rate pressureDirectedInletOutletVelocity This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with the specified inlet direction pressureInletOutletParSlipVelocity This velocity inlet/outlet boundary condition for pressure boundary where the pressure is specified. A zero-gradient is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with the specified inlet direction pressureInletOutletVelocity This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the patch-face normal component of the internal-cell value pressureNormalInletOutletVelocity This velocity inlet/outlet boundary condition is applied to patches where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with a direction normal to the patch faces rotatingPressureInletOutletVelocity This velocity inlet/outlet boundary condition is applied to patches in a rotating frame where the pressure is specified. A zero-gradient is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with a direction normal to the patch faces rotatingTotalPressure This boundary condition provides a total pressure condition for patches in a rotating frame supersonicFreestream This boundary condition provides a supersonic free-stream condition totalPressure This boundary condition provides a total pressure condition. Four variants are possible: totalTemperature This boundary condition provides a total temperature condition uniformInletOutlet Variant of inletOutlet boundary condition with uniform inletValue uniformTotalPressure This boundary condition provides a time-varying form of the uniform total pressure boundary condition Foam::totalPressureFvPatchField waveTransmissive This boundary condition provides a wave transmissive outflow condition, based on solving DDt(W, field) = 0 at the boundary W is the wave velocity and field is the field to which this boundary condition is applied Table A.10: Outlet boundary conditions.
 Wall fixedFluxExtrapolatedPressure This boundary condition sets the pressure gradient to the provided value such that the flux on the boundary is that specified by the velocity boundary condition fixedFluxPressure This boundary condition sets the pressure gradient to the provided value such that the flux on the boundary is that specified by the velocity boundary condition fixedNormalSlip This boundary condition sets the patch-normal component to a fixed value movingWallVelocity This boundary condition provides a velocity condition for cases with moving walls noSlip This boundary condition fixes the velocity to zero at walls partialSlip This boundary condition provides a partial slip condition. The amount of slip is controlled by a user-supplied field rotatingWallVelocity This boundary condition provides a rotational velocity condition slip This boundary condition provides a slip constraint translatingWallVelocity This boundary condition provides a velocity condition for translational motion on walls Table A.11: Wall boundary conditions.
 Coupled activeBaffleVelocity This velocity boundary condition simulates the opening of a baffle due to local flow conditions, by merging the behaviours of wall and cyclic conditions. The baffle joins two mesh regions, where the open fraction determines the interpolation weights applied to each cyclic- and neighbour-patch contribution activePressureForceBaffleVelocity This boundary condition is applied to the flow velocity, to simulate the opening or closure of a baffle due to area averaged pressure or force delta, between both sides of the baffle. This is achieved by merging the behaviours of wall and cyclic baffles fan This boundary condition provides a jump condition, using the cyclic condition as a base fixedJumpAMI This boundary condition provides a jump condition, across non-conformal cyclic path-pairs, employing an arbitraryMeshInterface (AMI) fixedJump This boundary condition provides a jump condition, using the cyclic condition as a base mappedField This boundary condition provides a self-contained version of the mapped condition. It does not use information on the patch; instead it holds the data locally mappedFixedInternalValue This boundary condition maps the boundary and internal values of a neighbour patch field to the boundary and internal values of *this mappedFixedPushedInternalValue This boundary condition maps the boundary values of a neighbour patch field to the boundary and internal cell values of *this mappedFixedValue This boundary condition maps the value at a set of cells or patch faces back to *this mappedFlowRate Describes a volumetric/mass flow normal vector boundary condition by its magnitude as an integral over its area mappedVelocityFluxFixedValue This boundary condition maps the velocity and flux from a neighbour patch to this patch swirlFanVelocity This boundary condition provides a jump condition for U across a cyclic pressure jump condition and applies a transformation to U timeVaryingMappedFixedValue This boundary conditions interpolates the values from a set of supplied points in space and time uniformJumpAMI This boundary condition provides a jump condition, using the cyclicAMI condition as a base. The jump is specified as a time-varying uniform value across the patch uniformJump This boundary condition provides a jump condition, using the cyclic condition as a base. The jump is specified as a time-varying uniform value across the patch Table A.12: Coupled boundary conditions.
 Generic codedFixedValue Constructs on-the-fly a new boundary condition (derived from fixedValueFvPatchField) which is then used to evaluate codedMixed Constructs on-the-fly a new boundary condition (derived from mixedFvPatchField) which is then used to evaluate fixedInternalValueFvPatchField This boundary condition provides a mechanism to set boundary (cell) values directly into a matrix, i.e. to set a constraint condition. Default behaviour is to act as a zero gradient condition fixedNormalSlip This boundary condition sets the patch-normal component to a fixed value fixedProfile This boundary condition provides a fixed value profile condition interfaceCompression Applies interface-compression to the phase-fraction distribution at the patch by setting the phase-fraction to 0 if it is below 0.5, otherwise to 1 mappedField This boundary condition provides a self-contained version of the mapped condition. It does not use information on the patch; instead it holds the data locally mappedFixedInternalValue This boundary condition maps the boundary and internal values of a neighbour patch field to the boundary and internal values of *this mappedFixedPushedInternalValue This boundary condition maps the boundary values of a neighbour patch field to the boundary and internal cell values of *this mappedFixedValue This boundary condition maps the value at a set of cells or patch faces back to *this partialSlip This boundary condition provides a partial slip condition. The amount of slip is controlled by a user-supplied field phaseHydrostaticPressure This boundary condition provides a phase-based hydrostatic pressure condition, calculated as: prghPressure This boundary condition provides static pressure condition for p_rgh, calculated as: prghTotalHydrostaticPressure This boundary condition provides static pressure condition for p_rgh, calculated as: prghTotalPressure This boundary condition provides static pressure condition for p_rgh, calculated as: rotatingWallVelocity This boundary condition provides a rotational velocity condition scaledFixedValue This condition applies a scalar multiplier to the value of another boundary condition slip This boundary condition provides a slip constraint surfaceNormalFixedValue This boundary condition provides a surface-normal vector boundary condition by its magnitude translatingWallVelocity This boundary condition provides a velocity condition for translational motion on walls uniformDensityHydrostaticPressure This boundary condition provides a hydrostatic pressure condition, calculated as: uniformFixedGradient This boundary condition provides a uniform fixed gradient condition uniformFixedValue This boundary condition provides a uniform fixed value condition uniformNormalFixedValue This boundary condition provides a uniform surface-normal vector boundary condition by its magnitude Table A.13: Generic boundary conditions.