SpECTRE Documentation Coverage Report
Current view: top level - Time - AdvanceTime.hpp Hit Total Coverage
Commit: 1f2210958b4f38fdc0400907ee7c6d5af5111418 Lines: 1 5 20.0 %
Date: 2025-12-05 05:03:31
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             : 
       8             : #include "Utilities/TMPL.hpp"
       9             : 
      10             : /// \cond
      11             : class AdaptiveSteppingDiagnostics;
      12             : class TimeDelta;
      13             : class TimeStepId;
      14             : class TimeStepper;
      15             : namespace Tags {
      16             : struct AdaptiveSteppingDiagnostics;
      17             : template <typename Tag>
      18             : struct Next;
      19             : struct StepperErrorEstimatesEnabled;
      20             : struct StepNumberWithinSlab;
      21             : struct Time;
      22             : struct TimeStep;
      23             : struct TimeStepId;
      24             : template <typename StepperInterface>
      25             : struct TimeStepper;
      26             : }  // namespace Tags
      27             : namespace gsl {
      28             : template <class T>
      29             : class not_null;
      30             : }  // namespace gsl
      31             : /// \endcond
      32             : 
      33             : /// \ingroup TimeGroup
      34             : /// \brief Advance time one substep
      35             : ///
      36             : /// Replaces the time state with the `Tags::Next` values, advances the
      37             : /// `Tags::Next` values, and sets `Tags::Time` to the new substep time.
      38           1 : struct AdvanceTime {
      39           0 :   using return_tags =
      40             :       tmpl::list<Tags::TimeStepId, Tags::Next<Tags::TimeStepId>, Tags::TimeStep,
      41             :                  Tags::Time, Tags::StepNumberWithinSlab,
      42             :                  Tags::AdaptiveSteppingDiagnostics>;
      43           0 :   using argument_tags = tmpl::list<Tags::TimeStepper<TimeStepper>,
      44             :                                    Tags::StepperErrorEstimatesEnabled>;
      45             : 
      46           0 :   static void apply(gsl::not_null<TimeStepId*> time_id,
      47             :                     gsl::not_null<TimeStepId*> next_time_id,
      48             :                     gsl::not_null<TimeDelta*> time_step,
      49             :                     gsl::not_null<double*> time,
      50             :                     gsl::not_null<uint64_t*> step_number_within_slab,
      51             :                     gsl::not_null<AdaptiveSteppingDiagnostics*> diags,
      52             :                     const TimeStepper& time_stepper, bool using_error_control);
      53             : };

Generated by: LCOV version 1.14