]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Mov reorder_old_to_new_style to tests/test_grids.h 15629/head
authorDaniel Arndt <arndtd@ornl.gov>
Mon, 3 Jul 2023 23:26:51 +0000 (19:26 -0400)
committerDaniel Arndt <arndtd@ornl.gov>
Mon, 3 Jul 2023 23:26:51 +0000 (19:26 -0400)
tests/bits/q_points.cc
tests/grid/grid_invert.cc
tests/grid/mesh_3d.h
tests/grid/subcelldata.cc
tests/lac/constraints.cc
tests/test_grids.h

index 377856ea096286e8b19fcaa4c2e5008ba6b4069e..c4623fa595bbb44d4fc3e54517e38050641b52ff 100644 (file)
 
 #include "../tests.h"
 
-namespace
-{
-  /**
-   * This file uses a different ordering for the vertices in a hex
-   * cell than we usually do in deal.II. The different convention used
-   * here originates in what we believed the ordering to be in UCD
-   * format, until it was discovered in 2022 that UCD will interpret
-   * this ordering to correspond to inverted cells -- as a
-   * consequence, the UCD ordering was fixed, but the current file is
-   * stuck on the old ordering.
-   */
-  constexpr std::array<unsigned int, 8> local_vertex_numbering{
-    {0, 1, 5, 4, 2, 3, 7, 6}};
-
-  /**
-   * Following is a set of functions that reorder the data from the
-   * "current" to the "classic" format of vertex numbering of cells
-   * and faces. These functions do the reordering of their arguments
-   * in-place.
-   */
-  void
-  reorder_old_to_new_style(std::vector<CellData<2>> &cells)
-  {
-    for (auto &cell : cells)
-      std::swap(cell.vertices[2], cell.vertices[3]);
-  }
-
-
-  void
-  reorder_old_to_new_style(std::vector<CellData<3>> &cells)
-  {
-    // undo the ordering above
-    unsigned int tmp[GeometryInfo<3>::vertices_per_cell];
-    for (auto &cell : cells)
-      {
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          tmp[i] = cell.vertices[i];
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          cell.vertices[local_vertex_numbering[i]] = tmp[i];
-      }
-  }
-} // namespace
+#include "../tests/test_grids.h"
 
 void
 create_two_cubes(Triangulation<3> &coarse_grid)
index d55dfb56d46c194197bf004f0d908140fce833bb..1e3876a2f2a720fc9ab1ff3a70df72a6e533a33f 100644 (file)
 
 #include "../tests.h"
 
-namespace
-{
-  /**
-   * This file uses a different ordering for the vertices in a hex
-   * cell than we usually do in deal.II. The different convention used
-   * here originates in what we believed the ordering to be in UCD
-   * format, until it was discovered in 2022 that UCD will interpret
-   * this ordering to correspond to inverted cells -- as a
-   * consequence, the UCD ordering was fixed, but the current file is
-   * stuck on the old ordering.
-   */
-  constexpr std::array<unsigned int, 8> local_vertex_numbering{
-    {0, 1, 5, 4, 2, 3, 7, 6}};
-
-  /**
-   * Following is a set of functions that reorder the data from the
-   * "current" to the "classic" format of vertex numbering of cells
-   * and faces. These functions do the reordering of their arguments
-   * in-place.
-   */
-  void
-  reorder_old_to_new_style(std::vector<CellData<2>> &cells)
-  {
-    for (auto &cell : cells)
-      std::swap(cell.vertices[2], cell.vertices[3]);
-  }
-
-
-  void
-  reorder_old_to_new_style(std::vector<CellData<3>> &cells)
-  {
-    // undo the ordering above
-    unsigned int tmp[GeometryInfo<3>::vertices_per_cell];
-    for (auto &cell : cells)
-      {
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          tmp[i] = cell.vertices[i];
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          cell.vertices[local_vertex_numbering[i]] = tmp[i];
-      }
-  }
-} // namespace
+#include "../tests/test_grids.h"
 
 template <int dim>
 void
index f4564b3c8ad0aad351c3405c628c1e2defe6ca50..513eb8a10c7a6596354f1523c862ac836058f872 100644 (file)
 
 #include "../tests.h"
 
+#include "../tests/test_grids.h"
 
 // generate two cubes that are attached to each other in a way so that
 // the edges are all ok, but the normals of the common face don't
 // match up for the standard orientation of the normals. we thus have
 // to store the face orientation in each cell
 
-namespace
-{
-  /**
-   * This file uses a different ordering for the vertices in a hex
-   * cell than we usually do in deal.II. The different convention used
-   * here originates in what we believed the ordering to be in UCD
-   * format, until it was discovered in 2022 that UCD will interpret
-   * this ordering to correspond to inverted cells -- as a
-   * consequence, the UCD ordering was fixed, but the current file is
-   * stuck on the old ordering.
-   */
-  constexpr std::array<unsigned int, 8> local_vertex_numbering{
-    {0, 1, 5, 4, 2, 3, 7, 6}};
-
-  /**
-   * And now also in the opposite direction.
-   */
-  void
-  reorder_old_to_new_style(std::vector<CellData<3>> &cells)
-  {
-    // undo the ordering above
-    unsigned int tmp[GeometryInfo<3>::vertices_per_cell];
-    for (auto &cell : cells)
-      {
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          tmp[i] = cell.vertices[i];
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          cell.vertices[local_vertex_numbering[i]] = tmp[i];
-      }
-  }
-} // namespace
-
 void
 create_two_cubes(Triangulation<3> &coarse_grid)
 {
index cc26ed861e59213a598a221701b07629f7ff93cc..adbc0936dd64dd5de00e582effbe359b7f737498 100644 (file)
 
 #include "../tests.h"
 
-
-namespace
-{
-  /**
-   * This file uses a different ordering for the vertices in a hex
-   * cell than we usually do in deal.II. The different convention used
-   * here originates in what we believed the ordering to be in UCD
-   * format, until it was discovered in 2022 that UCD will interpret
-   * this ordering to correspond to inverted cells -- as a
-   * consequence, the UCD ordering was fixed, but the current file is
-   * stuck on the old ordering.
-   */
-  constexpr std::array<unsigned int, 8> local_vertex_numbering{
-    {0, 1, 5, 4, 2, 3, 7, 6}};
-
-  /**
-   * And now also in the opposite direction.
-   */
-  void
-  reorder_old_to_new_style(std::vector<CellData<3>> &cells)
-  {
-    // undo the ordering above
-    unsigned int tmp[GeometryInfo<3>::vertices_per_cell];
-    for (auto &cell : cells)
-      {
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          tmp[i] = cell.vertices[i];
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          cell.vertices[local_vertex_numbering[i]] = tmp[i];
-      }
-  }
-
-  /**
-   * Following is a set of functions that reorder the data from the
-   * "current" to the "classic" format of vertex numbering of cells
-   * and faces. These functions do the reordering of their arguments
-   * in-place.
-   */
-  void
-  reorder_old_to_new_style(std::vector<CellData<2>> &cells)
-  {
-    for (auto &cell : cells)
-      std::swap(cell.vertices[2], cell.vertices[3]);
-  }
-} // namespace
+#include "../tests/test_grids.h"
 
 
 static unsigned subcells[6][4] = {{0, 1, 2, 3},
index c9324b5b20966d03ac637500290ace989cdd7214..8caeab49959d67f209043986596032076809ceb5 100644 (file)
 
 #include "../tests.h"
 
+#include "../tests/test_grids.h"
 
-namespace
-{
-  /**
-   * This file uses a different ordering for the vertices in a hex
-   * cell than we usually do in deal.II. The different convention used
-   * here originates in what we believed the ordering to be in UCD
-   * format, until it was discovered in 2022 that UCD will interpret
-   * this ordering to correspond to inverted cells -- as a
-   * consequence, the UCD ordering was fixed, but the current file is
-   * stuck on the old ordering.
-   */
-  constexpr std::array<unsigned int, 8> local_vertex_numbering{
-    {0, 1, 5, 4, 2, 3, 7, 6}};
-
-  /**
-   * Following is a set of functions that reorder the data from the
-   * "current" to the "classic" format of vertex numbering of cells
-   * and faces. These functions do the reordering of their arguments
-   * in-place.
-   */
-  void
-  reorder_old_to_new_style(std::vector<CellData<2>> &cells)
-  {
-    for (auto &cell : cells)
-      std::swap(cell.vertices[2], cell.vertices[3]);
-  }
-
-
-  void
-  reorder_old_to_new_style(std::vector<CellData<3>> &cells)
-  {
-    // undo the ordering above
-    unsigned int tmp[GeometryInfo<3>::vertices_per_cell];
-    for (auto &cell : cells)
-      {
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          tmp[i] = cell.vertices[i];
-        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
-          cell.vertices[local_vertex_numbering[i]] = tmp[i];
-      }
-  }
-} // namespace
 
 
 void
index dea33ba25723aef0de0562e0eee7b11ad0952b4f..ed560bf00cecf6256a17e34b0f7b1d2ea28a343f 100644 (file)
@@ -157,4 +157,33 @@ namespace TestGrids
     GridGenerator::subdivided_hyper_rectangle(tr, repetitions, p1, p2);
     Assert(tr.n_global_active_cells() == n_cells, ExcInternalError());
   }
+
+  /**
+   * In the past, we used a different ordering for the vertices in a hex
+   * cell than we do now. We provide a conversion function to facilitate
+   * updating tests that are using the old ordering.
+   */
+  constexpr std::array<unsigned int, 8> local_vertex_numbering{
+    {0, 1, 5, 4, 2, 3, 7, 6}};
+
+  inline void
+  reorder_old_to_new_style(std::vector<CellData<3>> &cells)
+  {
+    // undo the ordering above
+    unsigned int tmp[GeometryInfo<3>::vertices_per_cell];
+    for (auto &cell : cells)
+      {
+        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
+          tmp[i] = cell.vertices[i];
+        for (const unsigned int i : GeometryInfo<3>::vertex_indices())
+          cell.vertices[local_vertex_numbering[i]] = tmp[i];
+      }
+  }
+
+  inline void
+  reorder_old_to_new_style(std::vector<CellData<2>> &cells)
+  {
+    for (auto &cell : cells)
+      std::swap(cell.vertices[2], cell.vertices[3]);
+  }
 } // namespace TestGrids

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.