Project sim-services

Invoke with: import icecube.sim_services

C++ I3Modules

I3CombineMCPE

"I3CombineMCPE" (C++ I3Module)

Combines several I3MCPEHitSeriesMaps into one.

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param InputResponses:

Default = [], Vector of names of the input response serieses to combine (no DEFAULT)

Param OutputResponse:

Default = 'CombinedMCPEs', Name of the output response series

I3DownsampleMCPE

"I3DownsampleMCPE" (C++ I3Module)

Randomly downsample MCPEs from one collection to another.

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param InputName:

Default = 'I3MCPESeriesMap', Name of the MCPE set to read in and downsample

Param OutputName:

Default = 'DownsampledMCPEs', Name of the output MCPE series

Param RandomService:

Default = None, A random number generating service (derived from I3RandomService). The default is to get it from the context.

Param SampleFrac:

Default = 0.95, Fraction of MCPEs to accept

I3InIceCORSIKATrimmer

"I3InIceCORSIKATrimmer" (C++ I3Module)

Remove muons that have no chance of reaching the detector.

Param FilterMode:

Default = True, Drop events with no InIce particles

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param MinEnergy:

Default = 273.0, Minimum surface energy of muons

Param RemoveNeutrinos:

Default = False, Remove neutrinos from the bundle

I3MCEventHeaderGenerator

"I3MCEventHeaderGenerator" (C++ I3Module)

<undocumented>

Param DAQTime:

Default = 0, DAQTime of the run in 1/10 of ns

Param EventID:

Default = 0, Event ID

Param IncrementEventID:

Default = False, Increment Event ID (default = false)

Param MJD:

Default = -2147483648, Modified Julian Date

Param MJDNanoSeconds:

Default = 0.0, Number of nanoseconds after the start of the second given in MJDSeconds.

Param MJDSeconds:

Default = 0, Number of seconds after the start of the MJD.

Param RunNumber:

Default = 0, Run Number

Param TimeIncrement:

Default = 0.0, Time increment between frames

Param Year:

Default = 2006, Year of the run

I3MCPEMerger

"I3MCPEMerger" (C++ I3Module)

<undocumented>

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param Input:

Default = 'I3MCPESeriesMap', Name of the frame object to be compressed

Param Output:

Default = 'I3MCPESeriesMap', Name of the compressed frame object

Param TimeWindow:

Default = 0.2, Time window to merge adjacent hits in

I3MCPESort

"I3MCPESort" (C++ I3Module)

A module that sorts the I3MCPE series.

Param PEMapName:

Default = 'I3MCPESeriesMap', The name of the I3MCPESeriesMap to process.

I3MCPEtoI3MCHitConverter

"I3MCPEtoI3MCHitConverter" (C++ I3Module)

Converts an I3MCPESeriesMap to an I3MCHitSeriesMap.

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param InputResponse:

Default = 'I3MCPESeriesMap', Vector of names of the input response serieses to combine.

Param OutputResponse:

Default = 'I3MCHitSeriesMap', Name of the output response series

I3MCTreeHybridSimulationSplitter

"I3MCTreeHybridSimulationSplitter" (C++ I3Module)

Splits an I3MCTree into two trees. One tree will have all tracks set to shape “Dark”, the other one will have everything else set to “Dark”.

Param InputMCTreeName:

Default = 'I3MCTree', The input I3MCTree.

Param OutputMCTreeNameCascades:

Default = 'I3MCTreeCascades', A copy of the input MCTree with all tracks set to “Dark” will be stored here.

Param OutputMCTreeNameTracks:

Default = 'I3MCTreeTracks', A copy of the input MCTree with all cascades set to “Dark” will be stored here.

I3ModifyEventID

"I3ModifyEventID" (C++ I3Module)

<undocumented>

Param DAQTime:

Default = 0, DAQTime of the run in 1/10 of ns

Param MJD:

Default = -2147483648, Modified Julian Date

Param MJDNanoSeconds:

Default = 0.0, Number of nanoseconds after the start of the MJD.

Param MJDSeconds:

Default = 0, Number of seconds after the start of the MJD.

Param ModifyEventId:

Default = False, Flag: Modify event ID

Param ModifyRunId:

Default = False, Flag: Modify run ID

Param ModifyTime:

Default = False, Flag: Modify event time

Param RunNumber:

Default = 0, Run Number

Param StartEventID:

Default = 0, Starting Event ID

Param SubRunNumber:

Default = 0, SubRun Number

Param Year:

Default = 2006, Year of the run

I3PhotonPropagationClientModule

"I3PhotonPropagationClientModule" (C++ I3Module)

<undocumented>

Param ClosestDOMDistanceCutoff:

Default = 300.0, Do not even start light from sources that do not have any DOMs closer to to them than this distance.

Param CosmicEventGenerator:

Default = None, Instance of I3CosmicEventGenerator to

Param FlasherPulseSeriesName:

Default = '', Name of the I3FlasherPulseSeries frame object. Flasher pulses will be read from this object. Set this to the empty string to disable flashers.

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param IgnoreMuons:

Default = False, If set to True, muons will not be propagated.

Param IgnorePhotonPropagatorErrors:

Default = False, Continue processing frames even after the photon propagator encounters an error

Param IgnoreSubdetectors:

Default = [], Ignore all OMKeys with these subdetector names

Param MCPEGenerator:

Default = None, Instance of I3CLSimPhotonToMCPEConverter

Param MCPESeriesMapName:

Default = '', Name of the I3MCPESeriesMap frame object that will be written to the frame.

Param MCTreeName:

Default = 'I3MCTree', Name of the I3MCTree frame object. All particles except neutrinos will be read from this tree.

Param OMKeyMaskName:

Default = '', Name of a I3VectorOMKey or I3VectorModuleKey with masked DOMs. DOMs in this list will not record I3Photons.

Param PhotonHistoryEntries:

Default = 0, Sets the number of scattering step positions that are saved for a photon hitting a DOM. The last N photons are saved if there are more scattering points than available entries.

Param PhotonSeriesMapName:

Default = 'PropagatedPhotons', Name of the I3CLSimPhotonSeriesMap frame object that will be written to the frame.

Param ServerAddress:

Default = '', Address of an I3PhotonPropagationServer instance

Param StatisticsName:

Default = '', Collect statistics in this frame object (e.g. number of photons generated or reaching the DOMs)

Param StepGenerator:

Default = None, Instance of I3LightSourceToStepConverterAsync

Param WorkOnTheseStops:

Default = [icetray.I3Frame.DAQ], Work on MCTrees found in the stream types (“stops”) specified in this list

I3PhotonToMCPEConverter

"I3PhotonToMCPEConverter" (C++ I3Module)

This module reads I3PhotonSeriesMaps generated by CLSim, applies (D)OM acceptances (wavelength&angular) to the photons and stores the results in an I3MCPESeriesMap.

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param InputPhotonSeriesMapName:

Default = 'PropagatedPhotons', Name of the input I3PhotonSeriesMap frame object.

Param MCPEGenerator:

Default = None, Instance of I3CLSimPhotonToMCPEConverter

Param MergeHits:

Default = False, Merge photoelectrons which are very close in time in the output.

Param OutputMCPESeriesMapName:

Default = 'MCPESeriesMap', Name of the output I3MCPESeries frame object.

I3PrimaryInjector

"I3PrimaryInjector" (C++ I3Module)

Module to generate primaries for Dynamic Stack CORSIKA.

Param CylinderHeight:

Default = 1200.0, Height of the cylinder that primaries are produced on

Param CylinderOrigin:

Default = I3Position(0,0,0), Origin of the cylinder that primaries are produced on

Param CylinderRadius:

Default = 600.0, Radius of the cylinder that primaries are produced on

Param EnergySpectra:

Default = [], List of Spectra to use for generating the energy spectra

Param MaxZenith:

Default = 1.5707963267948966, Maximum Zenith angle primaries are produces with

Param MCTreeName:

Default = 'I3MCTree', Name of the I3MCTree frame object.

Param MinZenith:

Default = 0.0, Minimum Zenith angle primaries are produces with

Param MuBiasTarget:

Default = 1.0, Leading muon energy cut bias to send to CORSIKA

Param NEvents:

Default = [], Sum Total Number of events to produce across all particle types

Param PrimaryName:

Default = '', Name of the I3Particle frame object

Param PrimaryTypes:

Default = [], List of Particle Types to generate

Param RunID:

Default = 4294967295, Run number to put in S-Frame, should match what is put in I3EventHeader

I3PrimaryPulseMapper

"I3PrimaryPulseMapper" (C++ I3Module)

Converts mapping information describing which particles produced each MCPE to a mapping to primary particles which were the parents of the light emitting particles.

Param I3MCTreeName:

Default = 'I3MCTree', Name of I3MCTree to get particle relations from

Param InputParticleIDMapname:

Default = 'I3MCPulseSeriesMapParticleIDMap', Name of I3ParticleIDMap to read

Param OutputParticleIDMapname:

Default = 'I3MCPulseSeriesMapPrimaryIDMap', Name of I3ParticleIDMap to write

I3PropagatorModule

"I3PropagatorModule" (C++ I3Module)

Propagates all particles found in an MCTree that have configured I3PropagatorServices. If one service returns another particle that can be propagated by another service, it will be passed to that one. The results, in turn, will also be propagated until there are no more particles to propagate.

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param InputMCTreeName:

Default = 'I3MCTree', Name of the I3MCTree frame object.

Param OutputMCTreeName:

Default = 'I3MCTree', Name of the output I3MCTree frame object. If identical to the input or empty, the input object will be replaced.

Param PropagatorServices:

Default = None, A dict mapping I3Particle::ParticleType to I3PropagatorService.

Param RandomService:

Default = None, A random number generator service.

Param RNGStateName:

Default = '', Name under which to store the state of the supplied RNG

Param SkipAlreadyPropagated:

Default = False, Don’t re-propagate particles (experimental)

I3RemoveLargeDT

"I3RemoveLargeDT" (C++ I3Module)

Removes photo-electron hits that are separated in time by a factor larger than maxDT/2 from the median time (where maxDT is the maximum size of the trigger window).

Param InputResponse:

Default = 'I3MCPESeriesMap', Name of the input response series

Param MaxDeltaT:

Default = 100000000.0, Largest time span of PEs in an event.

Param OutputResponse:

Default = 'CleanedI3MCPESeriesMap', Name of the output response series

Param PreSorted:

Default = True, PEs are already sorted in time

OnboardNoiseSuppression

"OnboardNoiseSuppression" (C++ I3Module)

The DAQ team is planning an onboard noise-suppression algorithm for the mDOM. This algorithm will force an artificial deadtime for new-pmt hits if only single hit pmts are observed within a fixed time window, reducing the bandwidth needed for readout. This will eventually be implemented direction in DAQ firmware, which we will rely on for simulation. Until then, we need this module to simulate the impact.

Param Deadtime:

Default = 10000.0, If no other same-module PMTs are hit in SearchWindow, then we start a deadtime window for this PMT. How long should this window be?

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param OMTypes:

Default = [130], What OMTypes should this be applied to?

Param PulseMapName:

Default = 'I3RecoPulseSeriesMapGen2', The name of the I3RecoPulseSeriesMap to apply coincidence conditions to.

Param SearchWindow:

Default = 100.0, How long do we use to look for other hit PMTs before making a deadtime decision?

Python I3Modules

I3GCDSanityChecker

I3GCDSanityChecker (Python I3Module)

Check sanity of the GCD.

Param GCDFilename:

Default = None, Fully resloved filename of GCD file.

Param Prescale:

Default = None, Only check every Nth Q-frame

CascadeLabels

CascadeLabels (Python I3Module)

<undocumented>

Param classification_name:

Default = 'classification', Name of the classification

Param event_properties_name:

Default = None, Name of the LI EventProperties.

Param gcd:

Default = None, Path of GCD File. If none use g frame

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param mctree_name:

Default = 'I3MCTree', Name of the I3MCTree

Param output_prefix:

Default = 'classification_cascade', Prefix for the output keys

Param weight_dict_name:

Default = None, Name of the I3MCWeightDict

MCLabeler

MCLabeler (Python I3Module)

<undocumented>

Param bg_mctree_name:

Default = 'I3MCTree', Name of the background I3MCTree. (Change if coincident events are in a separate MCTree)

Param corsika_weight_map_name:

Default = None, Name of the CorsikaWeightMap

Param cr_muon_padding:

Default = 150.0, Padding for CR muons. Increase to count muons passing further out.

Param det_hull_padding:

Default = 0.0, Padding for the detector hull for calculating containment.

Param event_properties_name:

Default = None, Name of the LI EventProperties.

Param gcd:

Default = None, Path of GCD File. If none use g frame

Param key_postfix:

Default = '', Postfix for the keys stored in the frame

Param mcpe_map_name:

Default = 'I3MCPESeriesMapWithoutNoise', Name of the I3MCPESeriesMap

Param mcpe_pid_map_name:

Default = 'I3MCPESeriesMapParticleIDMap', Name of the I3MCPESeriesMapParticleIDMap. Set to None to disable background MCPE counting.Note: Naive MCPE downsampling will render I3MCPESeriesMapParticleIDMap useles

Param mctree_name:

Default = 'I3MCTree', Name of the I3MCTree

Param weight_dict_name:

Default = None, Name of the I3MCWeightDict

MuonLabels

MuonLabels (Python I3Module)

<undocumented>

Param classification_name:

Default = 'classification', Name of the classification

Param corsika_weight_map_name:

Default = None, Name of the CorsikaWeightMap

Param event_properties_name:

Default = None, Name of the LI EventProperties.

Param gcd:

Default = None, Path of GCD File. If none use g frame

Param IcePickServiceKey:

Default = '', Key for an IcePick in the context that this module should check before processing physics frames.

Param If:

Default = None, A python function… if this returns something that evaluates to True, Module runs, else it doesn’t

Param mctree_name:

Default = 'I3MCTree', Name of the I3MCTree

Param mmctracklist_name:

Default = 'MMCTrackList', Name of the MMCTrackList

Param output_prefix:

Default = 'classification_emuon', Prefix for the output keys

Param weight_dict_name:

Default = None, Name of the I3MCWeightDict

TestModule

TestModule (Python I3Module)

<undocumented>

Param DOMsToExclude:

Default = [], These DOMs should be excluded.

I3TweakTriggerTestModule

I3TweakTriggerTestModule (Python I3Module)

<undocumented>

Param ConfigID:

Default = -1,

Param ReadoutWindowConfigs:

Default = {},

Param SourceID:

Default = -1,

Param TriggerName:

Default = '',

Param TypeID:

Default = -1,

Param ValueList:

Default = [],

Param ValueNameList:

Default = [],

I3Tray segments

RecreateMCTree

RecreateMCTree (I3Tray segment)

Recreate the results of lepton propagation and shower simulation that were discarded in order to save space.

Param MCTree:

Default = 'I3MCTree', name of the re-propagated I3MCTree to put back in the frame

Param RawMCTree:

Default = 'I3MCTreeRaw', name of the un-propagated I3MCTree to use as input

Param RNGState:

Default = 'RNGState', name of the object storing the state of the random number generator

Param Propagators:

Default = None, an I3ParticleTypePropagatorServiceMap giving the propagators to use for each kind of particle. If this is None, use PROPOSAL for muons and CMC for showers.

Param Paranoia:

Default = True, if True, compare the re-propagated result to the original when it is present in the frame and raise an assertion if they differ.