SpECTRE
v2025.03.17
|
Implementations for variables that analytic-data classes can share. More...
#include <CommonVariables.hpp>
Public Member Functions | |
CommonVariables (const CommonVariables &)=default | |
CommonVariables & | operator= (const CommonVariables &)=default |
CommonVariables (CommonVariables &&)=default | |
CommonVariables & | operator= (CommonVariables &&)=default |
CommonVariables (std::optional< std::reference_wrapper< const Mesh< Dim > > > local_mesh, std::optional< std::reference_wrapper< const InverseJacobian< DataType, Dim, Frame::ElementLogical, Frame::Inertial > > > local_inv_jacobian) | |
virtual void | operator() (gsl::not_null< tnsr::ii< DataType, Dim > * > conformal_metric, gsl::not_null< Cache * > cache, Tags::ConformalMetric< DataType, Dim, Frame::Inertial >) const =0 |
virtual void | operator() (gsl::not_null< Scalar< DataType > * > extrinsic_curvature_trace, gsl::not_null< Cache * > cache, gr::Tags::TraceExtrinsicCurvature< DataType >) const =0 |
virtual void | operator() (gsl::not_null< Scalar< DataType > * > dt_extrinsic_curvature_trace, gsl::not_null< Cache * > cache, ::Tags::dt< gr::Tags::TraceExtrinsicCurvature< DataType > >) const =0 |
virtual void | operator() (gsl::not_null< tnsr::I< DataType, Dim > * > shift_background, gsl::not_null< Cache * > cache, Tags::ShiftBackground< DataType, Dim, Frame::Inertial >) const =0 |
virtual void | operator() (gsl::not_null< tnsr::II< DataType, Dim > * > longitudinal_shift_background, gsl::not_null< Cache * > cache, Tags::LongitudinalShiftBackgroundMinusDtConformalMetric< DataType, Dim, Frame::Inertial >) const =0 |
virtual void | operator() (gsl::not_null< tnsr::ijj< DataType, Dim > * > deriv_conformal_metric, gsl::not_null< Cache * > cache, ::Tags::deriv< Tags::ConformalMetric< DataType, Dim, Frame::Inertial >, tmpl::size_t< Dim >, Frame::Inertial >) const =0 |
virtual void | operator() (gsl::not_null< tnsr::II< DataType, Dim > * > inv_conformal_metric, gsl::not_null< Cache * > cache, Tags::InverseConformalMetric< DataType, Dim, Frame::Inertial >) const |
virtual void | operator() (gsl::not_null< tnsr::ijj< DataType, Dim > * > conformal_christoffel_first_kind, gsl::not_null< Cache * > cache, Tags::ConformalChristoffelFirstKind< DataType, Dim, Frame::Inertial >) const |
virtual void | operator() (gsl::not_null< tnsr::Ijj< DataType, Dim > * > conformal_christoffel_second_kind, gsl::not_null< Cache * > cache, Tags::ConformalChristoffelSecondKind< DataType, Dim, Frame::Inertial >) const |
virtual void | operator() (gsl::not_null< tnsr::i< DataType, Dim > * > conformal_christoffel_contracted, gsl::not_null< Cache * > cache, Tags::ConformalChristoffelContracted< DataType, Dim, Frame::Inertial >) const |
void | operator() (gsl::not_null< Scalar< DataType > * > fixed_source_for_hamiltonian_constraint, gsl::not_null< Cache * > cache, ::Tags::FixedSource< Tags::ConformalFactorMinusOne< DataType > >) const |
void | operator() (gsl::not_null< Scalar< DataType > * > fixed_source_for_lapse_equation, gsl::not_null< Cache * > cache, ::Tags::FixedSource< Tags::LapseTimesConformalFactorMinusOne< DataType > >) const |
void | operator() (gsl::not_null< tnsr::I< DataType, 3 > * > fixed_source_momentum_constraint, gsl::not_null< Cache * > cache, ::Tags::FixedSource< Tags::ShiftExcess< DataType, 3, Frame::Inertial > >) const |
virtual void | operator() (gsl::not_null< tnsr::iJkk< DataType, Dim > * > deriv_conformal_christoffel_second_kind, gsl::not_null< Cache * > cache, ::Tags::deriv< Tags::ConformalChristoffelSecondKind< DataType, Dim, Frame::Inertial >, tmpl::size_t< Dim >, Frame::Inertial >) const |
virtual void | operator() (gsl::not_null< tnsr::ii< DataType, Dim > * > conformal_ricci_tensor, gsl::not_null< Cache * > cache, Tags::ConformalRicciTensor< DataType, Dim, Frame::Inertial >) const |
virtual void | operator() (gsl::not_null< Scalar< DataType > * > conformal_ricci_scalar, gsl::not_null< Cache * > cache, Tags::ConformalRicciScalar< DataType >) const |
virtual void | operator() (gsl::not_null< tnsr::i< DataType, Dim > * > deriv_extrinsic_curvature_trace, gsl::not_null< Cache * > cache, ::Tags::deriv< gr::Tags::TraceExtrinsicCurvature< DataType >, tmpl::size_t< Dim >, Frame::Inertial >) const |
virtual void | operator() (gsl::not_null< tnsr::I< DataType, Dim > * > div_longitudinal_shift_background, gsl::not_null< Cache * > cache, ::Tags::div< Tags::LongitudinalShiftBackgroundMinusDtConformalMetric< DataType, Dim, Frame::Inertial > >) const |
Public Attributes | |
std::optional< std::reference_wrapper< const Mesh< Dim > > > | mesh |
std::optional< std::reference_wrapper< const InverseJacobian< DataType, Dim, Frame::ElementLogical, Frame::Inertial > > > | inv_jacobian |
Static Public Attributes | |
static constexpr size_t | Dim = 3 |
Implementations for variables that analytic-data classes can share.
Analytic-data classes can derive their variable computers from this class to inherit implementations for the common_tags
. Note that some variables require a numeric differentiation. To compute those variables, a mesh
and an inv_jacobian
must be passed to the constructor. The mesh
and the inv_jacobian
can be set to std::nullopt
if no variables with numeric derivatives are requested.
DataType | double or DataVector . Must be DataVector if variables with numeric derivatives are requested. |
Cache | The CachedTempBuffer used by the analytic-data class. |