Adds two fvMeshes without using any polyMesh morphing. Uses polyMeshAdder. More...
Public Member Functions | |
ClassName ("fvMeshAdder") | |
Static Public Member Functions | |
static autoPtr< mapAddedPolyMesh > | add (fvMesh &mesh0, const fvMesh &mesh1, const faceCoupleInfo &coupleInfo, const bool validBoundary=true, const bool fullyMapped=false) |
Inplace add mesh to fvMesh. Maps all stored fields. Returns map. More... | |
template<class Type > | |
static void | MapVolFields (const mapAddedPolyMesh &, const fvMesh &mesh, const fvMesh &meshToAdd, const bool fullyMapped=false) |
Map all volFields of Type. More... | |
template<class Type > | |
static void | MapSurfaceFields (const mapAddedPolyMesh &, const fvMesh &mesh, const fvMesh &meshToAdd, const bool fullyMapped=false) |
Map all surfaceFields of Type. More... | |
template<class Type > | |
static void | MapDimFields (const mapAddedPolyMesh &, const fvMesh &mesh, const fvMesh &meshToAdd) |
Map all DimensionedFields of Type. More... | |
static autoPtr< mapPolyMesh > | add (const label myProci, UPtrList< fvMesh > &fvMeshes, const labelList &oldFaceOwner, const labelListList &localBoundaryFace, const labelListList &remoteFaceProc, const labelListList &remoteBoundaryFace, labelListList &constructPatchMap, labelListList &constructCellMap, labelListList &constructFaceMap, labelListList &constructPointMap) |
In-place add to fvMeshes[myProci]. Stitch boundary faces. More... | |
template<class Type > | |
static void | MapDimField (UPtrList< DimensionedField< Type, volMesh >> &flds, const labelListList &cellProcAddressing, const bool fullyMapped) |
Update single dimensionedField. More... | |
template<class Type > | |
static void | MapVolField (UPtrList< GeometricField< Type, fvPatchField, volMesh >> &flds, const labelList &oldPatchStarts0, const labelList &oldPatchSizes0, const labelListList &patchProcAddressing, const labelListList &cellProcAddressing, const labelListList &faceProcAddressing, const bool fullyMapped) |
Update single volField. More... | |
template<class Type > | |
static void | MapSurfaceField (UPtrList< GeometricField< Type, fvsPatchField, surfaceMesh >> &, const labelList &oldFaceOwner0, const labelList &oldPatchStarts0, const labelList &oldPatchSizes0, const labelListList &patchProcAddressing, const labelListList &cellProcAddressing, const labelListList &faceProcAddressing, const bool fullyMapped) |
Update single surfaceField. More... | |
template<class Type > | |
static void | MapDimFields (const UPtrList< fvMesh > &meshes, const labelListList &cellProcAddressing, const bool fullyMapped=false) |
Map all dimensionedField of Type. More... | |
template<class Type > | |
static void | MapVolFields (const UPtrList< fvMesh > &meshes, const labelList &oldPatchStarts0, const labelList &oldPatchSizes0, const labelListList &patchProcAddressing, const labelListList &cellProcAddressing, const labelListList &faceProcAddressing, const labelListList &pointProcAddressing, const bool fullyMapped=false) |
Map all volFields of Type. More... | |
template<class Type > | |
static void | MapSurfaceFields (const UPtrList< fvMesh > &meshes, const labelList &oldFaceOwner0, const labelList &oldPatchStarts0, const labelList &oldPatchSizes0, const labelListList &patchProcAddressing, const labelListList &cellProcAddressing, const labelListList &faceProcAddressing, const labelListList &pointProcAddressing, const bool fullyMapped=false) |
Map all surfaceFields of Type. More... | |
Static Public Member Functions inherited from polyMeshAdder | |
static autoPtr< polyMesh > | add (const IOobject &io, const polyMesh &mesh0, const polyMesh &mesh1, const faceCoupleInfo &coupleInfo, autoPtr< mapAddedPolyMesh > &mapPtr) |
Add two polyMeshes. Returns new polyMesh and map construct. More... | |
static autoPtr< mapAddedPolyMesh > | add (polyMesh &mesh0, const polyMesh &mesh1, const faceCoupleInfo &coupleInfo, const bool validBoundary=true) |
Inplace add mesh to polyMesh. Returns map construct. More... | |
static Map< label > | findSharedPoints (const polyMesh &, const scalar mergeTol) |
Find topologically and geometrically shared points. More... | |
static void | mergePoints (const polyMesh &, const Map< label > &pointToMaster, polyTopoChange &meshMod) |
Helper: Merge points. More... | |
static label | procPatchPairs (const UPtrList< polyMesh > &meshes, List< DynamicList< label >> &localPatch, List< DynamicList< label >> &remoteMesh, List< DynamicList< label >> &remotePatch) |
Helper: find pairs of processor patches. Return number of non-processor patches. More... | |
static void | patchFacePairs (const UPtrList< polyMesh > &meshes, const List< DynamicList< label >> &localPatch, const List< DynamicList< label >> &remoteMesh, const List< DynamicList< label >> &remotePatch, labelListList &localBoundaryFace, labelListList &remoteFaceMesh, labelListList &remoteBoundaryFace) |
Helper: expand list of coupled patches into pairs of coupled faces. More... | |
static void | add (const UPtrList< polyMesh > &meshes, const UList< labelList > &patchMap, const labelListList &localBoundaryFace, const labelListList &remoteFaceMesh, const labelListList &remoteBoundaryFace, const labelListList &remoteFaceStart, const UList< labelList > &pointZoneMap, const UList< labelList > &faceZoneMap, const UList< labelList > &cellZoneMap, polyTopoChange &meshMod, labelListList &cellProcAddressing, labelListList &faceProcAddressing, labelListList &pointProcAddressing) |
Add multiple meshes. More... | |
Adds two fvMeshes without using any polyMesh morphing. Uses polyMeshAdder.
Definition at line 63 of file fvMeshAdder.H.
ClassName | ( | "fvMeshAdder" | ) |
|
static |
Inplace add mesh to fvMesh. Maps all stored fields. Returns map.
Definition at line 67 of file fvMeshAdder.C.
References polyMeshAdder::add(), fvMesh::boundary(), polyMesh::boundaryMesh(), fvMesh::clearOut(), forAll, fvPatch::New(), patches, PtrList< T >::set(), PtrList< T >::setSize(), and UPtrList< T >::size().
Referenced by fvMeshDistribute::distribute().
|
static |
Map all volFields of Type.
Optionally override mapping detection of unmapped values (e.g. used in fvMeshDistribute since it fixes up mapping itself)
Definition at line 259 of file fvMeshAdderTemplates.C.
References DebugPout, Foam::endl(), field(), fields, fld, mesh, and WarningInFunction.
|
static |
Map all surfaceFields of Type.
Definition at line 563 of file fvMeshAdderTemplates.C.
References DebugPout, Foam::endl(), field(), fields, fld, mesh, and WarningInFunction.
|
static |
Map all DimensionedFields of Type.
Definition at line 638 of file fvMeshAdderTemplates.C.
References DebugPout, Foam::endl(), field(), fields, fld, mesh, and WarningInFunction.
|
static |
In-place add to fvMeshes[myProci]. Stitch boundary faces.
Definition at line 128 of file fvMeshAdder.C.
References polyMeshAdder::add(), polyMesh::boundaryMesh(), polyMesh::cellZones(), polyTopoChange::changeMesh(), Foam::faceMap(), polyMesh::faceZones(), forAll, UPtrList< T >::get(), dictionary::get(), Foam::identity(), Foam::inplaceRenumber(), mesh, meshes(), primitiveMesh::nCells(), primitiveMesh::nFaces(), polyBoundaryMesh::nNonProcessor(), nPoints, primitiveMesh::nPoints(), polyMesh::pointZones(), PtrList< T >::set(), UPtrList< T >::set(), polyTopoChange::setCapacity(), List< T >::setSize(), UList< T >::size(), and UPtrList< T >::size().
|
static |
Update single dimensionedField.
Multi-mesh mapping.
Definition at line 683 of file fvMeshAdderTemplates.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, mesh, Foam::nl, Field< Type >::rmap(), List< Type >::setSize(), and UList< T >::size().
|
static |
Update single volField.
Definition at line 730 of file fvMeshAdderTemplates.C.
References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, DirectFieldMapper< FieldMapperType >::hasUnmapped(), mesh, Foam::nl, Foam::foamVersion::patch, Field< Type >::rmap(), List< Type >::setSize(), and WarningInFunction.
|
static |
Update single surfaceField.
Definition at line 867 of file fvMeshAdderTemplates.C.
References Foam::endl(), Foam::exit(), Foam::faceMap(), polyMesh::faceOwner(), Foam::FatalError, FatalErrorInFunction, fld, forAll, DirectFieldMapper< FieldMapperType >::hasUnmapped(), primitiveMesh::nInternalFaces(), Foam::nl, Foam::foamVersion::patch, fvsPatchFieldBase::patch(), Field< Type >::rmap(), List< Type >::setSize(), fvPatch::start(), and WarningInFunction.
|
static |
Map all dimensionedField of Type.
Optionally override mapping detection of unmapped values (e.g. used in fvMeshDistribute since it fixes up mapping itself)
Definition at line 1150 of file fvMeshAdderTemplates.C.
References DebugPout, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, field(), fields, forAll, meshes(), Foam::nl, PtrList< T >::set(), UPtrList< T >::size(), and UPtrList< T >::test().
|
static |
Map all volFields of Type.
Optionally override mapping detection of unmapped values (e.g. used in fvMeshDistribute since it fixes up mapping itself)
Definition at line 1073 of file fvMeshAdderTemplates.C.
References DebugPout, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, field(), fields, forAll, meshes(), Foam::nl, PtrList< T >::set(), UPtrList< T >::size(), and UPtrList< T >::test().
|
static |
Map all surfaceFields of Type.
Definition at line 1198 of file fvMeshAdderTemplates.C.
References DebugPout, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, field(), fields, forAll, meshes(), Foam::nl, PtrList< T >::set(), UPtrList< T >::size(), and UPtrList< T >::test().