#include <PlazaRefinementND.h>
|
static void | refine (Mesh &new_mesh, const Mesh &mesh, bool redistribute, bool calculate_parent_facets) |
|
static void | refine (Mesh &new_mesh, const Mesh &mesh, const MeshFunction< bool > &refinement_marker, bool redistribute, bool calculate_parent_facets) |
|
static void | refine (Mesh &new_mesh, const Mesh &mesh, const MeshFunction< bool > &refinement_marker, bool calculate_parent_facets, MeshRelation &mesh_relation) |
|
static void | get_simplices (std::vector< std::size_t > &simplex_set, const std::vector< bool > &marked_edges, const std::vector< std::size_t > &longest_edge, std::size_t tdim, bool uniform) |
|
Implementation of the refinement method described in Plaza and Carey "Local refinement of simplicial grids
based on the skeleton" (Applied Numerical Mathematics 32 (2000) 195-218)
◆ get_simplices()
void PlazaRefinementND::get_simplices |
( |
std::vector< std::size_t > & |
simplex_set, |
|
|
const std::vector< bool > & |
marked_edges, |
|
|
const std::vector< std::size_t > & |
longest_edge, |
|
|
std::size_t |
tdim, |
|
|
bool |
uniform |
|
) |
| |
|
static |
Get the subdivision of an original simplex into smaller simplices, for a given set of marked edges, and the longest edge of each facet (cell local indexing). A flag indicates if a uniform subdivision is preferable in 2D.
- Parameters
-
simplex_set | Returned set of triangles/tets topological description |
marked_edges | Vector indicating which edges are to be split |
longest_edge | Vector indicating the longest edge for each triangle. For tdim=2, one entry, for tdim=3, four entries. |
tdim | Topological dimension (2 or 3) |
uniform | Make a "uniform" subdivision with all triangles being similar shape |
◆ refine() [1/3]
void PlazaRefinementND::refine |
( |
Mesh & |
new_mesh, |
|
|
const Mesh & |
mesh, |
|
|
bool |
redistribute, |
|
|
bool |
calculate_parent_facets |
|
) |
| |
|
static |
Uniform refine, optionally redistributing and optionally calculating the parent-child relation for facets (in 2D)
- Parameters
-
new_mesh | New Mesh |
mesh | Input mesh to be refined |
redistribute | Flag to call the Mesh Partitioner to redistribute after refinement |
calculate_parent_facets | Flag to build parent facet information, needed to propagate information on boundaries |
◆ refine() [2/3]
void PlazaRefinementND::refine |
( |
Mesh & |
new_mesh, |
|
|
const Mesh & |
mesh, |
|
|
const MeshFunction< bool > & |
refinement_marker, |
|
|
bool |
redistribute, |
|
|
bool |
calculate_parent_facets |
|
) |
| |
|
static |
Refine with markers, optionally redistributing and optionally calculating the parent-child relation for facets (in 2D)
- Parameters
-
new_mesh | New Mesh |
mesh | Input mesh to be refined |
refinement_marker | MeshFunction listing MeshEntities which should be split by this refinement |
redistribute | Flag to call the Mesh Partitioner to redistribute after refinement |
calculate_parent_facets | Flag to build parent facet information, needed to propagate information on boundaries |
◆ refine() [3/3]
void PlazaRefinementND::refine |
( |
Mesh & |
new_mesh, |
|
|
const Mesh & |
mesh, |
|
|
const MeshFunction< bool > & |
refinement_marker, |
|
|
bool |
calculate_parent_facets, |
|
|
MeshRelation & |
mesh_relation |
|
) |
| |
|
static |
Refine with markers, optionally calculating facet relations, and saving relation data in MeshRelation structure
- Parameters
-
new_mesh | New Mesh |
mesh | Input mesh to be refined |
refinement_marker | MeshFunction listing MeshEntities which should be split by this refinement |
calculate_parent_facets | Flag to build parent facet information, needed to propagate information on boundaries |
mesh_relation | New relationship between the two meshes |
The documentation for this class was generated from the following files:
- /home/fenics/shared/dolfin/dolfin/refinement/PlazaRefinementND.h
- /home/fenics/shared/dolfin/dolfin/refinement/PlazaRefinementND.cpp