SpECTRE
v2024.12.16
|
Given an initial function of time, transitions the map to a constant-in-time value. More...
#include <SettleToConstant.hpp>
Public Member Functions | |
SettleToConstant (const std::array< DataVector, 3 > &initial_func_and_derivs, double match_time, double decay_time) | |
SettleToConstant (SettleToConstant &&)=default | |
SettleToConstant & | operator= (SettleToConstant &&)=default |
SettleToConstant (const SettleToConstant &)=default | |
SettleToConstant & | operator= (const SettleToConstant &)=default |
WRAPPED_PUPable_decl_template (SettleToConstant) | |
SettleToConstant (CkMigrateMessage *) | |
auto | get_clone () const -> std::unique_ptr< FunctionOfTime > override |
std::array< DataVector, 1 > | func (const double t) const override |
Returns the function at an arbitrary time t . More... | |
std::array< DataVector, 2 > | func_and_deriv (const double t) const override |
Returns the function and its first derivative at an arbitrary time t . More... | |
std::array< DataVector, 3 > | func_and_2_derivs (const double t) const override |
Returns the function and the first two derivatives at an arbitrary time t . More... | |
std::array< double, 2 > | time_bounds () const override |
Returns the domain of validity of the function. More... | |
double | expiration_after (const double) const override |
The first expiration time after time . More... | |
void | pup (PUP::er &p) override |
Public Member Functions inherited from domain::FunctionsOfTime::FunctionOfTime | |
FunctionOfTime (FunctionOfTime &&)=default | |
FunctionOfTime & | operator= (FunctionOfTime &&)=default |
FunctionOfTime (const FunctionOfTime &)=default | |
FunctionOfTime & | operator= (const FunctionOfTime &)=default |
virtual auto | get_clone () const -> std::unique_ptr< FunctionOfTime >=0 |
virtual std::array< double, 2 > | time_bounds () const =0 |
Returns the domain of validity of the function. For FunctionsOfTime that allow a small amount of time extrapolation, time_bounds tells you the bounds including the allowed extrapolation interval. More... | |
virtual double | expiration_after (double time) const =0 |
The first expiration time after time . More... | |
virtual void | update (double, DataVector, double) |
Updates the maximum derivative of the FunctionOfTime at a given time while also resetting the expiration. By default, a FunctionOfTime cannot be updated. More... | |
virtual std::array< DataVector, 1 > | func (double t) const =0 |
The DataVector can be of any size. More... | |
virtual std::array< DataVector, 2 > | func_and_deriv (double t) const =0 |
The DataVector can be of any size. More... | |
virtual std::array< DataVector, 3 > | func_and_2_derivs (double t) const =0 |
The DataVector can be of any size. More... | |
virtual std::vector< DataVector > | func_and_all_derivs (double t) const |
All derivatives a function of time has to offer (because it can be more than 2) More... | |
WRAPPED_PUPable_abstract (FunctionOfTime) | |
Friends | |
bool | operator== (const SettleToConstant &lhs, const SettleToConstant &rhs) |
Given an initial function of time, transitions the map to a constant-in-time value.
Given an initial function
where decay_time
and match_time
.
|
inlineoverridevirtual |
The first expiration time after time
.
For non-updatable functions, this returns infinity. For updatable functions, the first expiration time after time
is found by determining the update immediately before time
. The expiration time of this update is what is returned. If time
happens to be an update itself, then the expiration of that update is returned.
Implements domain::FunctionsOfTime::FunctionOfTime.
|
inlineoverridevirtual |
Returns the function at an arbitrary time t
.
Implements domain::FunctionsOfTime::FunctionOfTime.
|
inlineoverridevirtual |
Returns the function and the first two derivatives at an arbitrary time t
.
Implements domain::FunctionsOfTime::FunctionOfTime.
|
inlineoverridevirtual |
Returns the function and its first derivative at an arbitrary time t
.
Implements domain::FunctionsOfTime::FunctionOfTime.
|
overridevirtual |
Implements domain::FunctionsOfTime::FunctionOfTime.
|
inlineoverridevirtual |
Returns the domain of validity of the function.
Implements domain::FunctionsOfTime::FunctionOfTime.