DOLFIN-X
DOLFIN-X C++ interface
PlazaRefinementND.h
1 // Copyright (C) 2014-2018 Chris Richardson
2 //
3 // This file is part of DOLFINX (https://www.fenicsproject.org)
4 //
5 // SPDX-License-Identifier: LGPL-3.0-or-later
6 
7 #include <cstdint>
8 #include <utility>
9 #include <vector>
10 
11 #pragma once
12 
13 namespace dolfinx
14 {
15 
16 namespace mesh
17 {
18 class Mesh;
19 template <typename T>
20 class MeshTags;
21 } // namespace mesh
22 
23 namespace refinement
24 {
25 class ParallelRefinement;
26 
30 
32 {
33 public:
41  static mesh::Mesh refine(const mesh::Mesh& mesh, bool redistribute);
42 
52  static mesh::Mesh refine(const mesh::Mesh& mesh,
53  const mesh::MeshTags<std::int8_t>& refinement_marker,
54  bool redistribute);
55 };
56 } // namespace refinement
57 } // namespace dolfinx
dolfinx::mesh::MeshTags
A MeshTags are used to associate mesh entities with values. The entity index (local to process) ident...
Definition: Form.h:37
dolfinx::mesh::Mesh
A Mesh consists of a set of connected and numbered mesh topological entities, and geometry data.
Definition: Mesh.h:46
dolfinx::refinement::PlazaRefinementND::refine
static mesh::Mesh refine(const mesh::Mesh &mesh, bool redistribute)
Uniform refine, optionally redistributing and optionally calculating the parent-child relation for fa...
Definition: PlazaRefinementND.cpp:488
dolfinx::refinement::PlazaRefinementND
Implementation of the refinement method described in Plaza and Carey "Local refinement of simplicial ...
Definition: PlazaRefinementND.h:31