40 valueFraction_(p.
size())
53 refValue_(
"refValue", dict, p.
size()),
54 refGrad_(
"refGradient", dict, p.
size()),
55 valueFraction_(
"valueFraction", dict, p.
size())
71 refValue_(ptf.refValue_, mapper),
72 refGrad_(ptf.refGrad_, mapper),
73 valueFraction_(ptf.valueFraction_, mapper)
78 <<
"On field " << iF.name() <<
" patch " << p.name()
79 <<
" patchField " << this->
type()
80 <<
" : mapper does not map all values." <<
nl 81 <<
" To avoid this warning fully specify the mapping in derived" 82 <<
" patch fields." <<
endl;
94 refValue_(ptf.refValue_),
95 refGrad_(ptf.refGrad_),
96 valueFraction_(ptf.valueFraction_)
108 refValue_(ptf.refValue_),
109 refGrad_(ptf.refGrad_),
110 valueFraction_(ptf.valueFraction_)
123 refValue_.autoMap(m);
125 valueFraction_.autoMap(m);
139 refCast<const mixedFvPatchField<Type>>(ptf);
141 refValue_.
rmap(mptf.refValue_, addr);
142 refGrad_.rmap(mptf.refGrad_, addr);
143 valueFraction_.rmap(mptf.valueFraction_, addr);
150 if (!this->updated())
152 this->updateCoeffs();
157 valueFraction_*refValue_
159 (1.0 - valueFraction_)*
161 this->patchInternalField()
162 + refGrad_/this->patch().deltaCoeffs()
176 *(refValue_ - this->patchInternalField())
177 *this->patch().deltaCoeffs()
178 + (1.0 - valueFraction_)*refGrad_;
202 valueFraction_*refValue_
203 + (1.0 - valueFraction_)*refGrad_/this->patch().deltaCoeffs();
220 valueFraction_*this->patch().deltaCoeffs()*refValue_
221 + (1.0 - valueFraction_)*refGrad_;
229 refValue_.writeEntry(
"refValue", os);
230 refGrad_.writeEntry(
"refGradient", os);
231 valueFraction_.writeEntry(
"valueFraction", os);
232 this->writeEntry(
"value", os);
A list of keyword definitions, which are a keyword followed by any number of values (e...
commsTypes
Types of communications.
virtual tmp< Field< Type > > snGrad() const
Return gradient at boundary.
void size(const label)
Override size to be inconsistent with allocated storage.
Ostream & endl(Ostream &os)
Add newline and flush stream.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
virtual tmp< Field< Type > > gradientInternalCoeffs() const
Return the matrix diagonal coefficients corresponding to the.
Traits class for primitives.
This boundary condition provides a base class for 'mixed' type boundary conditions, i.e. conditions that mix fixed value and patch-normal gradient conditions.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
virtual void evaluate(const Pstream::commsTypes commsType=Pstream::blocking)
Evaluate the patch field.
Pre-declare SubField and related Field type.
Foam::fvPatchFieldMapper.
virtual tmp< Field< Type > > valueInternalCoeffs(const tmp< scalarField > &) const
Return the matrix diagonal coefficients corresponding to the.
virtual bool hasUnmapped() const =0
Are there unmapped values? I.e. do all size() elements get.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual void rmap(const fvPatchField< Type > &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
virtual tmp< Field< Type > > gradientBoundaryCoeffs() const
Return the matrix source coefficients corresponding to the.
bool notNull(const T &t)
Return true if t is not a reference to the nullObject of type T.
virtual void write(Ostream &) const
Write.
fileName::Type type(const fileName &)
Return the file type: DIRECTORY or FILE.
#define WarningInFunction
Report a warning using Foam::Warning.
mixedFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &)
Construct from patch and internal field.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
virtual tmp< Field< Type > > valueBoundaryCoeffs(const tmp< scalarField > &) const
Return the matrix source coefficients corresponding to the.
A class for managing temporary objects.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.