|
SpECTRE
2021.08.02
|
Translation map defined by \(x = \xi+T(t)\). More...
#include <Translation.hpp>
Public Member Functions | |
| Translation (std::string function_of_time_name) noexcept | |
| template<typename T > | |
| std::array< tt::remove_cvref_wrap_t< T >, 1 > | operator() (const std::array< T, 1 > &source_coords, double time, const std::unordered_map< std::string, std::unique_ptr< domain::FunctionsOfTime::FunctionOfTime > > &functions_of_time) const noexcept |
| std::optional< std::array< double, 1 > > | inverse (const std::array< double, 1 > &target_coords, double time, const std::unordered_map< std::string, std::unique_ptr< domain::FunctionsOfTime::FunctionOfTime > > &functions_of_time) const noexcept |
| The inverse function is only callable with doubles because the inverse might fail if called for a point out of range, and it is unclear what should happen if the inverse were to succeed for some points in a DataVector but fail for other points. | |
| template<typename T > | |
| std::array< tt::remove_cvref_wrap_t< T >, 1 > | frame_velocity (const std::array< T, 1 > &source_coords, double time, const std::unordered_map< std::string, std::unique_ptr< domain::FunctionsOfTime::FunctionOfTime > > &functions_of_time) const noexcept |
| template<typename T > | |
| tnsr::Ij< tt::remove_cvref_wrap_t< T >, 1, Frame::NoFrame > | inv_jacobian (const std::array< T, 1 > &source_coords) const noexcept |
| template<typename T > | |
| tnsr::Ij< tt::remove_cvref_wrap_t< T >, 1, Frame::NoFrame > | jacobian (const std::array< T, 1 > &source_coords) const noexcept |
| void | pup (PUP::er &p) noexcept |
Static Public Member Functions | |
| static bool | is_identity () noexcept |
Static Public Attributes | |
| static constexpr size_t | dim = 1 |
Friends | |
| bool | operator== (const Translation &lhs, const Translation &rhs) noexcept |
Translation map defined by \(x = \xi+T(t)\).
The map adds a translation, \(T(t)\), to the coordinates \(\xi\), where \(T(t)\) is a FunctionOfTime.