Foam::immersedBoundaryFvPatchField. More...
Public Member Functions | |
TypeName (immersedBoundaryFvPatch::typeName_()) | |
Runtime type information. More... | |
immersedBoundaryFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &) | |
Construct from patch and internal field. More... | |
immersedBoundaryFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &) | |
Construct from patch, internal field and dictionary. More... | |
immersedBoundaryFvPatchField (const immersedBoundaryFvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &) | |
Construct by mapping given immersedBoundaryFvPatchField. More... | |
immersedBoundaryFvPatchField (const immersedBoundaryFvPatchField< Type > &) | |
Construct as copy. More... | |
virtual tmp< fvPatchField< Type > > | clone () const |
Construct and return a clone. More... | |
immersedBoundaryFvPatchField (const immersedBoundaryFvPatchField< Type > &, const DimensionedField< Type, volMesh > &) | |
Construct as copy setting internal field reference. More... | |
virtual tmp< fvPatchField< Type > > | clone (const DimensionedField< Type, volMesh > &iF) const |
Construct and return a clone setting internal field reference. More... | |
virtual | ~immersedBoundaryFvPatchField () |
Destructor. More... | |
const immersedBoundaryFvPatch & | ibPatch () const |
Return reference to immersed boundary patch. More... | |
virtual Field< Type > & | refValue () |
Return access to reference value. More... | |
virtual const Field< Type > & | refValue () const |
Return reference value. More... | |
virtual Field< Type > & | refGrad () |
Return access to reference gradient. More... | |
virtual const Field< Type > & | refGrad () const |
Return reference gradient. More... | |
virtual bool | fixesValue () const |
Return true if this patch field fixes a value. More... | |
Switch & | fixesValue () |
Return access to fixes value switch. More... | |
const Field< Type > & | ibValue () const |
Return fields on intersection points interacting with the IB. More... | |
const Field< Type > & | ibGrad () const |
Return IB surface-normal gradient. More... | |
tmp< Field< Type > > | ibCellValue () const |
Return IB cell field. More... | |
tmp< Field< Type > > | ibSamplingPointValue () const |
Return IB sample point field. More... | |
tmp< Field< Type > > | triValue () const |
Return fields on triangular faces. More... | |
tmp< Field< Type > > | triGrad () const |
Return IB surface-normal gradient. More... | |
virtual void | autoMap (const fvPatchFieldMapper &) |
Map (and resize as needed) from self given a mapping object. More... | |
virtual void | rmap (const fvPatchField< Type > &, const labelList &) |
Reverse map the given fvPatchField onto this fvPatchField. More... | |
void | updateCoeffs () |
Update the coefficients associated with the patch field. More... | |
virtual void | initEvaluate (const Pstream::commsTypes commsType=Pstream::blocking) |
Initialise the evaluation of the patch field. More... | |
virtual void | evaluate (const Pstream::commsTypes commsType=Pstream::blocking) |
Evaluate the patch field. More... | |
virtual tmp< Field< Type > > | valueInternalCoeffs (const tmp< scalarField > &) const |
Return the matrix diagonal coefficients corresponding to the. More... | |
virtual tmp< Field< Type > > | valueBoundaryCoeffs (const tmp< scalarField > &) const |
Return the matrix source coefficients corresponding to the. More... | |
tmp< Field< Type > > | gradientInternalCoeffs () const |
Return the matrix diagonal coefficients corresponding to the. More... | |
tmp< Field< Type > > | gradientBoundaryCoeffs () const |
Return the matrix source coefficients corresponding to the. More... | |
virtual void | manipulateMatrix (fvMatrix< Type > &matrix) |
Manipulate matrix. More... | |
virtual void | write (Ostream &) const |
Write. More... | |
![]() | |
TypeName ("fvPatchField") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (tmp, fvPatchField, patch,(const fvPatch &p, const DimensionedField< Type, volMesh > &iF),(p, iF)) | |
declareRunTimeSelectionTable (tmp, fvPatchField, patchMapper,(const fvPatchField< Type > &ptf, const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const fvPatchFieldMapper &m),(dynamic_cast< const fvPatchFieldType & >(ptf), p, iF, m)) | |
declareRunTimeSelectionTable (tmp, fvPatchField, dictionary,(const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const dictionary &dict),(p, iF, dict)) | |
fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &) | |
Construct from patch and internal field. More... | |
fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const word &patchType) | |
Construct from patch and internal field and patch type. More... | |
fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const Field< Type > &) | |
Construct from patch and internal field and patch field. More... | |
fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &, const bool valueRequired=false) | |
Construct from patch, internal field and dictionary. More... | |
fvPatchField (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &) | |
Construct by mapping the given fvPatchField onto a new patch. More... | |
fvPatchField (const fvPatchField< Type > &) | |
Construct as copy. More... | |
fvPatchField (const fvPatchField< Type > &, const DimensionedField< Type, volMesh > &) | |
Construct as copy setting internal field reference. More... | |
virtual tmp< fvPatchField< Type > > | clone () const |
Construct and return a clone. More... | |
Foam::tmp< Foam::fvPatchField< Type > > | NewCalculatedType (const fvPatch &p) |
Foam::tmp< Foam::fvPatchField< Type > > | NewCalculatedType (const fvPatchField< Type2 > &pf) |
virtual | ~fvPatchField () |
Destructor. More... | |
const objectRegistry & | db () const |
Return local objectRegistry. More... | |
const fvPatch & | patch () const |
Return patch. More... | |
const DimensionedField< Type, volMesh > & | dimensionedInternalField () const |
Return dimensioned internal field reference. More... | |
const Field< Type > & | internalField () const |
Return internal field reference. More... | |
const word & | patchType () const |
Optional patch type. More... | |
word & | patchType () |
Optional patch type. More... | |
virtual bool | coupled () const |
Return true if this patch field is coupled. More... | |
bool | updated () const |
Return true if the boundary condition has already been updated. More... | |
bool | manipulatedMatrix () const |
Return true if the matrix has already been manipulated. More... | |
virtual tmp< Field< Type > > | snGrad () const |
Return patch-normal gradient. More... | |
virtual tmp< Field< Type > > | snGrad (const scalarField &deltaCoeffs) const |
Return patch-normal gradient for coupled-patches. More... | |
virtual void | updateCoeffs (const scalarField &weights) |
Update the coefficients associated with the patch field. More... | |
virtual tmp< Field< Type > > | patchInternalField () const |
Return internal field next to patch as patch field. More... | |
virtual void | patchInternalField (Field< Type > &) const |
Return internal field next to patch as patch field. More... | |
virtual tmp< Field< Type > > | patchNeighbourField () const |
Return patchField on the opposite patch of a coupled patch. More... | |
virtual tmp< Field< Type > > | gradientInternalCoeffs () const |
Return the matrix diagonal coefficients corresponding to the. More... | |
virtual tmp< Field< Type > > | gradientInternalCoeffs (const scalarField &deltaCoeffs) const |
Return the matrix diagonal coefficients corresponding to the. More... | |
virtual tmp< Field< Type > > | gradientBoundaryCoeffs () const |
Return the matrix source coefficients corresponding to the. More... | |
virtual tmp< Field< Type > > | gradientBoundaryCoeffs (const scalarField &deltaCoeffs) const |
Return the matrix source coefficients corresponding to the. More... | |
virtual void | manipulateMatrix (fvMatrix< Type > &matrix, const scalarField &weights) |
Manipulate matrix with given weights. More... | |
void | writeEntryIfDifferent (Ostream &os, const word &entryName, const EntryType &value1, const EntryType &value2) const |
Helper function to write the keyword and entry only if the. More... | |
void | check (const fvPatchField< Type > &) const |
Check fvPatchField<Type> against given fvPatchField<Type> More... | |
virtual void | operator= (const UList< Type > &) |
virtual void | operator= (const fvPatchField< Type > &) |
virtual void | operator= (const Type &) |
virtual void | operator+= (const fvPatchField< Type > &) |
virtual void | operator+= (const Field< Type > &) |
virtual void | operator+= (const Type &) |
virtual void | operator-= (const fvPatchField< Type > &) |
virtual void | operator-= (const Field< Type > &) |
virtual void | operator-= (const Type &) |
virtual void | operator*= (const fvPatchField< scalar > &) |
virtual void | operator*= (const Field< scalar > &) |
virtual void | operator*= (const scalar) |
virtual void | operator/= (const fvPatchField< scalar > &) |
virtual void | operator/= (const Field< scalar > &) |
virtual void | operator/= (const scalar) |
virtual void | operator== (const fvPatchField< Type > &) |
virtual void | operator== (const Field< Type > &) |
virtual void | operator== (const Type &) |
Static Public Attributes | |
static const debug::optimisationSwitch | nBcIter_ |
Number of boundary condition update iterations. More... | |
static const debug::tolerancesSwitch | bcTolerance_ |
Boundary condition update tolerance. More... | |
![]() | |
static int | disallowGenericFvPatchField |
Debug switch to disallow the use of genericFvPatchField. More... | |
Protected Member Functions | |
bool | motionUpdateRequired () const |
Does immersed boundary patch field need motion update? More... | |
virtual void | motionUpdate () const |
Execute immersed boundary patch field motion update. More... | |
virtual void | setIbCellValues (const Field< Type > &) const |
Set IB cell values. More... | |
Private Member Functions | |
void | updateIbValues () const |
Update IB value and gradient. More... | |
tmp< Field< Type > > | imposeDirichletCondition () const |
Impose Dirichlet BC at IB cells and return corrected cells values. More... | |
tmp< Field< Type > > | imposeNeumannCondition () const |
Impose Neumann BC at IB cells and return corrected cells values. More... | |
void | imposeDeadCondition () |
Impose condition in dead cells. More... | |
void | correctDiag (fvMatrix< Type > &eqn) const |
Check and correct zero diagonal in dead cells. More... | |
void | correctOffDiag (fvMatrix< Type > &eqn) const |
Impose fixed gradient condition by manipulating matrix. More... | |
Private Attributes | |
const immersedBoundaryFvPatch & | ibPatch_ |
Local reference cast into the processor patch. More... | |
const fvMesh & | mesh_ |
Local reference to fvMesh. More... | |
Field< Type > | refValue_ |
Defining value field. More... | |
Field< Type > | refGrad_ |
Defining normal gradient field. More... | |
Switch | fixesValue_ |
Does the boundary condition fix the value. More... | |
Switch | setDeadCellValue_ |
Set dead cell value. More... | |
Type | deadCellValue_ |
Dead cell value. More... | |
label | ibUpdateTimeIndex_ |
Time index for last update of mesh or moving boundary. More... | |
Field< Type > | ibValue_ |
Value field. More... | |
Field< Type > | ibGrad_ |
Normal gradient field. More... | |
Additional Inherited Members | |
![]() | |
typedef fvPatch | Patch |
![]() | |
static tmp< fvPatchField< Type > > | New (const word &, const fvPatch &, const DimensionedField< Type, volMesh > &) |
Return a pointer to a new patchField created on freestore given. More... | |
static tmp< fvPatchField< Type > > | New (const word &, const word &actualPatchType, const fvPatch &, const DimensionedField< Type, volMesh > &) |
Return a pointer to a new patchField created on freestore given. More... | |
static tmp< fvPatchField< Type > > | New (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &) |
Return a pointer to a new patchField created on freestore from. More... | |
static tmp< fvPatchField< Type > > | New (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &) |
Return a pointer to a new patchField created on freestore. More... | |
static tmp< fvPatchField< Type > > | NewCalculatedType (const fvPatch &) |
Return a pointer to a new calculatedFvPatchField created on. More... | |
static tmp< fvPatchField< Type > > | NewCalculatedType (const fvPatchField< Type2 > &) |
Return a pointer to a new calculatedFvPatchField created on. More... | |
static const word & | calculatedType () |
Return the type of the calculated for of fvPatchField. More... | |
Foam::immersedBoundaryFvPatchField.
Definition at line 53 of file immersedBoundaryFvPatchField.H.
immersedBoundaryFvPatchField | ( | const fvPatch & | p, |
const DimensionedField< Type, volMesh > & | iF | ||
) |
Construct from patch and internal field.
Definition at line 760 of file immersedBoundaryFvPatchField.C.
immersedBoundaryFvPatchField | ( | const fvPatch & | p, |
const DimensionedField< Type, volMesh > & | iF, | ||
const dictionary & | dict | ||
) |
Construct from patch, internal field and dictionary.
Definition at line 780 of file immersedBoundaryFvPatchField.C.
References dict, dimensionedInternalField(), Foam::exit(), Foam::FatalIOError, FatalIOErrorIn, and p.
immersedBoundaryFvPatchField | ( | const immersedBoundaryFvPatchField< Type > & | ptf, |
const fvPatch & | p, | ||
const DimensionedField< Type, volMesh > & | iF, | ||
const fvPatchFieldMapper & | mapper | ||
) |
Construct by mapping given immersedBoundaryFvPatchField.
onto a new patch
Definition at line 821 of file immersedBoundaryFvPatchField.C.
References dimensionedInternalField(), Foam::exit(), FatalErrorIn, Foam::FatalIOError, and p.
immersedBoundaryFvPatchField | ( | const immersedBoundaryFvPatchField< Type > & | ptf | ) |
Construct as copy.
Definition at line 865 of file immersedBoundaryFvPatchField.C.
immersedBoundaryFvPatchField | ( | const immersedBoundaryFvPatchField< Type > & | ptf, |
const DimensionedField< Type, volMesh > & | iF | ||
) |
Construct as copy setting internal field reference.
Definition at line 884 of file immersedBoundaryFvPatchField.C.
|
inlinevirtual |
Destructor.
Definition at line 228 of file immersedBoundaryFvPatchField.H.
|
private |
Update IB value and gradient.
Definition at line 59 of file immersedBoundaryFvPatchField.C.
References internalField().
|
private |
Impose Dirichlet BC at IB cells and return corrected cells values.
Calculate value and gradient on IB intersection points
Definition at line 90 of file immersedBoundaryFvPatchField.C.
References dimensionedInternalField(), Foam::endl(), forAll, Foam::gAverage(), Foam::gMax(), Foam::gMin(), InfoIn, internalField(), Foam::mag(), Foam::max(), R, Foam::reduce(), List::size(), and Foam::sqr().
|
private |
Impose Neumann BC at IB cells and return corrected cells values.
Calculate value and gradient on IB intersection points
Definition at line 284 of file immersedBoundaryFvPatchField.C.
References dimensionedInternalField(), Foam::endl(), forAll, Foam::gAverage(), Foam::gMax(), Foam::gMin(), InfoIn, internalField(), Foam::mag(), Foam::max(), Foam::reduce(), List::size(), Foam::sqr(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
|
private |
Impose condition in dead cells.
Definition at line 474 of file immersedBoundaryFvPatchField.C.
References forAll, and internalField().
|
private |
Check and correct zero diagonal in dead cells.
Definition at line 495 of file immersedBoundaryFvPatchField.C.
References forAll, Foam::gMax(), Foam::gSumMag(), Foam::mag(), Foam::sign(), and List::size().
|
private |
Impose fixed gradient condition by manipulating matrix.
Note: reconsider pre-factor for diffusivity HJ, 16/Apr/2012
Definition at line 526 of file immersedBoundaryFvPatchField.C.
References fvMatrix::boundaryCoeffs(), GeometricField::boundaryField(), Foam::diag(), forAll, fvMatrix::internalCoeffs(), GeometricField::internalField(), patchi, UList::size(), and fvMatrix::source().
|
protected |
Does immersed boundary patch field need motion update?
Definition at line 688 of file immersedBoundaryFvPatchField.C.
|
protectedvirtual |
Execute immersed boundary patch field motion update.
Definition at line 712 of file immersedBoundaryFvPatchField.C.
|
protectedvirtual |
Set IB cell values.
Reimplemented in immersedBoundaryWallFunctionFvPatchField< Type >.
Definition at line 725 of file immersedBoundaryFvPatchField.C.
References Foam::abort(), Foam::FatalError, FatalErrorIn, forAll, internalField(), Foam::nl, and List::size().
Referenced by immersedBoundaryWallFunctionFvPatchField< Type >::setIbCellValues().
TypeName | ( | immersedBoundaryFvPatch::typeName_() | ) |
Runtime type information.
|
inlinevirtual |
Construct and return a clone.
Reimplemented in immersedBoundaryWallFunctionFvPatchField< Type >.
Definition at line 199 of file immersedBoundaryFvPatchField.H.
|
inlinevirtual |
Construct and return a clone setting internal field reference.
Reimplemented from fvPatchField< Type >.
Reimplemented in immersedBoundaryWallFunctionFvPatchField< Type >.
Definition at line 216 of file immersedBoundaryFvPatchField.H.
|
inline |
Return reference to immersed boundary patch.
Definition at line 235 of file immersedBoundaryFvPatchField.H.
References immersedBoundaryFvPatchField< Type >::ibPatch_.
Referenced by immersedBoundaryWallFunctionFvPatchField< Type >::wallMask(), and immersedBoundaryWallFunctionFvPatchField< Type >::wallValue().
|
inlinevirtual |
Return access to reference value.
Definition at line 246 of file immersedBoundaryFvPatchField.H.
References immersedBoundaryFvPatchField< Type >::refValue_.
|
inlinevirtual |
Return reference value.
Definition at line 252 of file immersedBoundaryFvPatchField.H.
References immersedBoundaryFvPatchField< Type >::refValue_.
|
inlinevirtual |
Return access to reference gradient.
Definition at line 258 of file immersedBoundaryFvPatchField.H.
References immersedBoundaryFvPatchField< Type >::refGrad_.
|
inlinevirtual |
Return reference gradient.
Definition at line 264 of file immersedBoundaryFvPatchField.H.
References immersedBoundaryFvPatchField< Type >::refGrad_.
|
inlinevirtual |
Return true if this patch field fixes a value.
Definition at line 270 of file immersedBoundaryFvPatchField.H.
References immersedBoundaryFvPatchField< Type >::fixesValue_.
|
inlinevirtual |
Return access to fixes value switch.
Reimplemented from fvPatchField< Type >.
Definition at line 276 of file immersedBoundaryFvPatchField.H.
References immersedBoundaryFvPatchField< Type >::fixesValue_.
const Field< Type > & ibValue |
Return fields on intersection points interacting with the IB.
Return IB field
Definition at line 905 of file immersedBoundaryFvPatchField.C.
const Field< Type > & ibGrad |
Return IB surface-normal gradient.
Definition at line 925 of file immersedBoundaryFvPatchField.C.
Return IB cell field.
Definition at line 945 of file immersedBoundaryFvPatchField.C.
References internalField().
Return IB sample point field.
Definition at line 963 of file immersedBoundaryFvPatchField.C.
References internalField().
Return fields on triangular faces.
Return IB field
Definition at line 970 of file immersedBoundaryFvPatchField.C.
Return IB surface-normal gradient.
Definition at line 977 of file immersedBoundaryFvPatchField.C.
|
inlinevirtual |
Map (and resize as needed) from self given a mapping object.
Reimplemented from fvPatchField< Type >.
Definition at line 310 of file immersedBoundaryFvPatchField.H.
|
inlinevirtual |
Reverse map the given fvPatchField onto this fvPatchField.
Reimplemented from fvPatchField< Type >.
Definition at line 317 of file immersedBoundaryFvPatchField.H.
|
virtual |
Update the coefficients associated with the patch field.
Reimplemented from fvPatchField< Type >.
Definition at line 984 of file immersedBoundaryFvPatchField.C.
References fvPatchField::updateCoeffs().
|
virtual |
Initialise the evaluation of the patch field.
Reimplemented from fvPatchField< Type >.
Definition at line 1007 of file immersedBoundaryFvPatchField.C.
|
virtual |
Evaluate the patch field.
Reimplemented from fvPatchField< Type >.
Definition at line 1017 of file immersedBoundaryFvPatchField.C.
References fvPatchField::evaluate().
|
inlinevirtual |
Return the matrix diagonal coefficients corresponding to the.
evaluation of the value of this patchField with given weights
Reimplemented from fvPatchField< Type >.
Definition at line 344 of file immersedBoundaryFvPatchField.H.
|
inlinevirtual |
Return the matrix source coefficients corresponding to the.
evaluation of the value of this patchField with given weights
Reimplemented from fvPatchField< Type >.
Definition at line 354 of file immersedBoundaryFvPatchField.H.
Return the matrix diagonal coefficients corresponding to the.
evaluation of the gradient of this patchField
Definition at line 363 of file immersedBoundaryFvPatchField.H.
Return the matrix source coefficients corresponding to the.
evaluation of the gradient of this patchField
Definition at line 370 of file immersedBoundaryFvPatchField.H.
|
virtual |
Manipulate matrix.
Reimplemented from fvPatchField< Type >.
Definition at line 1034 of file immersedBoundaryFvPatchField.C.
References fvPatchField::manipulateMatrix(), fvMatrix::psi(), and fvMatrix::setValues().
|
virtual |
Write.
Reimplemented from fvPatchField< Type >.
Definition at line 1066 of file immersedBoundaryFvPatchField.C.
References dimensionedInternalField(), token::END_STATEMENT, f(), forAll, fileName::name(), surfaceWriter::New(), Foam::nl, path(), PrimitivePatch< Face, FaceList, PointField, PointType >::points(), List::size(), fvPatchField::write(), and Ostream::writeKeyword().
|
private |
Local reference cast into the processor patch.
Definition at line 60 of file immersedBoundaryFvPatchField.H.
Referenced by immersedBoundaryFvPatchField< Type >::ibPatch().
|
private |
Local reference to fvMesh.
Definition at line 63 of file immersedBoundaryFvPatchField.H.
|
private |
Defining value field.
Definition at line 70 of file immersedBoundaryFvPatchField.H.
Referenced by immersedBoundaryFvPatchField< Type >::refValue().
|
private |
Defining normal gradient field.
Definition at line 73 of file immersedBoundaryFvPatchField.H.
Referenced by immersedBoundaryFvPatchField< Type >::refGrad().
|
private |
Does the boundary condition fix the value.
Definition at line 77 of file immersedBoundaryFvPatchField.H.
Referenced by immersedBoundaryFvPatchField< Type >::fixesValue().
|
private |
Set dead cell value.
Definition at line 83 of file immersedBoundaryFvPatchField.H.
|
private |
Dead cell value.
Definition at line 86 of file immersedBoundaryFvPatchField.H.
|
mutableprivate |
Time index for last update of mesh or moving boundary.
Definition at line 93 of file immersedBoundaryFvPatchField.H.
|
mutableprivate |
Value field.
Definition at line 96 of file immersedBoundaryFvPatchField.H.
|
mutableprivate |
Normal gradient field.
Definition at line 99 of file immersedBoundaryFvPatchField.H.
|
static |
Number of boundary condition update iterations.
Definition at line 159 of file immersedBoundaryFvPatchField.H.
|
static |
Boundary condition update tolerance.
Definition at line 162 of file immersedBoundaryFvPatchField.H.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.