From a9e6fe77d3864afb66b5d0248fe4c476cc423424 Mon Sep 17 00:00:00 2001 From: Stephane Del Pino <stephane.delpino44@gmail.com> Date: Fri, 28 Sep 2018 18:18:09 +0200 Subject: [PATCH] Begin use of Partitioner --- src/mesh/GmshReader.cpp | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/src/mesh/GmshReader.cpp b/src/mesh/GmshReader.cpp index e599ea808..5b9e65164 100644 --- a/src/mesh/GmshReader.cpp +++ b/src/mesh/GmshReader.cpp @@ -309,10 +309,37 @@ GmshReader::GmshReader(const std::string& filename) CSRGraph mesh_graph; if (commRank() == 0) { mesh_graph = m_mesh->cellToCellGraph(); - } - Partitioner P; - Array<int> new_cell_owner = P.partition(mesh_graph); + CellValue<int> cell_parts; + switch(m_mesh->meshDimension()) + { + case 1: { + Mesh<Connectivity1D>& mesh = dynamic_cast<Mesh<Connectivity1D>&>(*m_mesh); + CellValue<int> mesh_cell_parts(mesh.connectivity()); + cell_parts = mesh_cell_parts; + break; + } + case 2: { + Mesh<Connectivity2D>& mesh = dynamic_cast<Mesh<Connectivity2D>&>(*m_mesh); + CellValue<int> mesh_cell_parts(mesh.connectivity()); + cell_parts = mesh_cell_parts; + break; + } + case 3: { + Mesh<Connectivity3D>& mesh = dynamic_cast<Mesh<Connectivity3D>&>(*m_mesh); + CellValue<int> mesh_cell_parts(mesh.connectivity()); + cell_parts = mesh_cell_parts; + break; + } + default:{ + perr() << "unexpected mesh dimension\n"; + Messenger::destroy(); + std::exit(1); + } + } + Partitioner P; + cell_parts = P.partition(mesh_graph); + } Messenger::destroy(); std::exit(0); -- GitLab