Note: this is documentation for an old release. View the latest documentation at docs.fenicsproject.org/v0.3.0/v0.9.0/cpp
DOLFINx  0.3.0
DOLFINx C++ interface
graphbuild.h
1 // Copyright (C) 2010-2021 Garth N. Wells
2 //
3 // This file is part of DOLFINx (https://www.fenicsproject.org)
4 //
5 // SPDX-License-Identifier: LGPL-3.0-or-later
6 
7 #pragma once
8 
9 #include <cstdint>
10 #include <dolfinx/common/MPI.h>
11 #include <dolfinx/graph/AdjacencyList.h>
12 #include <utility>
13 #include <xtensor/xarray.hpp>
14 
15 namespace dolfinx::mesh
16 {
17 
30 std::pair<graph::AdjacencyList<std::int32_t>, xt::xtensor<std::int64_t, 2>>
31 build_local_dual_graph(const xtl::span<const std::int64_t>& cells,
32  const xtl::span<const std::int32_t>& offsets, int tdim);
33 
43 std::pair<graph::AdjacencyList<std::int64_t>, std::int32_t>
44 build_dual_graph(const MPI_Comm comm,
45  const graph::AdjacencyList<std::int64_t>& cells, int tdim);
46 
47 } // namespace dolfinx::mesh
Mesh data structures and algorithms on meshes.
Definition: DirichletBC.h:20
std::pair< graph::AdjacencyList< std::int64_t >, std::int32_t > build_dual_graph(const MPI_Comm comm, const graph::AdjacencyList< std::int64_t > &cells, int tdim)
Build distributed dual graph (cell-cell connections) from minimal mesh data.
Definition: graphbuild.cpp:546
std::pair< graph::AdjacencyList< std::int32_t >, xt::xtensor< std::int64_t, 2 > > build_local_dual_graph(const xtl::span< const std::int64_t > &cells, const xtl::span< const std::int32_t > &offsets, int tdim)
Compute the local part of the dual graph (cell-cell connections via facets)
Definition: graphbuild.cpp:304