Line data Source code
1 0 : // Distributed under the MIT License. 2 : // See LICENSE.txt for details. 3 : 4 : #pragma once 5 : 6 : #include "DataStructures/DataBox/Tag.hpp" 7 : #include "Time/OptionTags/InitialTime.hpp" 8 : #include "Utilities/TMPL.hpp" 9 : 10 : namespace Tags { 11 : /// \ingroup DataBoxTagsGroup 12 : /// \ingroup TimeGroup 13 : /// \brief Tag for the current time as a double 14 : /// 15 : /// The meaning of "current time" varies during the algorithm, but 16 : /// generally is whatever time is appropriate for the calculation 17 : /// being run. Usually this is the substep time, but things such as 18 : /// dense-output calculations may temporarily change the value. 19 1 : struct Time : db::SimpleTag { 20 0 : using type = double; 21 0 : using option_tags = tmpl::list<OptionTags::InitialTime>; 22 : 23 0 : static constexpr bool pass_metavariables = false; 24 0 : static double create_from_options(const double initial_time) { 25 : return initial_time; 26 : } 27 : }; 28 : } // namespace Tags