SpECTRE Documentation Coverage Report
Current view: top level - Domain/Structure - CreateInitialMesh.hpp Coverage Total Hit
Commit: 0d1d717af84a81fb1284a20c4013708fe85cc2f0 Lines: 75.0 % 4 3
Test Date: 2026-10-22 17:29:42
Legend: Lines:     hit not hit

            Line data    Source code
       1            0 : // Distributed under the MIT License.
       2              : // See LICENSE.txt for details.
       3              : 
       4              : #pragma once
       5              : 
       6              : #include <array>
       7              : #include <cstddef>
       8              : #include <cstdint>
       9              : #include <vector>
      10              : 
      11              : /// \cond
      12              : template <size_t Dim>
      13              : struct Block;
      14              : template <size_t Dim>
      15              : struct Element;
      16              : template <size_t Dim>
      17              : struct ElementId;
      18              : template <size_t Dim>
      19              : class Mesh;
      20              : namespace domain {
      21              : enum class Topology : uint8_t;
      22              : }  // namespace domain
      23              : namespace Spectral {
      24              : enum class Basis : uint8_t;
      25              : enum class Quadrature : uint8_t;
      26              : }  // namespace Spectral
      27              : /// \endcond
      28              : 
      29              : namespace domain {
      30              : /// \ingroup InitializationGroup
      31              : /// \brief Construct the initial Mesh of an Element.
      32              : ///
      33              : /// \param initial_extents initial extents for Elements in each Block of the
      34              : ///        Domain
      35              : /// \param element Element
      36              : /// \param i1_basis the Spectral::Basis used for dimensions with Topology::I1
      37              : /// \param i1_quadrature the Spectral::Quadrature for dimensions with
      38              : ///        Topology::I1
      39              : template <size_t Dim>
      40            1 : Mesh<Dim> create_initial_mesh(
      41              :     const std::vector<std::array<size_t, Dim>>& initial_extents,
      42              :     const Element<Dim>& element, Spectral::Basis i1_basis,
      43              :     Spectral::Quadrature i1_quadrature);
      44              : 
      45              : /// \ingroup InitializationGroup
      46              : /// \brief Construct the initial Mesh of an Element from its Block and
      47              : /// ElementId.
      48              : ///
      49              : /// \param initial_extents initial extents for Elements in each Block of the
      50              : ///        Domain
      51              : /// \param block the Block of the Element
      52              : /// \param element_id the ElementId of the Element
      53              : /// \param i1_basis the Spectral::Basis used for dimensions with Topology::I1
      54              : /// \param i1_quadrature the Spectral::Quadrature for dimensions with
      55              : ///        Topology::I1
      56              : template <size_t Dim>
      57            1 : Mesh<Dim> create_initial_mesh(
      58              :     const std::vector<std::array<size_t, Dim>>& initial_extents,
      59              :     const Block<Dim>& block, const ElementId<Dim>& element_id,
      60              :     Spectral::Basis i1_basis, Spectral::Quadrature i1_quadrature);
      61              : 
      62              : /// \ingroup InitializationGroup
      63              : /// \brief Create a new array of topologies to account for potential radial
      64              : /// refinement of Bn topologies.
      65              : ///
      66              : /// \param topologies initial topologies of the Element
      67              : /// \param element_id the ElementId of the Element
      68              : template <size_t Dim>
      69            1 : std::array<domain::Topology, Dim> refine_Bn_topology(
      70              :     const std::array<domain::Topology, Dim>& topologies,
      71              :     const ElementId<Dim>& element_id);
      72              : 
      73              : }  // namespace domain
        

Generated by: LCOV version 2.0-1