SpECTRE  v2024.05.11
Particles::MonteCarlo::Packet Struct Reference

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::ElementLogicalcoordinates
 Coordinates of the packet, in element logical coordinates.
 
tnsr::i< double, 3, Frame::Inertialmomentum
 Spatial components of the 4-momentum \(p_i\), in Inertial coordinates.
 

Detailed Description

Struct representing a single Monte Carlo packet of neutrinos.

Member Function Documentation

◆ renormalize_momentum()

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}


The documentation for this struct was generated from the following file: