SpECTRE
v2024.05.11
|
Struct representing a single Monte Carlo packet of neutrinos. More...
#include <Packet.hpp>
Public Member Functions | |
Packet (const size_t &species_, const double &number_of_neutrinos_, const size_t &index_of_closest_grid_point_, const double &time_, const double &coord_x_, const double &coord_y_, const double &coord_z_, const double &p_upper_t_, const double &p_x_, const double &p_y_, const double &p_z_) | |
Constructor. | |
void | renormalize_momentum (const tnsr::II< DataVector, 3, Frame::Inertial > &inv_spatial_metric, const Scalar< DataVector > &lapse) |
Public Attributes | |
size_t | species |
Species of neutrinos (in the code, just an index used to access the right interaction rates; typically \(0=\nu_e, 1=\nu_a, 2=\nu_x\)) | |
double | number_of_neutrinos |
Number of neutrinos represented by current packet Note that this number is rescaled so that Energy_of_packet = N * Energy_of_neutrinos with the packet energy in G=Msun=c=1 units but the neutrino energy in MeV! | |
size_t | index_of_closest_grid_point |
Index of the closest point on the FD grid. | |
double | time |
Current time. | |
double | momentum_upper_t |
Stores \(p^t\). | |
tnsr::I< double, 3, Frame::ElementLogical > | coordinates |
Coordinates of the packet, in element logical coordinates. | |
tnsr::i< double, 3, Frame::Inertial > | momentum |
Spatial components of the 4-momentum \(p_i\), in Inertial coordinates. | |
Struct representing a single Monte Carlo packet of neutrinos.
void Particles::MonteCarlo::Packet::renormalize_momentum | ( | const tnsr::II< DataVector, 3, Frame::Inertial > & | inv_spatial_metric, |
const Scalar< DataVector > & | lapse | ||
) |
Recalculte \(p^t\) using the fact that the 4-momentum is a null vector
\begin{align} p^t = \sqrt{\gamma^{ij} p_i p_j}/\alpha \end{align}