From 3700caf98cfdb4d21c9ab112a5f027341b84289c Mon Sep 17 00:00:00 2001
From: Stephane Del Pino <stephane.delpino44@gmail.com>
Date: Tue, 15 Jan 2019 14:49:04 +0100
Subject: [PATCH] Add face numbering

The approach is very simple. It is incorrect in parallel.
---
 src/mesh/Connectivity.cpp | 13 +++++++++++--
 src/mesh/Connectivity.hpp |  1 +
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/mesh/Connectivity.cpp b/src/mesh/Connectivity.cpp
index 5a8dac795..9e6483655 100644
--- a/src/mesh/Connectivity.cpp
+++ b/src/mesh/Connectivity.cpp
@@ -142,14 +142,13 @@ void Connectivity<3>::_computeCellFaceAndFaceNodeConnectivities()
   }
 
   {
-    int l=0;
+    FaceId l=0;
     for (const auto& face_cells_vector : face_cells_map) {
       const Face& face = face_cells_vector.first;
       m_face_number_map[face] = l;
       ++l;
     }
   }
-
 #warning check that the number of cell per faces is <=2
 }
 
@@ -279,6 +278,16 @@ Connectivity(const ConnectivityDescriptor& descriptor)
 
   if constexpr (Dimension>1) {
     this->_computeCellFaceAndFaceNodeConnectivities();
+
+    {
+#warning incorrect in parallel
+      FaceValue<int> face_number(*this);
+
+      parallel_for (face_number.size(), PASTIS_LAMBDA(const FaceId& l) {
+          face_number[l] = l;
+        });
+      m_face_number = face_number;
+    }
   }
 }
 
diff --git a/src/mesh/Connectivity.hpp b/src/mesh/Connectivity.hpp
index 8c1abac16..d9789856f 100644
--- a/src/mesh/Connectivity.hpp
+++ b/src/mesh/Connectivity.hpp
@@ -695,6 +695,7 @@ class Connectivity final
     return m_inv_cell_nb_nodes;
   }
 
+#warning remove this member
   unsigned int getFaceNumber(const std::vector<unsigned int>& face_nodes) const
   {
     const Face face(face_nodes);
-- 
GitLab