41 jump_(this->size(), Zero),
42 jump0_(this->size(), Zero),
59 jump_(ptf.jump_, mapper),
60 jump0_(ptf.jump0_, mapper),
61 minJump_(ptf.minJump_),
62 relaxFactor_(ptf.relaxFactor_),
63 timeIndex_(ptf.timeIndex_)
73 const bool valueRequired
77 jump_(
p.size(),
Zero),
78 jump0_(
p.size(),
Zero),
80 relaxFactor_(
dict.getOrDefault<scalar>(
"relax", -1)),
122 minJump_(ptf.minJump_),
123 relaxFactor_(ptf.relaxFactor_),
124 timeIndex_(ptf.timeIndex_)
138 minJump_(ptf.minJump_),
139 relaxFactor_(ptf.relaxFactor_),
140 timeIndex_(ptf.timeIndex_)
149 if (this->cyclicPatch().owner())
151 jump_ =
max(jump, minJump_);
159 if (this->cyclicPatch().owner())
161 jump_ =
max(jump, minJump_);
169 if (this->cyclicPatch().owner())
175 return refCast<const fixedJumpFvPatchField<Type>>
177 this->neighbourPatchField()
186 if (this->cyclicPatch().owner())
192 return refCast<const fixedJumpFvPatchField<Type>>
194 this->neighbourPatchField()
210 if (!this->cyclicPatch().owner() || relaxFactor_ < 0)
215 jump_ = relaxFactor_*jump_ + (1 - relaxFactor_)*jump0_;
217 if (timeIndex_ != this->db().time().timeIndex())
221 timeIndex_ = this->db().time().timeIndex();
247 const auto& fjptf = refCast<const fixedJumpFvPatchField<Type>>(ptf);
248 jump_.rmap(fjptf.jump_, addr);
249 jump0_.rmap(fjptf.jump0_, addr);
259 if (this->patchType().empty())
264 if (this->cyclicPatch().owner())
268 if (relaxFactor_ > 0)
280 this->writeEntry(
"value",
os);
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Generic templated field type.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
void size(const label n)
Older name for setAddressableSize.
void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
void rmap(const atmBoundaryLayer &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
virtual void evaluate(const Pstream::commsTypes commsType)
Evaluate the patch field.
const cyclicFvPatch & cyclicPatch() const
Return local reference cast into the cyclic patch.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
bool found(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Search for an entry (const access) with the given keyword.
This boundary condition provides a jump condition, using the cyclic condition as a base.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
virtual void relax()
Return the relaxed "jump" across the patch.
virtual tmp< Field< Type > > jump0() const
Return the old time "jump" across the patch.
virtual tmp< Field< Type > > jump() const
Return the "jump" across the patch.
virtual void setJump(const Field< Type > &jump)
Set the jump field.
virtual void rmap(const fvPatchField< Type > &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
virtual scalar relaxFactor() const
Return the under-relaxation factor.
virtual bool write()
Write the output fields.
A FieldMapper for finite-volume patch fields.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
This boundary condition provides a base class for coupled-cyclic conditions with a specified 'jump' (...
A traits class, which is primarily used for primitives.
A class for managing temporary objects.
OBJstream os(runTime.globalPath()/outputName)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
static constexpr const zero Zero
Global zero (0)