![]() |
PRISMS-PF Manual
|
This class handlers the generation and manipulation of triangulations. More...
#include <triangulation_manager.h>
Public Member Functions | |
| TriangulationManager (bool _has_multigrid=false) | |
| Constructor. | |
| TriangulationManager (const SpatialDiscretization< dim > &discretization_params, bool _has_multigrid=false) | |
| void | set_using_multigrid (bool _has_multigrid) |
| Set whether multigrid triangulations will be generated. | |
| void | reinit () |
| Reinitialize the triangulation handler. This is used for AMR with multigrid so the coarsened meshes can be reinitialized. | |
| const Triangulation< dim > & | get_triangulation () const |
| Getter function for triangulation (constant reference). | |
| const dealii::Triangulation< dim > & | get_triangulation (unsigned int relative_level) const |
| Getter function for a level in the globally coarsening multigrid triangulation (constant reference). | |
| const std::vector< dealii::GridTools::PeriodicFacePair< typename dealii::Triangulation< dim >::cell_iterator > > & | get_periodic_face_pairs () const |
| Get the vector of periodic face pairs. | |
| double | get_volume () const |
| Get the vector of periodic face pairs. | |
| void | generate_mesh (const SpatialDiscretization< dim > &discretization_params) |
| Generate mesh based on the inputs provided by the user. | |
| void | export_triangulation_as_vtk (const std::string &filename) const |
| Export triangulation to vtk. This is done for debugging purposes when dealing with unusual meshes (e.g., circular domains). | |
| void | prepare_for_grid_refinement () |
| Prepare the triangulation for grid refinement. | |
| void | execute_grid_refinement () |
| Execute grid refinement on the triangulation. | |
| void | clear_user_flags () |
| Clear all user flags. | |
| PRISMS_PF_BEGIN_NAMESPACE | TriangulationManager (bool _has_multigrid) |
Private Attributes | |
| bool | has_multigrid = false |
| Whether we have multigrid. | |
| Triangulation< dim > | triangulation |
| Main triangulation. | |
| std::vector< std::shared_ptr< const dealii::Triangulation< dim > > > | coarsened_triangulations |
| Coarsened triangulations for multigrid. | |
| std::vector< dealii::GridTools::PeriodicFacePair< typename dealii::Triangulation< dim >::cell_iterator > > | periodicity_vector |
| Periodic face pairs on the coarsest mesh if they exist. | |
| double | volume = 0 |
| Periodic face pairs on the coarsest mesh if they exist. | |
This class handlers the generation and manipulation of triangulations.
|
explicit |
Constructor.
|
inlineexplicit |
| PRISMS_PF_BEGIN_NAMESPACE TriangulationManager< 1U >::TriangulationManager | ( | bool | _has_multigrid | ) |
|
inline |
Clear all user flags.
|
inline |
Execute grid refinement on the triangulation.
| void TriangulationManager< dim >::export_triangulation_as_vtk | ( | const std::string & | filename | ) | const |
Export triangulation to vtk. This is done for debugging purposes when dealing with unusual meshes (e.g., circular domains).
| void TriangulationManager< dim >::generate_mesh | ( | const SpatialDiscretization< dim > & | discretization_params | ) |
Generate mesh based on the inputs provided by the user.
| const std::vector< dealii::GridTools::PeriodicFacePair< typename dealii::Triangulation< dim >::cell_iterator > > & TriangulationManager< dim >::get_periodic_face_pairs | ( | ) | const |
Get the vector of periodic face pairs.
| const Triangulation< dim > & TriangulationManager< dim >::get_triangulation | ( | ) | const |
Getter function for triangulation (constant reference).
| const dealii::Triangulation< dim > & TriangulationManager< dim >::get_triangulation | ( | unsigned int | relative_level | ) | const |
Getter function for a level in the globally coarsening multigrid triangulation (constant reference).
| double TriangulationManager< dim >::get_volume | ( | ) | const |
Get the vector of periodic face pairs.
|
inline |
Prepare the triangulation for grid refinement.
| void TriangulationManager< dim >::reinit | ( | ) |
Reinitialize the triangulation handler. This is used for AMR with multigrid so the coarsened meshes can be reinitialized.
|
inline |
Set whether multigrid triangulations will be generated.
|
private |
Coarsened triangulations for multigrid.
Whether we have multigrid.
|
private |
Periodic face pairs on the coarsest mesh if they exist.
|
private |
Main triangulation.
|
private |
Periodic face pairs on the coarsest mesh if they exist.