![]() |
Reference documentation for deal.II version 9.5.1
|
#include <deal.II/grid/grid_reordering.h>
Static Public Member Functions | |
| static void | reorder_cells (std::vector< CellData< dim > > &original_cells, const bool use_new_style_ordering=false) |
| static void | invert_all_cells_of_negative_grid (const std::vector< Point< spacedim > > &all_vertices, std::vector< CellData< dim > > &original_cells, const bool use_new_style_ordering=false) |
A class implementing various grid reordering algorithms. For more information see the reordering module.
Definition at line 38 of file grid_reordering.h.
|
static |
This is the main function, doing what is announced in the general documentation of this class for dim=2 and 3 and doing nothing for dim=1.
If a consistent reordering is not possible in dim=3, the original connectivity data is restored.
| original_cells | An object that contains the data that describes the mesh. |
| use_new_style_ordering | If true, then use the standard ordering of vertices within a cell. If false (the default), then use the "old-style" ordering of vertices within cells used by deal.II before version 5.2 and as explained in the documentation of this class. |
Definition at line 114 of file grid_reordering.cc.
|
static |
Grids generated by grid generators may have an orientation of cells which is the inverse of the orientation required by deal.II.
In 2d and 3d this function checks whether all cells have negative or positive measure/volume. In the former case, all cells are inverted. It does nothing in 1d.
The inversion of cells might also work when only a subset of all cells have negative volume. However, grids consisting of a mixture of negative and positively oriented cells are very likely to be broken. Therefore, an exception is thrown, in case cells are not uniformly oriented.
Note, that this function should be called before reorder_cells().
| all_vertices | The vertices of the mesh. |
| original_cells | An object that contains the data that describes the mesh. |
| use_new_style_ordering | If true, then use the standard ordering of vertices within a cell. If false (the default), then use the "old-style" ordering of vertices within cells used by deal.II before version 5.2 and as explained in the documentation of this class. |
| void GridReordering< 2 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 2 > > & | all_vertices, |
| std::vector< CellData< 2 > > & | cells, | ||
| const bool | use_new_style_ordering | ||
| ) |
| void GridReordering< 2, 3 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 3 > > & | all_vertices, |
| std::vector< CellData< 2 > > & | cells, | ||
| const bool | use_new_style_ordering | ||
| ) |
| void GridReordering< 3 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 3 > > & | all_vertices, |
| std::vector< CellData< 3 > > & | cells, | ||
| const bool | use_new_style_ordering | ||
| ) |
| void GridReordering< 1 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 1 > > & | , |
| std::vector< CellData< 1 > > & | , | ||
| const bool | |||
| ) |
Definition at line 139 of file grid_reordering.cc.
| void GridReordering< 1, 2 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 2 > > & | , |
| std::vector< CellData< 1 > > & | , | ||
| const bool | |||
| ) |
Definition at line 151 of file grid_reordering.cc.
| void GridReordering< 1, 3 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 3 > > & | , |
| std::vector< CellData< 1 > > & | , | ||
| const bool | |||
| ) |
Definition at line 163 of file grid_reordering.cc.
| void GridReordering< 2 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 2 > > & | all_vertices, |
| std::vector< CellData< 2 > > & | cells, | ||
| const bool | use_new_style_ordering | ||
| ) |
Definition at line 174 of file grid_reordering.cc.
| void GridReordering< 2, 3 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 3 > > & | , |
| std::vector< CellData< 2 > > & | , | ||
| const bool | |||
| ) |
Definition at line 192 of file grid_reordering.cc.
| void GridReordering< 3 >::invert_all_cells_of_negative_grid | ( | const std::vector< Point< 3 > > & | all_vertices, |
| std::vector< CellData< 3 > > & | cells, | ||
| const bool | use_new_style_ordering | ||
| ) |
Definition at line 204 of file grid_reordering.cc.