SpECTRE
v2024.05.11
|
Control error in the 3D Translation coordinate map. More...
#include <Translation.hpp>
Public Types | |
using | object_centers = domain::object_list< domain::ObjectLabel::A, domain::ObjectLabel::B > |
using | options = tmpl::list<> |
Public Member Functions | |
void | pup (PUP::er &) |
template<typename Metavariables , typename... TupleTags> | |
DataVector | operator() (const ::TimescaleTuner< true > &, const Parallel::GlobalCache< Metavariables > &cache, const double time, const std::string &, const tuples::TaggedTuple< TupleTags... > &measurements) |
Static Public Attributes | |
static constexpr size_t | expected_number_of_excisions = 2 |
static constexpr Options::String | help |
Control error in the 3D Translation coordinate map.
Computes the error in how much the system has translated by using a modified version of Eq. (42) from [140]. The equation is
\[ \left(0, \delta\vec{T}\right) = a\mathbf{q}\left(\frac{1}{2}(\mathbf{x}_A + \mathbf{x}_B - \frac{1}{2}(\mathbf{c}_A + \mathbf{c}_B)) - \mathbf{\delta q}\wedge\frac{1}{2}(\mathbf{c}_A + \mathbf{c}_B) - \frac{\delta a}{a}\frac{1}{2}(\mathbf{c}_A + \mathbf{c}_B) \right)\mathbf{q}^* \]
where object A is located on the positive x-axis in the grid frame, bold face letters are quaternions, vectors are promoted to quaternions as \( \mathbf{v} = (0, \vec{v}) \), \( \mathbf{q} \) is the quaternion from the Rotation map, \( a \) is the function \( a(t) \) from the CubicScale map, \( \mathbf{\delta q}\wedge\mathbf{c}_A \equiv (0, \delta\vec{q} \times \vec{c}_A) \), \( \delta\vec{q} \) is the Rotation control error, and \( \delta a\) is the Expansion control error.
Requirements:
|
staticconstexpr |