35 const label fineLevelIndex
38 const labelList& fineToCoarse = restrictAddressing_[fineLevelIndex];
40 if (ff.
size() != fineToCoarse.
size())
44 "void pairPatchAgglomeration::restrictField" 45 "(Field<Type>& cf, const Field<Type>& ff, " 46 "const label fineLevelIndex) const" 47 ) <<
"field does not correspond to level " << fineLevelIndex
48 <<
" sizes: field = " << ff.
size()
49 <<
" level = " << fineToCoarse.
size()
57 cf[fineToCoarse[i]] += ff[i];
67 const label coarseLevelIndex
70 const labelList& fineToCoarse = restrictAddressing_[coarseLevelIndex];
74 ff[i] = cf[fineToCoarse[i]];
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void size(const label)
Override size to be inconsistent with allocated storage.
void prolongField(Field< Type > &ff, const Field< Type > &cf, const label coarseLevelIndex) const
Prolong (interpolate by injection) cell field.
void restrictField(Field< Type > &cf, const Field< Type > &ff, const label fineLevelIndex) const
Restrict (integrate by summation) cell field.
Pre-declare SubField and related Field type.
errorManip< error > abort(error &err)
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
Traits class for primitives.