SpECTRE Documentation Coverage Report
Current view: top level - Domain/Structure - NeighborIsConforming.hpp Coverage Total Hit
Commit: 0d1d717af84a81fb1284a20c4013708fe85cc2f0 Lines: 50.0 % 2 1
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              : 
       9              : /// \cond
      10              : template <size_t VolumeDim>
      11              : class Direction;
      12              : template <size_t VolumeDim>
      13              : class OrientationMap;
      14              : namespace domain {
      15              : enum class Topology : uint8_t;
      16              : }  // namespace domain
      17              : /// \endcond
      18              : 
      19              : namespace domain {
      20              : /// \ingroup ComputationalDomainGroup
      21              : /// \brief Returns whether or not neighboring Blocks (or Elements) have
      22              : /// conforming block logical coordinates on their interface
      23              : ///
      24              : /// \details Block logical coordinates are considered to be conforming if they
      25              : /// are identical or related by a discrete rotation (i.e. a valid non-aligned
      26              : /// OrientationMap).  It is a requirement that neighboring Blocks be conforming
      27              : /// if their oriented topologies are the same in the interface dimensions.
      28              : ///
      29              : /// \note If neighboring Elements are conforming, they can exchange boundary
      30              : /// data via either copy (if they have the same h- and p-refinement) or
      31              : /// projection (if they don't), taking into account the discrete rotation if
      32              : /// necessary. If the neighbors are not conforming, boundary data will need to
      33              : /// be interpolated.
      34              : template <size_t VolumeDim>
      35            1 : bool neighbor_is_conforming(
      36              :     const std::array<Topology, VolumeDim>& self_topologies,
      37              :     const std::array<Topology, VolumeDim>& neighbor_topologies,
      38              :     const Direction<VolumeDim>& direction_to_neighbor,
      39              :     const OrientationMap<VolumeDim>& orientation_of_neighbor);
      40              : }  // namespace domain
        

Generated by: LCOV version 2.0-1