OMSim
Geant4 for IceCube optical module studies
OMSimENES Class Reference

Class in charge of generating electrons from Electron-electron_Neutrino Elastic Scattering (ENES) nu_e+e -> nu_e+e of supernova antineutrino interactions. More...

Inheritance diagram for OMSimENES:
[legend]
Collaboration diagram for OMSimENES:
[legend]

Detailed Description

Supported by OMSimSNTools, this class generates the corresponding electrons after the ENES and weights the interactions corresponding to the cross section and the generated volume

Public Member Functions

 OMSimENES (G4ParticleGun *)
 Constructor of OMSimENES class. More...
 
- Public Member Functions inherited from SNBaseParticleGenerator
 SNBaseParticleGenerator (G4ParticleGun *)
 
void GeneratePrimaries (G4Event *anEvent)
 

Private Member Functions

void initialiseParticle ()
 
DistributionSampler angularDistribution (G4double Enu)
 Computes the angular distribution for electron scattering based on incident neutrino energy. More...
 
G4double calculateSecondaryParticleEnergy (G4double nu_energy, G4double costheta)
 Computes the electron energy from elastic scattering based on incident neutrino energy and scatter angle. More...
 
G4double totalCrossSection (G4double energy)
 Computes the total cross section for ENES based on incident neutrino energy. More...
 

Additional Inherited Members

- Protected Member Functions inherited from SNBaseParticleGenerator
void initialiseDistribution (int column, int targets)
 
G4double calculateNeutrinoEnergy ()
 
G4ThreeVector calculateMomentumDirection (G4double pNeutrinoEnergy)
 
G4double calculateWeight (G4double pNuEnergy)
 
- Protected Attributes inherited from SNBaseParticleGenerator
G4ParticleGun * m_particleGun
 
OMSimSNTools m_SNToolBox
 
const G4double m_Gf = 1.166e-5 * 1e-6 / (MeV * MeV)
 
const G4double m_Consg = 1.26
 
const G4double m_deltaMass = neutron_mass_c2 - proton_mass_c2
 
const G4double m_massSquaredDifference = (pow(m_deltaMass, 2) - pow(electron_mass_c2, 2)) / 2.
 
G4double m_NrTargets
 
DistributionSampler m_timeDistribution
 
DistributionSampler m_meanEnergyDistribution
 
DistributionSampler m_meanEnergySquaredDistribution
 

Constructor & Destructor Documentation

◆ OMSimENES()

OMSimENES::OMSimENES ( G4ParticleGun *  p_gun)
Parameters
p_gunPointer to the particle p_gun object used for simulation.

Member Function Documentation

◆ angularDistribution()

DistributionSampler OMSimENES::angularDistribution ( G4double  p_energy)
privatevirtual

This function calculates the angular distribution for electrons scattered by neutrinos. The foundation for this computation is taken from the reference: "Carlo Giunti and Chung W.Kim (2007), Fundamentals of Neutrino Physics and Astrophysics, Oxford University Press, Chapter 5, eq. 5.29".

Parameters
p_energyThe energy of the incident neutrino.

Implements SNBaseParticleGenerator.

◆ calculateSecondaryParticleEnergy()

G4double OMSimENES::calculateSecondaryParticleEnergy ( G4double  p_NuEnergy,
G4double  p_cosTheta 
)
privatevirtual

The computation utilizes the formula for the energy of the electron as a function of incident neutrino energy and the scatter angle, based on the formula provided in the reference: "Carlo Giunti and Chung W.Kim (2007), Fundamentals of Neutrino Physics and Astrophysics, Oxford University Press, Chapter 5, eq. 5.27".

Parameters
p_NuEnergyThe energy of the incident neutrino.
p_cosThetaThe cosine of the scattering angle.
Returns
Calculated energy value of the electron post scattering.

Implements SNBaseParticleGenerator.

◆ totalCrossSection()

G4double OMSimENES::totalCrossSection ( G4double  p_energy)
privatevirtual

This function determines the total cross-section for the scattering of neutrinos with electrons given a specific incident neutrino energy. The computational foundation is derived from: "M. Buchkremer, Electroweak Interactions: Neutral currents in neutrino-lepton elastic scattering experiments, Université Catholique de Louvain /CP3, 2011."

Parameters
p_energyThe energy of the incident neutrino.
Returns
Calculated total cross-section value for the given energy.

Implements SNBaseParticleGenerator.


The documentation for this class was generated from the following files: