Go to the documentation of this file.
42 Foam::GAMGInterface::GAMGInterface
50 coarseInterfaces_(coarseInterfaces),
52 faceRestrictAddressing_(is)
76 return interfaceInternalField<label>(internalData);
88 if (fineCoeffs.size() != faceRestrictAddressing_.size())
91 <<
"Size of coefficients " << fineCoeffs.size()
92 <<
" does not correspond to the size of the restriction "
93 << faceRestrictAddressing_.size()
96 if (
debug &&
max(faceRestrictAddressing_) > size())
99 <<
"Face restrict addressing addresses outside of coarse interface"
100 <<
" size. Max addressing:" <<
max(faceRestrictAddressing_)
101 <<
" coarse size:" << size()
105 forAll(faceRestrictAddressing_, ffi)
107 coarseCoeffs[faceRestrictAddressing_[ffi]] += fineCoeffs[ffi];
110 return tcoarseCoeffs;
116 os << faceCells_ <<
token::SPACE << faceRestrictAddressing_;
int debug
Static debugging option.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
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.
#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.
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.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
defineTypeNameAndDebug(combustionModel, 0)
void combine(const GAMGInterface &)
Merge the next level with this level.