SpECTRE
v2025.03.17
|
Compute the curvature source terms for the flux-balanced grey M1 radiation transport. More...
#include <Sources.hpp>
Public Types | |
using | return_tags = implementation defined |
using | argument_tags = implementation defined |
Static Public Member Functions | |
static void | apply (const gsl::not_null< typename Tags::TildeE< Frame::Inertial, NeutrinoSpecies >::type * >... sources_tilde_e, const gsl::not_null< typename Tags::TildeS< Frame::Inertial, NeutrinoSpecies >::type * >... sources_tilde_s, const typename Tags::TildeE< Frame::Inertial, NeutrinoSpecies >::type &... tilde_e, const typename Tags::TildeS< Frame::Inertial, NeutrinoSpecies >::type &... tilde_s, const typename Tags::TildeP< Frame::Inertial, NeutrinoSpecies >::type &... tilde_p, const Scalar< DataVector > &lapse, const tnsr::i< DataVector, 3 > &d_lapse, const tnsr::iJ< DataVector, 3 > &d_shift, const tnsr::ijj< DataVector, 3 > &d_spatial_metric, const tnsr::II< DataVector, 3 > &inv_spatial_metric, const tnsr::ii< DataVector, 3 > &extrinsic_curvature, const tnsr::ii< DataVector, 3 > &spatial_metric, const Scalar< DataVector > &emissivity, const Scalar< DataVector > &absorption_opacity, const Scalar< DataVector > &scattering_opacity, const typename Tags::TildeJ< NeutrinoSpecies >::type &... tilde_j, const typename Tags::TildeHNormal< NeutrinoSpecies >::type &... tilde_h_normal, const typename Tags::TildeHSpatial< Frame::Inertial, NeutrinoSpecies >::type &... tilde_h_spatial, const tnsr::I< DataVector, 3 > &spatial_velocity, const Scalar< DataVector > &lorentz, const Scalar< DataVector > &sqrt_det_spatial_metric) |
Compute the curvature source terms for the flux-balanced grey M1 radiation transport.
A flux-balanced system has the generic form:
where
For the grey M1 formalism (neglecting coupling to the fluid):
where
In the main function, we loop over all neutrino species, and then call the actual implementation of the curvature source terms.