OMSim
Geant4 for IceCube optical module studies
OMSimDecaysGPS Class Reference

A class for simulating isotope decays inside the pressure vessel and PMT glass.

Collaboration diagram for OMSimDecaysGPS:
[legend]

Public Member Functions

void simulateDecaysInPMTs (G4double pTimeWindow)
 Simulates the decays in the PMTs of the optical module. More...
 
void simulateDecaysInPressureVessel (G4double pTimeWindow)
 Simulates the decays in the pressure vessel of the optical module. More...
 
void setOpticalModule (OMSimOpticalModule *p_opticalModule)
 Set the optical module to be used. More...
 
void setProductionRadius (G4double pProductionRadius)
 
G4String getDecayTerminationNuclide ()
 

Static Public Member Functions

static OMSimDecaysGPSgetInstance ()
 

Private Member Functions

void generalGPS ()
 Configures common GPS commands for the radioactive decays.
 
void configureIsotopeGPS (G4String Isotope, G4String location)
 Configures GPS for the production and decay of an isotope within a specified location. More...
 
std::map< G4String, G4int > calculateNumberOfDecays (G4MaterialPropertiesTable *pMPT, G4double pTimeWindow, G4double pMass)
 Calculates the number of decays for isotopes. More...
 
 OMSimDecaysGPS (const OMSimDecaysGPS &)=delete
 
OMSimDecaysGPSoperator= (const OMSimDecaysGPS &)=delete
 

Private Attributes

std::map< G4String, G4String > m_isotopeCommands
 
std::map< G4String, G4String > m_terminationIsotopes
 
OMSimOpticalModulem_opticalModule
 
G4double m_productionRadius
 
G4String m_nuclideStopName
 

Member Function Documentation

◆ calculateNumberOfDecays()

std::map< G4String, G4int > OMSimDecaysGPS::calculateNumberOfDecays ( G4MaterialPropertiesTable *  p_MPT,
G4double  p_timeWindow,
G4double  p_mass 
)
private
Parameters
p_MPTPointer to the material properties table.
p_timeWindowTime window for decays.
p_massMass of the volume in which decays occur.
Returns
Map of isotopes and their respective number of decays.

◆ configureIsotopeGPS()

void OMSimDecaysGPS::configureIsotopeGPS ( G4String  p_isotope,
G4String  p_volumeName 
)
private

If the daughter of the configured isotope is unstable, it will also decay in the same position as its mother

Parameters
p_isotopeThe isotope which is going to be produced.
p_volumeNameThe volume name where the isotope decays.

◆ setOpticalModule()

void OMSimDecaysGPS::setOpticalModule ( OMSimOpticalModule p_opticalModule)
inline
Parameters
p_opticalModulePointer to the optical module.

◆ simulateDecaysInPMTs()

void OMSimDecaysGPS::simulateDecaysInPMTs ( G4double  p_timeWindow)
Parameters
p_timeWindowThe livetime that should be simulated.

◆ simulateDecaysInPressureVessel()

void OMSimDecaysGPS::simulateDecaysInPressureVessel ( G4double  p_timeWindow)
Parameters
p_timeWindowThe livetime that should be simulated.

Member Data Documentation

◆ m_isotopeCommands

std::map<G4String, G4String> OMSimDecaysGPS::m_isotopeCommands
private
Initial value:
= {
{"U238", "/gps/ion 92 238 0"},
{"U235", "/gps/ion 92 235 0"},
{"Ra226", "/gps/ion 88 226 0"},
{"Ra224", "/gps/ion 88 224 0"},
{"Th232", "/gps/ion 90 232 0"},
{"K40", "/gps/ion 19 40 0"}}

◆ m_terminationIsotopes

std::map<G4String, G4String> OMSimDecaysGPS::m_terminationIsotopes
private
Initial value:
= {
{"U238", "Ra226"},
{"Th232", "Ra224"},
{"Ra226", "none"},
{"Ra224", "none"},
{"U235", "none"},
{"K40", "none"}}

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