icecube.VHESelfVeto.trackveto module

Module containing the down-going muon track veto of the MESE selection

icecube.VHESelfVeto.trackveto.AxialCscdLlhFitter(tray, name, Pulses, Seed, If=None)

A drop-in replacement for I3CscdLlhModule.

class icecube.VHESelfVeto.trackveto.I3ACausalHitSelector(context)

Bases: I3ConditionalModule

Select non-causal pulses.

Select pulses from the given pulse series map that are not causally connected to the given vertex position, assuming point-source-like photon emission.

Configure((I3ConditionalModule)arg1) None :
C++ signature :

void Configure(PythonModule<I3ConditionalModule> {lvalue})

Geometry((I3ConditionalModule)arg1, (I3Frame)arg2) None :
C++ signature :

void Geometry(PythonModule<I3ConditionalModule> {lvalue},boost::shared_ptr<I3Frame>)

Physics((I3ConditionalModule)arg1, (I3Frame)arg2) None :
C++ signature :

void Physics(PythonModule<I3ConditionalModule> {lvalue},boost::shared_ptr<I3Frame>)

property mindistance: float

Ignore DOMs within this distance to the vertex position; the default is 60m.

Type:

float

property output: str

Name for the pulse series map of non-causal pulses

Type:

str

property pulses: str

Name of pulse series map to check for non-causal pulses

Type:

str

property safetymargin: float

Treat negative time residuals within this time window as causally connected; the default is 50ns.

Type:

float

property vertexfit: str

Name of vertex fit

Type:

str

class icecube.VHESelfVeto.trackveto.I3HEALPixSeedService(vertexfit, nside=32, hemisphere='down', tracktype=icecube._dataclasses.ParticleShape.InfiniteTrack)

Bases: I3SeedService

Seed service based on HEALPix grid

Generate track hypotheses passing through the given vertex position along directions on a HEALPix grid.

Parameters:
  • vertexfit (str) – Name of vertex fit

  • nside (int, optional) – Valid HEALPix nside value

  • hemisphere ({"down", "up"}, optional) – Restrict the HEALPix grid to down or up-going directions; otherwise, all directions are used.

  • tracktype (ParticleShape) – Assign the track hypotheses a certain shape

GetSeed(pixel)

Choose a track hypothesis from the HEALPix grid.

Parameters:

pixel (int) – Pixel number

Returns:

Track hypothesis passing through the given vertex position along the direction specified by pixel

Return type:

I3EventHypothesis

SetEvent(frame)

Get the vertex fit from the given frame.

Returns:

Number of seed hypotheses

Return type:

int

icecube.VHESelfVeto.trackveto.I3TrackVeto(tray, name, pulses, vertexfit, radius=100.0, timewindow=(-15.0, 500.0), nside=4, hemisphere='down', tracktype=icecube._dataclasses.ParticleShape.InfiniteTrack, output='TrackVetoFit')

Down-going muon track veto of the MESE selection

Test various track hypotheses that pass through the given vertex position along directions on a HEALPix grid and find the one with the largest total charge from direct pulses.

Parameters:
  • pulses (str) – Name of pulse series map to check for direct pulses

  • vertexfit (str) – Name of vertex fit

  • radius (float, optional) – Only consider DOMs within this perpendicular distance to the track hypothesis.

  • timewindow (tuple(float), optional) – Time window definition for direct pulses

  • nside (int, optional) – Valid HEALPix nside value

  • hemisphere ({"down", "up"}, optional) – Restrict the HEALPix grid to down or up-going directions; otherwise, all directions are used.

  • tracktype ({InfiniteTrack, StartingTrack, StoppingTrack}, optional) – Shape for track hypotheses; for starting and stopping tracks, only pulses are taken into account that are compatible with the hypothesis type.

  • output (str, optional) – Name for track hypothesis that gives the largest total charge; the track is stored together with the associated amount VetoCharge of charge from direct pulses and the associated number VetoChannels of DOMs that recorded these direct pulses.

class icecube.VHESelfVeto.trackveto.ManOnWire(name='Phillipe')

Bases: I3Parametrization

Fit for a vertex restricted to lie along the axis of a previous track fit.

UpdateParameters()

Convert a new seed into parameters

UpdatePhysicsVariables()

Convert parameters from the minimizer into a hypothesis for the likelihood