43 fixedValueFvPatchVectorField(p, iF),
57 fixedValueFvPatchVectorField(ptf, p, iF, mapper),
58 phiName_(ptf.phiName_)
60 if (!isA<mappedPatchBase>(this->patch().patch()))
63 <<
"Patch type '" << p.type()
64 <<
"' not type '" << mappedPatchBase::typeName <<
"'" 65 <<
" for patch " << p.
name()
66 <<
" of field " << internalField().name()
67 <<
" in file " << internalField().objectPath()
81 fixedValueFvPatchVectorField(p, iF, dict),
84 if (!isA<mappedPatchBase>(this->patch().patch()))
87 <<
"Patch type '" << p.type()
88 <<
"' not type '" << mappedPatchBase::typeName <<
"'" 89 <<
" for patch " << p.
name()
90 <<
" of field " << internalField().name()
91 <<
" in file " << internalField().objectPath()
99 if (mpp.
mode() == mappedPolyPatch::NEARESTCELL)
102 <<
"Patch " << p.
name()
103 <<
" of type '" << p.type()
104 <<
"' can not be used in 'nearestCell' mode" 105 <<
" of field " << internalField().
name()
106 <<
" in file " << internalField().objectPath()
118 fixedValueFvPatchVectorField(ptf),
119 phiName_(ptf.phiName_)
130 fixedValueFvPatchVectorField(ptf, iF),
131 phiName_(ptf.phiName_)
152 mappedVelocityFluxFixedValueFvPatchField::patch().patch()
155 const word& fieldName = internalField().name();
181 allUValues[faceStart + facei] = Upf[facei];
182 allPhiValues[faceStart + facei] = phipf[facei];
187 newUValues.transfer(allUValues);
190 newPhiValues.
transfer(allPhiValues);
197 const label nbrPatchID =
198 nbrMesh.boundaryMesh().findPatchID(mpp.
samplePatch());
203 newPhiValues = phiField.boundaryField()[nbrPatchID];
211 <<
"patch can only be used in NEARESTPATCHFACE, " 212 <<
"NEARESTPATCHFACEAMI or NEARESTFACE mode" <<
nl 221 ).boundaryFieldRef()[patch().index()] == newPhiValues;
226 fixedValueFvPatchVectorField::updateCoeffs();
236 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
237 this->writeEntry(
"value", os);
const fvPatch & patch() const
Return patch.
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
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.
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...
const word & name() const
Return name.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
const polyMesh & sampleMesh() const
Get the region mesh.
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.
Macros for easy insertion into run-time selection tables.
makePatchTypeField(fvPatchVectorField, SRFFreestreamVelocityFvPatchVectorField)
const Boundary & boundaryField() const
Return const-reference to the boundary field.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
A class for handling words, derived from string.
Foam::fvPatchFieldMapper.
virtual void write(Ostream &) const
Write.
void distribute(List< Type > &lst) const
Wrapper around map/interpolate data distribution.
Determines a mapping between patch face centres and mesh cell or face centres and processors they're ...
errorManip< error > abort(error &err)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
const word & samplePatch() const
Patch (only if NEARESTPATCHFACE)
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.
label start() const
Return start label of this patch in the polyMesh face list.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
const sampleMode & mode() const
What to sample.
void transfer(List< T > &)
Transfer the contents of the argument List into this list.
virtual void write(Ostream &) const
Write.