Neutrino Losses
We model thermal neutrino losses (plasma, photo-, pair-, recombination, and Bremsstrahlung) using the method described in [40]. This neutrino loss term is included in all of the reaction networks by default, and modifies the energy equation to have the form (for Strang splitting):
where \(\epsilon_\nu\) are the thermal neutrino losses.
Note
Thermal neutrino losses can be disabled at compile time by setting the make
variable USE_NEUTRINOS = FALSE
.
The interface for the neutrino loss function is:
template <int do_derivatives>
AMREX_GPU_HOST_DEVICE AMREX_INLINE
void sneut5(const number_t& temp, const amrex::Real den,
const number_t& abar, const number_t& zbar,
amrex::Real& pair, amrex::Real& phot,
amrex::Real& plas, amrex::Real& brem)
Here, the template parameter, do_derivatives
, can be used to disable the code
that computes the derivatives of the neutrino loss, for example, if a numerical Jacobian
is used. The output is
snu
: \(\epsilon_\nu\), the neutrino loss in erg/g/sdsnudt
: \(d\epsilon_\nu/dT\)dsnudd
: \(d\epsilon_\nu/d\rho\)dsnuda
: \(d\epsilon_\nu/d\bar{A}\)dsnudz
: \(d\epsilon_\nu/d\bar{Z}\)pair
: contribution from pair neutrino loss in erg/g/sphot
: contribution from photo-neutrino loss in erg/g/splas
: contribution from plasma neutrino loss in erg/g/sbrem
: contribution from Bremsstrahlung neutrino loss in erg/g/s
Additionally, a second method is provided to compute the neutrino losses based on the simplified approximations in [41].
The interface for the Kippenhahn neutrino loss function is:
template <int do_derivatives>
AMREX_GPU_HOST_DEVICE AMREX_INLINE
void kipp(const amrex::Real& temp, const amrex::Real& rho, const amrex::Real& abar,
const amrex::Real& zbar, amrex::Real& snu, amrex::Real& dsnudt,
amrex::Real& dsnudrho, amrex::Real& dsnudz, amrex::Real& dsnuda,
amrex::Real& pair, amrex::Real& phot, amrex::Real& plas, amrex::Real& brem)
To use this method, set the make variable NEUTRINO_METHOD=kipp
during compilation.
Output is the same as for the previous method.
Note
By default, we do not include the recombination terms when calculating the total losses since its effect is negligible.
This is controlled by the include_recomb
parameter defined in Microphysics/neutrinos/_parameters
.
To include the recombination terms, set neutrino_cooling.include_recomb = 1
in the inputs file.