A simple mesh that mimics a cell-by-cell AMR mesh. More...
#include <adaptive_refinement_mesh.h>
Public Member Functions | |
Adaptive_Refinement_Mesh ()=delete | |
Default constructor (disabled) More... | |
Adaptive_Refinement_Mesh (std::function< int(const Point< D >)> func, const Point< D > &plo, const Point< D > &phi) | |
Constructor to create a Adaptive_Refinement_Mesh. More... | |
Adaptive_Refinement_Mesh & | operator= (const Adaptive_Refinement_Mesh< D, CoordSys > &)=delete |
Assignment operator (disabled). More... | |
int | space_dimension () const |
Get the dimensionality of the mesh. More... | |
int | num_cells () const |
Get the total number of cells in the mesh. More... | |
BoundingBox< D > | cell_get_bounds (const int id) const |
Get the lower and upper bounds of the specified cell. More... | |
Detailed Description
template<int D, class CoordSys = DefaultCoordSys>
class Wonton::Adaptive_Refinement_Mesh< D, CoordSys >
A simple mesh that mimics a cell-by-cell AMR mesh.
An Adaptive_Refinement_Mesh is a basic, serial, N-dimensional mesh whose cells are all axis-aligned boxes. It is intended to be a simple mesh that mimics many of the important features of a cell-by-cell AMR (adaptive mesh refinement) mesh.
Storage of the mesh is based on a list of cells and associated geometric quantities.
The Adaptive_Refinement_Mesh is designed to implement only the necessary functionality to test certain components in Wonton and Portage. As the scope of the tests expands, the scope of functionality of the Adaptive_Refinement_Mesh may also expand.
Constructor & Destructor Documentation
◆ Adaptive_Refinement_Mesh() [1/2]
|
delete |
Default constructor (disabled)
◆ Adaptive_Refinement_Mesh() [2/2]
Wonton::Adaptive_Refinement_Mesh< D, CoordSys >::Adaptive_Refinement_Mesh | ( | std::function< int(const Point< D >)> | func, |
const Point< D > & | plo, | ||
const Point< D > & | phi | ||
) |
Constructor to create a Adaptive_Refinement_Mesh.
- Parameters
-
[in] func The refinement function specifying the AMR level as a function of position. [in] plo Point specifying the low corner of the mesh along all axes. [in] phi Point specifying the high corner of the mesh along all axes.
Some AMR meshes allow multiple refinement-level-zero cells in order to have non-square grids, but for simplicity this mesh assumes that the overall grid has a single refinement-level-zero cell, and then refines from there.
Member Function Documentation
◆ cell_get_bounds()
BoundingBox< D > Wonton::Adaptive_Refinement_Mesh< D, CoordSys >::cell_get_bounds | ( | const int | id | ) | const |
Get the lower and upper bounds of the specified cell.
- Parameters
-
[in] id The ID of the cell to query.
◆ num_cells()
int Wonton::Adaptive_Refinement_Mesh< D, CoordSys >::num_cells | ( | ) | const |
Get the total number of cells in the mesh.
◆ operator=()
|
delete |
Assignment operator (disabled).
◆ space_dimension()
int Wonton::Adaptive_Refinement_Mesh< D, CoordSys >::space_dimension | ( | ) | const |
Get the dimensionality of the mesh.
The documentation for this class was generated from the following file:
- /home/wonton/wonton/wonton/mesh/adaptive_refinement/adaptive_refinement_mesh.h