SpECTRE  v2026.06.09
Loading...
Searching...
No Matches
ScalarTensor::BoundaryCorrections::ProductOfCorrections< DerivedGhCorrection, DerivedScalarCorrection, tmpl::list< GhDgPackagedFieldTags... >, tmpl::list< ScalarDgPackagedFieldTags... >, tmpl::list< GhDgPackageDataTemporaryTags... >, tmpl::list< ScalarDgPackageDataTemporaryTags... >, tmpl::list< GhDgPackageDataVolumeTags... >, tmpl::list< ScalarDgPackageDataVolumeTags... >, tmpl::list< GhDgBoundaryTermsVolumeTags... >, tmpl::list< ScalarDgBoundaryTermsVolumeTags... > > Class Template Referencefinal

Classes

struct  GhCorrection
struct  ScalarCorrection

Public Types

using dg_package_field_tags
using dg_package_data_temporary_tags
using dg_package_data_primitive_tags = tmpl::list<>
using dg_package_data_volume_tags
using dg_boundary_terms_volume_tags
using options = tmpl::list<GhCorrection, ScalarCorrection>

Public Member Functions

 ProductOfCorrections (DerivedGhCorrection gh_correction, DerivedScalarCorrection scalar_correction)
 ProductOfCorrections (const ProductOfCorrections &)=default
ProductOfCorrectionsoperator= (const ProductOfCorrections &)=default
 ProductOfCorrections (ProductOfCorrections &&)=default
ProductOfCorrectionsoperator= (ProductOfCorrections &&)=default
void pup (PUP::er &p) override
std::unique_ptr< BoundaryCorrection > get_clone () const override
double dg_package_data (const gsl::not_null< typename GhDgPackagedFieldTags::type * >... gh_packaged_fields, const gsl::not_null< typename ScalarDgPackagedFieldTags::type * >... scalar_packaged_fields, const tnsr::aa< DataVector, dim, Frame::Inertial > &spacetime_metric, const tnsr::aa< DataVector, dim, Frame::Inertial > &pi, const tnsr::iaa< DataVector, dim, Frame::Inertial > &phi, const Scalar< DataVector > &psi_scalar, const Scalar< DataVector > &pi_scalar, const tnsr::i< DataVector, dim, Frame::Inertial > &phi_scalar, const typename GhDgPackageDataTemporaryTags::type &... gh_temporaries, const typename ScalarDgPackageDataTemporaryTags::type &... scalar_temporaries, const tnsr::i< DataVector, dim, Frame::Inertial > &normal_covector, const tnsr::I< DataVector, dim, Frame::Inertial > &normal_vector, const std::optional< tnsr::I< DataVector, dim, Frame::Inertial > > &mesh_velocity, const std::optional< Scalar< DataVector > > &normal_dot_mesh_velocity, const typename GhDgPackageDataVolumeTags::type &... gh_volume_quantities, const typename ScalarDgPackageDataVolumeTags::type &... scalar_volume_quantities) const
void dg_boundary_terms (const gsl::not_null< tnsr::aa< DataVector, dim, Frame::Inertial > * > boundary_correction_spacetime_metric, const gsl::not_null< tnsr::aa< DataVector, dim, Frame::Inertial > * > boundary_correction_pi, const gsl::not_null< tnsr::iaa< DataVector, dim, Frame::Inertial > * > boundary_correction_phi, const gsl::not_null< Scalar< DataVector > * > psi_boundary_correction_scalar, const gsl::not_null< Scalar< DataVector > * > pi_boundary_correction_scalar, const gsl::not_null< tnsr::i< DataVector, dim, Frame::Inertial > * > phi_boundary_correction_scalar, const typename GhDgPackagedFieldTags::type &... gh_packaged_fields_int, const typename ScalarDgPackagedFieldTags::type &... scalar_packaged_fields_int, const typename GhDgPackagedFieldTags::type &... gh_packaged_fields_ext, const typename ScalarDgPackagedFieldTags::type &... scalar_packaged_fields_ext, const dg::Formulation dg_formulation) const
const DerivedGhCorrection & gh_correction () const
const DerivedScalarCorrection & scalar_correction () const
Public Member Functions inherited from evolution::BoundaryCorrection
 BoundaryCorrection (const BoundaryCorrection &)=default
BoundaryCorrectionoperator= (const BoundaryCorrection &)=default
 BoundaryCorrection (BoundaryCorrection &&)=default
BoundaryCorrectionoperator= (BoundaryCorrection &&)=default
 BoundaryCorrection (CkMigrateMessage *msg)

Static Public Member Functions

static std::string name ()

Static Public Attributes

static constexpr size_t dim = 3
static constexpr Options::String help

Member Typedef Documentation

◆ dg_boundary_terms_volume_tags

template<typename DerivedGhCorrection, typename DerivedScalarCorrection, typename... GhDgPackagedFieldTags, typename... ScalarDgPackagedFieldTags, typename... GhDgPackageDataTemporaryTags, typename... ScalarDgPackageDataTemporaryTags, typename... GhDgPackageDataVolumeTags, typename... ScalarDgPackageDataVolumeTags, typename... GhDgBoundaryTermsVolumeTags, typename... ScalarDgBoundaryTermsVolumeTags>
using ScalarTensor::BoundaryCorrections::ProductOfCorrections< DerivedGhCorrection, DerivedScalarCorrection, tmpl::list< GhDgPackagedFieldTags... >, tmpl::list< ScalarDgPackagedFieldTags... >, tmpl::list< GhDgPackageDataTemporaryTags... >, tmpl::list< ScalarDgPackageDataTemporaryTags... >, tmpl::list< GhDgPackageDataVolumeTags... >, tmpl::list< ScalarDgPackageDataVolumeTags... >, tmpl::list< GhDgBoundaryTermsVolumeTags... >, tmpl::list< ScalarDgBoundaryTermsVolumeTags... > >::dg_boundary_terms_volume_tags
Initial value:
tmpl::list<GhDgBoundaryTermsVolumeTags...,
ScalarDgBoundaryTermsVolumeTags...>

◆ dg_package_data_temporary_tags

template<typename DerivedGhCorrection, typename DerivedScalarCorrection, typename... GhDgPackagedFieldTags, typename... ScalarDgPackagedFieldTags, typename... GhDgPackageDataTemporaryTags, typename... ScalarDgPackageDataTemporaryTags, typename... GhDgPackageDataVolumeTags, typename... ScalarDgPackageDataVolumeTags, typename... GhDgBoundaryTermsVolumeTags, typename... ScalarDgBoundaryTermsVolumeTags>
using ScalarTensor::BoundaryCorrections::ProductOfCorrections< DerivedGhCorrection, DerivedScalarCorrection, tmpl::list< GhDgPackagedFieldTags... >, tmpl::list< ScalarDgPackagedFieldTags... >, tmpl::list< GhDgPackageDataTemporaryTags... >, tmpl::list< ScalarDgPackageDataTemporaryTags... >, tmpl::list< GhDgPackageDataVolumeTags... >, tmpl::list< ScalarDgPackageDataVolumeTags... >, tmpl::list< GhDgBoundaryTermsVolumeTags... >, tmpl::list< ScalarDgBoundaryTermsVolumeTags... > >::dg_package_data_temporary_tags
Initial value:
tmpl::list<GhDgPackageDataTemporaryTags...,
ScalarDgPackageDataTemporaryTags...>

◆ dg_package_data_volume_tags

template<typename DerivedGhCorrection, typename DerivedScalarCorrection, typename... GhDgPackagedFieldTags, typename... ScalarDgPackagedFieldTags, typename... GhDgPackageDataTemporaryTags, typename... ScalarDgPackageDataTemporaryTags, typename... GhDgPackageDataVolumeTags, typename... ScalarDgPackageDataVolumeTags, typename... GhDgBoundaryTermsVolumeTags, typename... ScalarDgBoundaryTermsVolumeTags>
using ScalarTensor::BoundaryCorrections::ProductOfCorrections< DerivedGhCorrection, DerivedScalarCorrection, tmpl::list< GhDgPackagedFieldTags... >, tmpl::list< ScalarDgPackagedFieldTags... >, tmpl::list< GhDgPackageDataTemporaryTags... >, tmpl::list< ScalarDgPackageDataTemporaryTags... >, tmpl::list< GhDgPackageDataVolumeTags... >, tmpl::list< ScalarDgPackageDataVolumeTags... >, tmpl::list< GhDgBoundaryTermsVolumeTags... >, tmpl::list< ScalarDgBoundaryTermsVolumeTags... > >::dg_package_data_volume_tags
Initial value:
tmpl::list<GhDgPackageDataVolumeTags...,
ScalarDgPackageDataVolumeTags...>

◆ dg_package_field_tags

template<typename DerivedGhCorrection, typename DerivedScalarCorrection, typename... GhDgPackagedFieldTags, typename... ScalarDgPackagedFieldTags, typename... GhDgPackageDataTemporaryTags, typename... ScalarDgPackageDataTemporaryTags, typename... GhDgPackageDataVolumeTags, typename... ScalarDgPackageDataVolumeTags, typename... GhDgBoundaryTermsVolumeTags, typename... ScalarDgBoundaryTermsVolumeTags>
using ScalarTensor::BoundaryCorrections::ProductOfCorrections< DerivedGhCorrection, DerivedScalarCorrection, tmpl::list< GhDgPackagedFieldTags... >, tmpl::list< ScalarDgPackagedFieldTags... >, tmpl::list< GhDgPackageDataTemporaryTags... >, tmpl::list< ScalarDgPackageDataTemporaryTags... >, tmpl::list< GhDgPackageDataVolumeTags... >, tmpl::list< ScalarDgPackageDataVolumeTags... >, tmpl::list< GhDgBoundaryTermsVolumeTags... >, tmpl::list< ScalarDgBoundaryTermsVolumeTags... > >::dg_package_field_tags
Initial value:
tmpl::list<GhDgPackagedFieldTags..., ScalarDgPackagedFieldTags...>

Member Function Documentation

◆ get_clone()

template<typename DerivedGhCorrection, typename DerivedScalarCorrection, typename... GhDgPackagedFieldTags, typename... ScalarDgPackagedFieldTags, typename... GhDgPackageDataTemporaryTags, typename... ScalarDgPackageDataTemporaryTags, typename... GhDgPackageDataVolumeTags, typename... ScalarDgPackageDataVolumeTags, typename... GhDgBoundaryTermsVolumeTags, typename... ScalarDgBoundaryTermsVolumeTags>
std::unique_ptr< BoundaryCorrection > ScalarTensor::BoundaryCorrections::ProductOfCorrections< DerivedGhCorrection, DerivedScalarCorrection, tmpl::list< GhDgPackagedFieldTags... >, tmpl::list< ScalarDgPackagedFieldTags... >, tmpl::list< GhDgPackageDataTemporaryTags... >, tmpl::list< ScalarDgPackageDataTemporaryTags... >, tmpl::list< GhDgPackageDataVolumeTags... >, tmpl::list< ScalarDgPackageDataVolumeTags... >, tmpl::list< GhDgBoundaryTermsVolumeTags... >, tmpl::list< ScalarDgBoundaryTermsVolumeTags... > >::get_clone ( ) const
inlineoverridevirtual

Member Data Documentation

◆ help

template<typename DerivedGhCorrection, typename DerivedScalarCorrection, typename... GhDgPackagedFieldTags, typename... ScalarDgPackagedFieldTags, typename... GhDgPackageDataTemporaryTags, typename... ScalarDgPackageDataTemporaryTags, typename... GhDgPackageDataVolumeTags, typename... ScalarDgPackageDataVolumeTags, typename... GhDgBoundaryTermsVolumeTags, typename... ScalarDgBoundaryTermsVolumeTags>
Options::String ScalarTensor::BoundaryCorrections::ProductOfCorrections< DerivedGhCorrection, DerivedScalarCorrection, tmpl::list< GhDgPackagedFieldTags... >, tmpl::list< ScalarDgPackagedFieldTags... >, tmpl::list< GhDgPackageDataTemporaryTags... >, tmpl::list< ScalarDgPackageDataTemporaryTags... >, tmpl::list< GhDgPackageDataVolumeTags... >, tmpl::list< ScalarDgPackageDataVolumeTags... >, tmpl::list< GhDgBoundaryTermsVolumeTags... >, tmpl::list< ScalarDgBoundaryTermsVolumeTags... > >::help
staticconstexpr
Initial value:
= {
"Direct product of a GH and CurvedScalarWave boundary correction. "
"See the documentation for the two individual boundary corrections for "
"further details."}

The documentation for this class was generated from the following file:
  • src/Evolution/Systems/ScalarTensor/BoundaryCorrections/ProductOfCorrections.hpp