Go to the documentation of this file.
51 coarseInterfaces_(coarseInterfaces),
53 faceRestrictAddressing_(is)
77 return interfaceInternalField<label>(internalData);
87 return interfaceInternalField<label>(internalData,
faceCells);
97 auto& coarseCoeffs = tcoarseCoeffs.ref();
99 if (fineCoeffs.size() != faceRestrictAddressing_.size())
102 <<
"Size of coefficients " << fineCoeffs.size()
103 <<
" does not correspond to the size of the restriction "
104 << faceRestrictAddressing_.size()
107 if (
debug &&
max(faceRestrictAddressing_) > size())
110 <<
"Face restrict addressing addresses outside of coarse interface"
111 <<
" size. Max addressing:" <<
max(faceRestrictAddressing_)
112 <<
" coarse size:" << size()
116 forAll(faceRestrictAddressing_, ffi)
118 coarseCoeffs[faceRestrictAddressing_[ffi]] += fineCoeffs[ffi];
121 return tcoarseCoeffs;
int debug
Static debugging option.
virtual void write(Ostream &) const =0
Write to stream.
A class for managing temporary objects.
static constexpr const zero Zero
Global zero (0)
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
labelList faceRestrictAddressing_
Face restrict addressing.
GAMGInterface(const GAMGInterface &)=delete
No copy construct.
#define forAll(list, i)
Loop across all elements in list.
labelList faceCells_
Face-cell addressing.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Abstract base class for GAMG agglomerated interfaces.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
OBJstream os(runTime.globalPath()/outputName)
virtual tmp< scalarField > agglomerateCoeffs(const scalarField &fineCoeffs) const
Agglomerating the given fine-level coefficients and return.
errorManip< error > abort(error &err)
tmp< Field< Type > > interfaceInternalField(const UList< Type > &internalData) const
Return the interface internal field of the given field.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
static tmp< T > New(Args &&... args)
Construct tmp of T with forwarding arguments.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
defineTypeNameAndDebug(combustionModel, 0)
Smooth ATC in cells next to a set of patches supplied by type.
void combine(const GAMGInterface &)
Merge the next level with this level.