1
// Copyright (C) 2006 Anders Logg.
2
// Licensed under the GNU LGPL Version 2.1.
4
// First added: 2006-06-21
5
// Last changed: 2006-06-22
7
#ifndef __BOUNDARY_COMPUTATION_H
8
#define __BOUNDARY_COMPUTATION_H
10
#include <dolfin/constants.h>
11
#include <dolfin/MeshFunction.h>
19
/// This class implements provides a set of basic algorithms for
20
/// the computation of boundaries.
22
class BoundaryComputation
26
/// Compute the boundary of a given mesh
27
static void computeBoundary(Mesh& mesh, BoundaryMesh& boundary);
29
/// Compute the boundary of a given mesh, including a pair of mappings
30
/// from the vertices and cells of the boundary to the corresponding
31
/// mesh entities in the original mesh
32
static void computeBoundary(Mesh& mesh, BoundaryMesh& boundary,
33
MeshFunction<uint>& vertex_map,
34
MeshFunction<uint>& cell_map);
38
/// Compute boundary and optionally the mappings if requested
39
static void computeBoundaryCommon(Mesh& mesh, BoundaryMesh& boundary,
40
MeshFunction<uint>* vertex_map,
41
MeshFunction<uint>* cell_map);