SpECTRE Documentation Coverage Report
Current view: top level - Domain - ElementToBlockLogicalMap.hpp Hit Total Coverage
Commit: 3c072f0ce967e2e56649d3fa12aa2a0e4fe2a42e Lines: 1 2 50.0 %
Date: 2024-04-23 20:50:18
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 <cstddef>
       7             : #include <memory>
       8             : 
       9             : #include "DataStructures/Tensor/IndexType.hpp"
      10             : #include "Domain/CoordinateMaps/CoordinateMap.hpp"
      11             : #include "Domain/Structure/ElementId.hpp"
      12             : 
      13             : namespace domain {
      14             : /*!
      15             :  * \brief Constructs the affine map from ElementLogical to BlockLogical
      16             :  * coordinates
      17             :  *
      18             :  * An element is the result of repeatedly splitting a block in half along any of
      19             :  * its logical axes. This map transforms from ElementLogical coordinates
      20             :  * [-1, 1]^dim to the subset of BlockLogical coordinates [-1, 1]^dim that cover
      21             :  * the element. For instance, the two elements at refinement level 1 in 1D
      22             :  * cover [-1, 0] and [0, 1] in BlockLogical coordinates, respectively.
      23             :  */
      24             : template <size_t Dim>
      25             : std::unique_ptr<
      26             :     CoordinateMapBase<Frame::ElementLogical, Frame::BlockLogical, Dim>>
      27           1 : element_to_block_logical_map(const ElementId<Dim>& element_id);
      28             : }  // namespace domain

Generated by: LCOV version 1.14