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. More...
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.
We determine whether the baffle is opening or closing from the sign of the net force across the baffle, from which the baffle open fraction is updated using:
where
![]() | = | baffle open fraction [0-1] |
![]() | = | baffle open fraction on previous evaluation |
![]() | = | simulation time step |
![]() | = | time taken to open the baffle |
![]() | = | net force across the baffle |
The open fraction is then applied to scale the patch areas.
Property | Description | Required | Default value |
---|---|---|---|
p | pressure field name | no | p |
cyclicPatch | cylclic patch name | yes | |
orientation | 1 or -1 used to switch flow direction | yes | |
openFraction | current opatch open fraction [0-1] | yes | |
openingTime | time taken to open the baffle | yes | |
maxOpenFractionDelta | max open fraction change per timestep | yes |
Example of the boundary condition specification:
<patchName> { type activeBaffleVelocity; p p; cyclicPatch cyclic1; orientation 1; openFraction 0.2; openingTime 5.0; maxOpenFractionDelta 0.1; }
Definition at line 158 of file activeBaffleVelocityFvPatchVectorField.H.
activeBaffleVelocityFvPatchVectorField | ( | const fvPatch & | p, |
const DimensionedField< vector, volMesh > & | iF | ||
) |
Definition at line 32 of file activeBaffleVelocityFvPatchVectorField.C.
Referenced by activeBaffleVelocityFvPatchVectorField::clone().
activeBaffleVelocityFvPatchVectorField | ( | const fvPatch & | p, |
const DimensionedField< vector, volMesh > & | iF, | ||
const dictionary & | dict | ||
) |
Definition at line 78 of file activeBaffleVelocityFvPatchVectorField.C.
References Foam::Zero.
activeBaffleVelocityFvPatchVectorField | ( | const activeBaffleVelocityFvPatchVectorField & | ptf, |
const fvPatch & | p, | ||
const DimensionedField< vector, volMesh > & | iF, | ||
const fvPatchFieldMapper & | mapper | ||
) |
Definition at line 54 of file activeBaffleVelocityFvPatchVectorField.C.
Definition at line 110 of file activeBaffleVelocityFvPatchVectorField.C.
activeBaffleVelocityFvPatchVectorField | ( | const activeBaffleVelocityFvPatchVectorField & | ptf, |
const DimensionedField< vector, volMesh > & | iF | ||
) |
Definition at line 131 of file activeBaffleVelocityFvPatchVectorField.C.
TypeName | ( | "activeBaffleVelocity" | ) |
|
inlinevirtual |
Definition at line 241 of file activeBaffleVelocityFvPatchVectorField.H.
References activeBaffleVelocityFvPatchVectorField::activeBaffleVelocityFvPatchVectorField().
|
inlinevirtual |
Definition at line 258 of file activeBaffleVelocityFvPatchVectorField.H.
References activeBaffleVelocityFvPatchVectorField::activeBaffleVelocityFvPatchVectorField().
|
virtual |
Definition at line 154 of file activeBaffleVelocityFvPatchVectorField.C.
References Foam::foamVersion::patch.
|
virtual |
Definition at line 183 of file activeBaffleVelocityFvPatchVectorField.C.
References Foam::foamVersion::patch.
|
virtual |
Definition at line 207 of file activeBaffleVelocityFvPatchVectorField.C.
References Foam::constant::electromagnetic::e, Foam::endl(), polyPatch::faceCells(), forAll, Foam::Info, Foam::mag(), fvPatch::magSf(), Foam::max(), Foam::min(), p, Foam::foamVersion::patch, fvPatch::patch(), fvPatch::Sf(), Foam::sign(), and timeIndex.
|
virtual |
Definition at line 289 of file activeBaffleVelocityFvPatchVectorField.C.
References os(), fvPatchField::write(), Ostream::writeEntry(), and Ostream::writeEntryIfDifferent().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.