From 1f611d0414fb14169e15317c79e353ad2cb5e756 Mon Sep 17 00:00:00 2001 From: Stephane Del Pino <stephane.delpino44@gmail.com> Date: Tue, 1 May 2018 23:36:01 +0200 Subject: [PATCH] just filled face_nodes array reading Gmsh file --- src/mesh/GmshReader.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/mesh/GmshReader.cpp b/src/mesh/GmshReader.cpp index 121d98d76..6a6268f24 100644 --- a/src/mesh/GmshReader.cpp +++ b/src/mesh/GmshReader.cpp @@ -760,13 +760,21 @@ GmshReader::__proceedData() std::cerr << "*** using a 3d mesh (NIY)\n"; std::exit(0); } else if ((dimension2_mask, elementNumber)>0) { - if ((dimension1_mask, elementNumber)>0) { - // throw ErrorHandler(__FILE__,__LINE__,"edges are not treated", ErrorHandler::normal); + const size_t nb_edges = (dimension1_mask, elementNumber); + std::cout << "nb_edges=" << nb_edges << '\n'; + const Kokkos::View<unsigned int*[2]> face_nodes("edge_nodes", nb_edges); + for (size_t j=0; j<nb_edges; ++j) { + face_nodes(j,0) = __edges[j][0]; + face_nodes(j,1) = __edges[j][1]; } - const size_t nb_cells = (dimension2_mask, elementNumber); + const size_t nb_cells = (dimension2_mask, elementNumber); + size_t max_nb_node_per_cell=3; + if (elementNumber[2] > 0) { + max_nb_node_per_cell = 4; + } std::cout << "nb_cells=" << nb_cells << '\n'; - const Kokkos::View<unsigned int**> cell_nodes("cell_nodes", nb_cells, 3); + const Kokkos::View<unsigned int**> cell_nodes("cell_nodes", nb_cells, max_nb_node_per_cell); const size_t nb_triangles = __triangles.extent(0); for (size_t j=0; j<nb_triangles; ++j) { cell_nodes(j,0) = __triangles[j][0]; -- GitLab