43 fixedValueFvPatchVectorField(p, iF),
56 fixedValueFvPatchVectorField(p, iF, dict),
59 if (!isA<mappedPatchBase>(this->patch().patch()))
62 <<
"Patch type '" << p.type()
63 <<
"' not type '" << mappedPatchBase::typeName <<
"'" 64 <<
" for patch " << p.
name()
65 <<
" of field " << internalField().name()
66 <<
" in file " << internalField().objectPath()
74 if (mpp.
mode() == mappedPolyPatch::NEARESTCELL)
77 <<
"Patch " << p.
name()
78 <<
" of type '" << p.type()
79 <<
"' can not be used in 'nearestCell' mode" 80 <<
" of field " << internalField().
name()
81 <<
" in file " << internalField().objectPath()
96 fixedValueFvPatchVectorField(ptf, p, iF, mapper),
97 phiName_(ptf.phiName_)
99 if (!isA<mappedPatchBase>(this->patch().patch()))
102 <<
"Patch type '" << p.type()
103 <<
"' not type '" << mappedPatchBase::typeName <<
"'" 104 <<
" for patch " << p.
name()
105 <<
" of field " << internalField().name()
106 <<
" in file " << internalField().objectPath()
119 fixedValueFvPatchVectorField(ptf, iF),
120 phiName_(ptf.phiName_)
141 mappedVelocityFluxFixedValueFvPatchField::patch().patch()
144 const word& fieldName = internalField().name();
170 allUValues[faceStart + facei] = Upf[facei];
171 allPhiValues[faceStart + facei] = phipf[facei];
176 newUValues.transfer(allUValues);
179 newPhiValues.
transfer(allPhiValues);
186 const label nbrPatchID =
187 nbrMesh.boundaryMesh().findPatchID(mpp.
samplePatch());
192 newPhiValues = phiField.boundaryField()[nbrPatchID];
200 <<
"patch can only be used in NEARESTPATCHFACE, " 201 <<
"NEARESTPATCHFACEAMI or NEARESTFACE mode" <<
nl 207 phiField.boundaryFieldRef()[patch().index()] == newPhiValues;
212 fixedValueFvPatchVectorField::updateCoeffs();
222 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
#define forAll(list, i)
Loop across all elements in list.
errorManipArg< error, int > exit(error &err, const int errNo=1)
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
virtual label start() const
Return start label of this patch in the polyMesh face list.
const polyMesh & sampleMesh() const
Get the region mesh.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
mappedVelocityFluxFixedValueFvPatchField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
This boundary condition maps the velocity and flux from a neighbour patch to this patch...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
static int & msgType()
Message tag of standard messages.
virtual void write(Ostream &) const
Write.
Macros for easy insertion into run-time selection tables.
const sampleMode & mode() const
What to sample.
virtual void write(Ostream &) const
Write.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
A class for handling words, derived from string.
Foam::fvPatchFieldMapper.
Determines a mapping between patch face centres and mesh cell or face centres and processors they're ...
errorManip< error > abort(error &err)
const fvPatch & patch() const
Return patch.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
void distribute(List< Type > &lst) const
Wrapper around map/interpolate data distribution.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
Mesh data needed to do the Finite Volume discretisation.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
const word & samplePatch() const
Patch (only if NEARESTPATCHFACE)
virtual const word & name() const
Return name.
makePatchTypeField(fvPatchScalarField, atmBoundaryLayerInletEpsilonFvPatchScalarField)
void transfer(List< T > &)
Transfer the contents of the argument List into this list.