30 #ifndef MapFvSurfaceField_H 31 #define MapFvSurfaceField_H 41 template<
class Type,
class MeshMapper>
52 const MeshMapper& mapper
57 template<
class Type,
class MeshMapper>
61 const MeshMapper& mapper
64 if (field.
size() != mapper.surfaceMap().sizeBeforeMapping())
68 "void MapInternalField<Type, MeshMapper, surfaceMesh>::operator()\n" 70 " Field<Type>& field,\n" 71 " const MeshMapper& mapper\n" 73 ) <<
"Incompatible size before mapping. Field size: " << field.
size()
74 <<
" map size: " << mapper.surfaceMap().sizeBeforeMapping()
78 field.
autoMap(mapper.surfaceMap());
81 const labelList flipFaces = mapper.surfaceMap().flipFaceFlux().toc();
85 if (flipFaces[i] < field.
size())
87 field[flipFaces[i]] *= -1.0;
Mesh data needed to do the Finite Volume discretisation.
void size(const label)
Override size to be inconsistent with allocated storage.
Generic internal field mapper. For "real" mapping, add template specialisations for mapping of intern...
void autoMap(const FieldMapper &map)
Map from self.
Pre-declare SubField and related Field type.
errorManip< error > abort(error &err)
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.