SpECTRE
v2024.09.29
|
Computes the final acceleration of the particle at this time step. More...
#include <UpdateAcceleration.hpp>
Public Types | |
using | variables_tag = ::Tags::Variables< tmpl::list< Tags::EvolvedPosition< Dim >, Tags::EvolvedVelocity< Dim > > > |
using | dt_variables_tag = db::add_tag_prefix<::Tags::dt, variables_tag > |
using | return_tags = tmpl::list< dt_variables_tag > |
using | argument_tags = tmpl::list< Tags::ParticlePositionVelocity< Dim >, Tags::BackgroundQuantities< Dim >, Tags::GeodesicAcceleration< Dim >, Stf::Tags::StfTensor<::Tags::dt< Tags::PsiWorldtube >, 0, Dim, Frame::Inertial >, Stf::Tags::StfTensor< Tags::PsiWorldtube, 1, Dim, Frame::Inertial >, Tags::Charge, Tags::Mass, Tags::MaxIterations > |
Static Public Member Functions | |
static void | apply (gsl::not_null< Variables< tmpl::list<::Tags::dt< Tags::EvolvedPosition< Dim > >, ::Tags::dt< Tags::EvolvedVelocity< Dim > > > > * > dt_evolved_vars, const std::array< tnsr::I< double, Dim >, 2 > &pos_vel, const tuples::TaggedTuple< gr::Tags::SpacetimeMetric< double, Dim >, gr::Tags::InverseSpacetimeMetric< double, Dim >, gr::Tags::SpacetimeChristoffelSecondKind< double, Dim >, gr::Tags::TraceSpacetimeChristoffelSecondKind< double, Dim >, Tags::TimeDilationFactor > &background, const tnsr::I< double, Dim, Frame::Inertial > &geodesic_acc, const Scalar< double > &dt_psi_monopole, const tnsr::i< double, Dim, Frame::Inertial > &psi_dipole, double charge, std::optional< double > mass, size_t max_iterations) |
Static Public Attributes | |
static constexpr size_t | Dim = 3 |
Computes the final acceleration of the particle at this time step.
If max_iterations
is 0, the acceleration will simply be geodesic, see gr::geodesic_acceleration
. Otherwise, the acceleration due to the scalar self-force is additionally applied to it, see self_force_acceleration
. This mutator is run on the worldtube singleton chare.