Note: this is documentation for an old release. View the latest documentation at docs.fenicsproject.org/v0.1.0/v0.9.0/cpp
DOLFINx  0.1.0
DOLFINx C++ interface
plaza.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 <dolfinx/graph/AdjacencyList.h>
9 #include <utility>
10 #include <vector>
11 
12 #pragma once
13 
14 namespace dolfinx
15 {
16 
17 namespace mesh
18 {
19 class Mesh;
20 template <typename T>
21 class MeshTags;
22 } // namespace mesh
23 
24 namespace refinement
25 {
26 
30 namespace plaza
31 {
32 
40 mesh::Mesh refine(const mesh::Mesh& mesh, bool redistribute);
41 
50 mesh::Mesh refine(const mesh::Mesh& mesh,
51  const mesh::MeshTags<std::int8_t>& refinement_marker,
52  bool redistribute);
53 
62 std::tuple<graph::AdjacencyList<std::int64_t>, xt::xtensor<double, 2>,
63  std::vector<std::int32_t>>
65  const mesh::MeshTags<std::int8_t>& refinement_marker);
66 
72 std::tuple<graph::AdjacencyList<std::int64_t>, xt::xtensor<double, 2>,
73  std::vector<std::int32_t>>
75 
76 } // namespace plaza
77 } // namespace refinement
78 } // namespace dolfinx
dolfinx::refinement::plaza::compute_refinement_data
std::tuple< graph::AdjacencyList< std::int64_t >, xt::xtensor< double, 2 >, std::vector< std::int32_t > > compute_refinement_data(const mesh::Mesh &mesh, const mesh::MeshTags< std::int8_t > &refinement_marker)
Refine with markers returning new mesh data.
Definition: plaza.cpp:606
dolfinx::refinement::plaza::refine
mesh::Mesh refine(const mesh::Mesh &mesh, bool redistribute)
Uniform refine, optionally redistributing and optionally calculating the parent-child relation for fa...
Definition: plaza.cpp:514
dolfinx::mesh::MeshTags
A MeshTags are used to associate mesh entities with values. The entity index (local to process) ident...
Definition: XDMFFile.h:40
dolfinx::mesh::Mesh
A Mesh consists of a set of connected and numbered mesh topological entities, and geometry data.
Definition: Mesh.h:55