Loading src/TNL/Meshes/DistributedMeshes/DistributedMesh.h +16 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ #include <TNL/Containers/Array.h> #include <TNL/Communicators/MpiCommunicator.h> #include <TNL/Meshes/DistributedMeshes/GlobalIndexStorage.h> #include <TNL/Meshes/MeshDetails/IndexPermutationApplier.h> namespace TNL { namespace Meshes { Loading Loading @@ -168,6 +169,21 @@ public: return vtkPointGhostTypesArray; } // wrapper for MeshType::reorderEntities - reorders the local mesh, global indices and, // if applicable, the vtkCellGhostTypes/vtkPointGhostTypes arrays template< int Dimension > void reorderEntities( const GlobalIndexArray& perm, const GlobalIndexArray& iperm ) { localMesh.template reorderEntities< Dimension >( perm, iperm ); if( getGlobalIndices< Dimension >().getSize() > 0 ) IndexPermutationApplier< MeshType, Dimension >::permuteArray( getGlobalIndices< Dimension >(), perm ); if( Dimension == 0 && vtkPointGhostTypes().getSize() > 0 ) IndexPermutationApplier< MeshType, Dimension >::permuteArray( vtkPointGhostTypes(), perm ); if( Dimension == getMeshDimension() && vtkCellGhostTypes().getSize() > 0 ) IndexPermutationApplier< MeshType, Dimension >::permuteArray( vtkCellGhostTypes(), perm ); } void printInfo( std::ostream& str ) const { Loading Loading
src/TNL/Meshes/DistributedMeshes/DistributedMesh.h +16 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ #include <TNL/Containers/Array.h> #include <TNL/Communicators/MpiCommunicator.h> #include <TNL/Meshes/DistributedMeshes/GlobalIndexStorage.h> #include <TNL/Meshes/MeshDetails/IndexPermutationApplier.h> namespace TNL { namespace Meshes { Loading Loading @@ -168,6 +169,21 @@ public: return vtkPointGhostTypesArray; } // wrapper for MeshType::reorderEntities - reorders the local mesh, global indices and, // if applicable, the vtkCellGhostTypes/vtkPointGhostTypes arrays template< int Dimension > void reorderEntities( const GlobalIndexArray& perm, const GlobalIndexArray& iperm ) { localMesh.template reorderEntities< Dimension >( perm, iperm ); if( getGlobalIndices< Dimension >().getSize() > 0 ) IndexPermutationApplier< MeshType, Dimension >::permuteArray( getGlobalIndices< Dimension >(), perm ); if( Dimension == 0 && vtkPointGhostTypes().getSize() > 0 ) IndexPermutationApplier< MeshType, Dimension >::permuteArray( vtkPointGhostTypes(), perm ); if( Dimension == getMeshDimension() && vtkCellGhostTypes().getSize() > 0 ) IndexPermutationApplier< MeshType, Dimension >::permuteArray( vtkCellGhostTypes(), perm ); } void printInfo( std::ostream& str ) const { Loading