icecube.clsim.tablemaker.photonics module¶
- class icecube.clsim.tablemaker.photonics.Efficiency¶
Bases:
object
Normalization types from photonics.h
- AREA = 8¶
- DIFFERENTIAL = 256¶
- EMISSION = 64¶
- NONE = 0¶
- N_EVENT = 512¶
- N_PHOTON = 32¶
- RECEIVER = 1¶
- SOURCE = 2¶
- USER_DEFINED = 128¶
- VOLUME = 16¶
- WAVELENGTH = 4¶
- class icecube.clsim.tablemaker.photonics.FITSTable(binedges, values, weights, header={'azimuth': 0.0, 'efficiency': 0, 'energy': 0.0, 'geometry': 1, 'level': 1, 'n_group': nan, 'n_phase': nan, 'n_photons': 0, 'parity': 0, 'type': 0, 'z': 0.0, 'zenith': 0.0})¶
Bases:
Table
Same content as a photonics table, but using the FITS-based file format produced by the clsim tabulator.
- empty_header = {'azimuth': 0.0, 'efficiency': 0, 'energy': 0.0, 'geometry': 1, 'level': 1, 'n_group': nan, 'n_phase': nan, 'n_photons': 0, 'parity': 0, 'type': 0, 'z': 0.0, 'zenith': 0.0}¶
- classmethod load(fname)¶
- normalize(kind='photon')¶
Normalize the table. If kind is ‘photon’, normalize such that the entries in the table are number of PE detected per Cherenkov photon emitted between 300 and 600 nm, as in Photonics. If kind is ‘event’, normalize such that the entries in the table are the number of PE detected per event (e.g. per minimum-ionizing muon).
- raise_if_incompatible(other)¶
Check for generalized brokenness.
- save(fname, overwrite=False)¶
- classmethod stack(outfile, *fnames)¶
- property values¶
- property weights¶
- class icecube.clsim.tablemaker.photonics.Geometry¶
Bases:
object
- CUBIC = 3¶
- CYLINDRICAL = 2¶
- SPHERICAL = 1¶
- class icecube.clsim.tablemaker.photonics.GeometryType¶
Bases:
object
- INFINITEMUON = 1¶
- POINTSOURCE = 0¶
- class icecube.clsim.tablemaker.photonics.Header(fh)¶
Bases:
object
Parse a packed representation of Header_type from photonics.h.
- size = 328¶
- write(fh)¶
- class icecube.clsim.tablemaker.photonics.MetaHead(buf)¶
Bases:
object
Parse a packed representation of MetaHead_type from photonics.h.
- pack()¶
- size = 85¶
- class icecube.clsim.tablemaker.photonics.Table(filename=None, normalize=True, mmap=True)¶
Bases:
object
- bin_centers = None¶
- bin_widths = None¶
- convert_to_level1()¶
- convert_to_level2()¶
- filename = None¶
- is_integral = False¶
- level = -1¶
- mirror(n_rho=0, n_phi=0)¶
Extend table to rho < 0 and 180 < phi < 360. This may be useful for surpressing edge effects while fitting.
- property ndim¶
- normalize()¶
- property normed¶
Has this table been normalized?
- open_file(filename, convert=False, mmap=False)¶
- remove_nans_and_infinites(dovalues=True, doweights=True)¶
- property shape¶
- classmethod stack(outfile, *fnames)¶
- table = None¶
- table_shape_consistent()¶
- weights = None¶
- icecube.clsim.tablemaker.photonics.melonball(table, weights=None, radius=1)¶
Set weights inside a given radius to zero.
- icecube.clsim.tablemaker.photonics.scalp(table, weights=None, low=-820, high=820)¶
Set weights outside of the given depth range to zero.