OMSim
Geant4 for IceCube optical module studies
Loading...
Searching...
No Matches
SNBaseParticleGenerator Class Referenceabstract
Inheritance diagram for SNBaseParticleGenerator:
[legend]
Collaboration diagram for SNBaseParticleGenerator:
[legend]

Public Member Functions

 SNBaseParticleGenerator (G4ParticleGun *)
 
void GeneratePrimaries (G4Event *anEvent)
 

Protected Member Functions

void initialiseDistribution (int column, int targets)
 
G4double calculateNeutrinoEnergy ()
 
G4ThreeVector calculateMomentumDirection (G4double pNeutrinoEnergy)
 
G4double calculateWeight (G4double pNuEnergy)
 
virtual void initialiseParticle ()=0
 
virtual DistributionSampler angularDistribution (G4double Enu)=0
 
virtual G4double calculateSecondaryParticleEnergy (G4double nu_energy, G4double costheta)=0
 
virtual G4double totalCrossSection (G4double energy)=0
 

Protected Attributes

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
 

Member Function Documentation

◆ angularDistribution()

virtual DistributionSampler SNBaseParticleGenerator::angularDistribution ( G4double  Enu)
protectedpure virtual

Implemented in OMSimENES, and OMSimIBD.

◆ calculateSecondaryParticleEnergy()

virtual G4double SNBaseParticleGenerator::calculateSecondaryParticleEnergy ( G4double  nu_energy,
G4double  costheta 
)
protectedpure virtual

Implemented in OMSimENES, and OMSimIBD.

◆ totalCrossSection()

virtual G4double SNBaseParticleGenerator::totalCrossSection ( G4double  energy)
protectedpure virtual

Implemented in OMSimENES, and OMSimIBD.


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