43void waWallFunctionFvPatchScalarField::checkType()
45 if (!isA<wallFvPatch>(
patch()))
48 <<
"Invalid wall function specification" <<
nl
49 <<
" Patch type for patch " <<
patch().
name()
50 <<
" must be wall" <<
nl
51 <<
" Current patch type is " <<
patch().type() <<
nl <<
endl
180 const label facei = c[j];
187 if (celli == own[facei])
241 if (internalCoeffs[patchi].
size())
245 internalCoeffs[patchi][patchFacei] =
Zero;
246 boundaryCoeffs[patchi][patchFacei] =
Zero;
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
A field of fields is a PtrList of fields with reference counting.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
label size() const noexcept
The number of elements in the UList.
Base class for solution control classes.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A cell is defined as a list of faces with extra functionality.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Smooth ATC in cells next to a set of patches supplied by type.
This boundary condition supplies a fixed value constraint, and is the base class for a number of othe...
virtual bool write()
Write the output fields.
const fvMesh & mesh() const noexcept
Return the mesh reference.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
const FieldField< Field, Type > & internalCoeffs() const noexcept
const FieldField< Field, Type > & boundaryCoeffs() const noexcept
Mesh data needed to do the Finite Volume discretisation.
const labelUList & owner() const
Internal face owner. Note bypassing virtual mechanism so.
A FieldMapper for finite-volume patch fields.
static tmp< fvPatchField< Type > > New(const word &patchFieldType, const fvPatch &, const DimensionedField< Type, volMesh > &)
Return a pointer to a new patchField created on freestore given.
virtual void manipulateMatrix(fvMatrix< Type > &matrix)
Manipulate matrix.
bool updated() const
Return true if the boundary condition has already been updated.
const fvPatch & patch() const
Return patch.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
virtual const word & name() const
Return name.
const fvBoundaryMesh & boundaryMesh() const
Return boundaryMesh reference.
virtual const labelUList & faceCells() const
Return faceCells.
label whichPatch(const label faceIndex) const
Return patch index for a given face label.
const polyBoundaryMesh & boundaryMesh() const
Return boundary mesh.
bool isInternalFace(const label faceIndex) const noexcept
Return true if given face label is internal to the mesh.
const cellList & cells() const
A class for managing temporary objects.
virtual tmp< Field< scalar > > gradientBoundaryCoeffs() const
virtual void manipulateMatrix(fvMatrix< scalar > &matrix)
Manipulate waEqn at the cells next to the wall.
virtual tmp< Field< scalar > > valueBoundaryCoeffs(const tmp< scalarField > &) const
virtual tmp< Field< scalar > > valueInternalCoeffs(const tmp< scalarField > &) const
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual tmp< Field< scalar > > gradientInternalCoeffs() const
A class for handling words, derived from Foam::string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
OBJstream os(runTime.globalPath()/outputName)
#define makePatchTypeField(PatchTypeField, typePatchTypeField)
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Ostream & endl(Ostream &os)
Add newline and flush stream.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
errorManip< error > abort(error &err)
static constexpr const zero Zero
Global zero (0)
constexpr char nl
The newline '\n' character (0x0a)
#define forAll(list, i)
Loop across all elements in list.