Loading...
Searching...
No Matches
sparsitybuild.h
// Copyright (C) 2007-2023 Garth N. Wells
//
// This file is part of DOLFINx (https://www.fenicsproject.org)
//
// SPDX-License-Identifier: LGPL-3.0-or-later
#pragma once
#include <array>
#include <cstdint>
#include <functional>
#include <span>
namespace dolfinx::la
{
class SparsityPattern;
}
namespace dolfinx::fem
{
class DofMap;
namespace sparsitybuild
{
void cells(la::SparsityPattern& pattern,
std::array<std::span<const std::int32_t>, 2> cells,
std::array<std::reference_wrapper<const DofMap>, 2> dofmaps);
void interior_facets(
la::SparsityPattern& pattern,
std::array<std::span<const std::int32_t>, 2> cells,
std::array<std::reference_wrapper<const DofMap>, 2> dofmaps);
} // namespace sparsitybuild
} // namespace dolfinx::fem
dolfinx::la::SparsityPattern
Definition SparsityPattern.h:26
dolfinx::fem::sparsitybuild
Support for building sparsity patterns from degree-of-freedom maps.
Definition sparsitybuild.h:25
dolfinx::fem::sparsitybuild::interior_facets
void interior_facets(la::SparsityPattern &pattern, std::array< std::span< const std::int32_t >, 2 > cells, std::array< std::reference_wrapper< const DofMap >, 2 > dofmaps)
Iterate over interior facets and insert entries into sparsity pattern.
Definition sparsitybuild.cpp:28
dolfinx::fem::sparsitybuild::cells
void cells(la::SparsityPattern &pattern, std::array< std::span< const std::int32_t >, 2 > cells, std::array< std::reference_wrapper< const DofMap >, 2 > dofmaps)
Iterate over cells and insert entries into sparsity pattern.
Definition sparsitybuild.cpp:16
dolfinx::fem
Finite element method functionality.
Definition assemble_expression_impl.h:23
dolfinx::la
Linear algebra interface.
Definition sparsitybuild.h:15