Namespaces
Constraints.hpp File Reference

Defines functions to calculate the generalized harmonic constraints. More...

#include <cstddef>
#include "DataStructures/Tensor/TypeAliases.hpp"

Go to the source code of this file.

Namespaces

 GeneralizedHarmonic
 Items related to evolving the first-order generalized harmonic system.
 

Functions

template<size_t SpatialDim, typename Frame , typename DataType >
tnsr::iaa< DataType, SpatialDim, Frame > GeneralizedHarmonic::three_index_constraint (const tnsr::iaa< DataType, SpatialDim, Frame > &d_spacetime_metric, const tnsr::iaa< DataType, SpatialDim, Frame > &phi) noexcept
 Computes the generalized-harmonic 3-index constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
void GeneralizedHarmonic::three_index_constraint (gsl::not_null< tnsr::iaa< DataType, SpatialDim, Frame > *> constraint, const tnsr::iaa< DataType, SpatialDim, Frame > &d_spacetime_metric, const tnsr::iaa< DataType, SpatialDim, Frame > &phi) noexcept
 Computes the generalized-harmonic 3-index constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
tnsr::a< DataType, SpatialDim, Frame > GeneralizedHarmonic::gauge_constraint (const tnsr::a< DataType, SpatialDim, Frame > &gauge_function, const tnsr::a< DataType, SpatialDim, Frame > &spacetime_normal_one_form, const tnsr::A< DataType, SpatialDim, Frame > &spacetime_normal_vector, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const tnsr::AA< DataType, SpatialDim, Frame > &inverse_spacetime_metric, const tnsr::aa< DataType, SpatialDim, Frame > &pi, const tnsr::iaa< DataType, SpatialDim, Frame > &phi) noexcept
 Computes the generalized-harmonic gauge constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
void GeneralizedHarmonic::gauge_constraint (gsl::not_null< tnsr::a< DataType, SpatialDim, Frame > *> constraint, const tnsr::a< DataType, SpatialDim, Frame > &gauge_function, const tnsr::a< DataType, SpatialDim, Frame > &spacetime_normal_one_form, const tnsr::A< DataType, SpatialDim, Frame > &spacetime_normal_vector, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const tnsr::AA< DataType, SpatialDim, Frame > &inverse_spacetime_metric, const tnsr::aa< DataType, SpatialDim, Frame > &pi, const tnsr::iaa< DataType, SpatialDim, Frame > &phi) noexcept
 Computes the generalized-harmonic gauge constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
tnsr::ia< DataType, SpatialDim, Frame > GeneralizedHarmonic::two_index_constraint (const tnsr::ia< DataType, SpatialDim, Frame > &d_gauge_function, const tnsr::a< DataType, SpatialDim, Frame > &spacetime_normal_one_form, const tnsr::A< DataType, SpatialDim, Frame > &spacetime_normal_vector, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const tnsr::AA< DataType, SpatialDim, Frame > &inverse_spacetime_metric, const tnsr::aa< DataType, SpatialDim, Frame > &pi, const tnsr::iaa< DataType, SpatialDim, Frame > &phi, const tnsr::iaa< DataType, SpatialDim, Frame > &d_pi, const tnsr::ijaa< DataType, SpatialDim, Frame > &d_phi, const Scalar< DataType > &gamma2, const tnsr::iaa< DataType, SpatialDim, Frame > &three_index_constraint) noexcept
 Computes the generalized-harmonic 2-index constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
void GeneralizedHarmonic::two_index_constraint (gsl::not_null< tnsr::ia< DataType, SpatialDim, Frame > *> constraint, const tnsr::ia< DataType, SpatialDim, Frame > &d_gauge_function, const tnsr::a< DataType, SpatialDim, Frame > &spacetime_normal_one_form, const tnsr::A< DataType, SpatialDim, Frame > &spacetime_normal_vector, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const tnsr::AA< DataType, SpatialDim, Frame > &inverse_spacetime_metric, const tnsr::aa< DataType, SpatialDim, Frame > &pi, const tnsr::iaa< DataType, SpatialDim, Frame > &phi, const tnsr::iaa< DataType, SpatialDim, Frame > &d_pi, const tnsr::ijaa< DataType, SpatialDim, Frame > &d_phi, const Scalar< DataType > &gamma2, const tnsr::iaa< DataType, SpatialDim, Frame > &three_index_constraint) noexcept
 Computes the generalized-harmonic 2-index constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
tnsr::iaa< DataType, SpatialDim, Frame > GeneralizedHarmonic::four_index_constraint (const tnsr::ijaa< DataType, SpatialDim, Frame > &d_phi) noexcept
 Computes the generalized-harmonic 4-index constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
void GeneralizedHarmonic::four_index_constraint (gsl::not_null< tnsr::iaa< DataType, SpatialDim, Frame > *> constraint, const tnsr::ijaa< DataType, SpatialDim, Frame > &d_phi) noexcept
 Computes the generalized-harmonic 4-index constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
tnsr::a< DataType, SpatialDim, Frame > GeneralizedHarmonic::f_constraint (const tnsr::a< DataType, SpatialDim, Frame > &gauge_function, const tnsr::ia< DataType, SpatialDim, Frame > &d_gauge_function, const tnsr::a< DataType, SpatialDim, Frame > &spacetime_normal_one_form, const tnsr::A< DataType, SpatialDim, Frame > &spacetime_normal_vector, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const tnsr::AA< DataType, SpatialDim, Frame > &inverse_spacetime_metric, const tnsr::aa< DataType, SpatialDim, Frame > &pi, const tnsr::iaa< DataType, SpatialDim, Frame > &phi, const tnsr::iaa< DataType, SpatialDim, Frame > &d_pi, const tnsr::ijaa< DataType, SpatialDim, Frame > &d_phi, const Scalar< DataType > &gamma2, const tnsr::iaa< DataType, SpatialDim, Frame > &three_index_constraint) noexcept
 Computes the generalized-harmonic F constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
void GeneralizedHarmonic::f_constraint (gsl::not_null< tnsr::a< DataType, SpatialDim, Frame > *> constraint, const tnsr::a< DataType, SpatialDim, Frame > &gauge_function, const tnsr::ia< DataType, SpatialDim, Frame > &d_gauge_function, const tnsr::a< DataType, SpatialDim, Frame > &spacetime_normal_one_form, const tnsr::A< DataType, SpatialDim, Frame > &spacetime_normal_vector, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const tnsr::AA< DataType, SpatialDim, Frame > &inverse_spacetime_metric, const tnsr::aa< DataType, SpatialDim, Frame > &pi, const tnsr::iaa< DataType, SpatialDim, Frame > &phi, const tnsr::iaa< DataType, SpatialDim, Frame > &d_pi, const tnsr::ijaa< DataType, SpatialDim, Frame > &d_phi, const Scalar< DataType > &gamma2, const tnsr::iaa< DataType, SpatialDim, Frame > &three_index_constraint) noexcept
 Computes the generalized-harmonic F constraint. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
Scalar< DataType > GeneralizedHarmonic::constraint_energy (const tnsr::a< DataType, SpatialDim, Frame > &gauge_constraint, const tnsr::a< DataType, SpatialDim, Frame > &f_constraint, const tnsr::ia< DataType, SpatialDim, Frame > &two_index_constraint, const tnsr::iaa< DataType, SpatialDim, Frame > &three_index_constraint, const tnsr::iaa< DataType, SpatialDim, Frame > &four_index_constraint, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const Scalar< DataType > &spatial_metric_determinant, double gauge_constraint_multiplier=1.0, double two_index_constraint_multiplier=1.0, double three_index_constraint_multiplier=1.0, double four_index_constraint_multiplier=1.0) noexcept
 Computes the generalized-harmonic (unnormalized) constraint energy. More...
 
template<size_t SpatialDim, typename Frame , typename DataType >
void GeneralizedHarmonic::constraint_energy (gsl::not_null< Scalar< DataType > *> energy, const tnsr::a< DataType, SpatialDim, Frame > &gauge_constraint, const tnsr::a< DataType, SpatialDim, Frame > &f_constraint, const tnsr::ia< DataType, SpatialDim, Frame > &two_index_constraint, const tnsr::iaa< DataType, SpatialDim, Frame > &three_index_constraint, const tnsr::iaa< DataType, SpatialDim, Frame > &four_index_constraint, const tnsr::II< DataType, SpatialDim, Frame > &inverse_spatial_metric, const Scalar< DataType > &spatial_metric_determinant, double gauge_constraint_multiplier, double two_index_constraint_multiplier, double three_index_constraint_multiplier, double four_index_constraint_multiplier) noexcept
 Computes the generalized-harmonic (unnormalized) constraint energy. More...
 

Detailed Description

Defines functions to calculate the generalized harmonic constraints.