SpECTRE Documentation Coverage Report
Current view: top level - Time - LtsMode.hpp Coverage Total Hit
Commit: a37d7b3c1803b88b537d2aef1c27ca5e6b499398 Lines: 16.7 % 6 1
Test Date: 2026-11-12 04:47:19
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 <cstdint>
       7              : #include <iosfwd>
       8              : 
       9              : /// \cond
      10              : namespace Options {
      11              : class Option;
      12              : template <typename T>
      13              : struct create_from_yaml;
      14              : }  // namespace Options
      15              : /// \endcond
      16              : 
      17              : /// Version of local time-stepping in use, either overall or in a
      18              : /// particular calculation.
      19            1 : enum class LtsMode : uint8_t {
      20              :   /// Default value is uninitialized.
      21              :   Uninitialized,
      22              :   /// Global time-stepping
      23              :   ///
      24              :   /// Communicated boundary corrections will be added directly to the
      25              :   /// volume RHS calculation, and algorithms that are not
      26              :   /// local-time-stepping aware (such as subcell) can be used.
      27              :   Off,
      28              :   /// Conservative local time-stepping using an LtsTimeStepper
      29              :   ///
      30              :   /// A flux-conservative boundary integral will be performed to
      31              :   /// couple elements.
      32              :   Conservative,
      33              :   /// Nonconservative local time-stepping extrapolating values from past steps
      34              :   Extrapolated,
      35              : };
      36              : 
      37            0 : std::ostream& operator<<(std::ostream& os, LtsMode value);
      38              : 
      39              : template <>
      40            0 : struct Options::create_from_yaml<LtsMode> {
      41              :   template <typename Metavariables>
      42            0 :   static LtsMode create(const Options::Option& options) {
      43              :     return create<void>(options);
      44              :   }
      45              : };
      46              : 
      47              : template <>
      48            0 : LtsMode Options::create_from_yaml<LtsMode>::create<void>(
      49              :     const Options::Option& options);
        

Generated by: LCOV version 2.0-1