Signal
- class showermodel.signal.Signal(telescope, shower, projection=None, atm_trans=True, tel_eff=True, wvl_ini=290.0, wvl_fin=430.0, wvl_step=3.0)
Bases:
DataFrameDataFrame containing the signal produced by a shower.
Both Cherenkov light and fluorescence light are transported to the telescope and the number of photoelectrons (of each light component) is evaluated from the detection efficiency of the telescope. The atmosphere, shower, telescope, etc. are stored as object attributes.
- Parameters:
telescope (Telescope, mandatory) – Telescope object to be used.
shower (Shower, mandatory) – Shower object to be used.
atm_trans (bool, default True) – Include the atmospheric transmission to transport photons.
tel_eff (bool, default True) – Include the telescope efficiency to calculate the signals. If False, 100% efficiency is assumed for a given wavelength interval.
wvl_ini (float, default 290) – Initial wavelength in nm of the interval to calculate the signal when tel_eff==False.
wvl_fin (float, default 430) – Final wavelength in nm of the interval to calculate the signal when tel_eff==False.
wvl_step (float, default 3) – Discretization step in nm of the interval to calculate the signal when tel_eff==False.
- Npe_cher
Column 0, number of photoelectrons per discretization step due to Cherenkov light.
- Type:
float
- Npe_fluo
Column 1, number of photoelectrons per discretization step due to fluorescence light.
- Type:
float
- Npe_total
Column 2, total number of photoelectrons per discretization step.
- Type:
float
- atm_trans
True if the atmospheric transmission is included.
- Type:
bool
- tel_eff
True if the telescope efficiency is included.
- Type:
bool
- wvl_ini
Initial wavelength in nm of the interval.
- Type:
float
- wvl_fin
Final wavelength in nm of the interval.
- Type:
float
- wvl_step
Step size in nm of the interval.
- Type:
float
- Npe_cher_sum
Sum of photoelectrons due to Cherenkov light.
- Type:
float
- Npe_fluo_sum
Sum of photoelectrons due to fluorescence light.
- Type:
float
- Npe_total_sum
Sum of photoelectrons due to both light components.
- Type:
float
- projection
Projection object.
- Type:
- fluorescence
Fluorescence object.
- Type:
- atmosphere
Atmosphere object.
- Type:
- show_projection()
Show the projection of the shower track viewed by the telescope.
- show_profile()
Show the shower profile as a function of slant depth.
- show_light_production()
Show the production of photons as a function of slant depth.
- show()
Show the signal evolution.
- Image()
Generate a time-varying shower image.
- Methods:
- Signal.show_projection(shower_Edep=True, axes=True, max_theta=30.0, X_mark='X_max')
Show the projection of the shower track viewed by the telescope in both horizontal and FoV coordinates systems.
- Parameters:
shower_Edep (bool, default True) – Make the radii of the shower track points proportional to the energy deposited in each step length.
axes (bool, default True) – Show the axes of both frames of reference.
max_theta (float, default 30 degrees) – Maximum offset angle in degrees relative to the telescope pointing direction.
X_mark (float) – Reference slant depth in g/cm^2 of the shower track to be marked in the figure. If set to None, no mark is included. By default, the mark is placed at X_max.
- Signal.show_profile()
Show the shower profile, both number of charged particles and energy deposit, as a function of slant depth.
- Returns:
(ax1, ax2)
- Return type:
AxesSubplot
- Signal.show_light_production()
Show the production of both Cherenkov and fluorescence photons in the 290 - 430 nm range as a function of slant depth.
- Returns:
(ax1, ax2)
- Return type:
AxesSubplot
- Signal.show()
Show the signal evolution as a function of both time and beta angle (relative to the shower axis direction).
The two contributions from Cherenkov and fluorescence light are shown.
The time scale (us or ns) is adapted depending on the signal pulse duration.
- Returns:
(ax1, ax2)
- Return type:
AxesSubplot
- Signal.Image(N_pix=None, int_time=None, NSB=40.0)
Generate a time-varying shower image in a circular camera with square pixels of same solid angle. A Nishimura-Kamata-Greisen lateral profile is used to spread the signal contribution from each shower point to several pixels.
- Parameters:
lat_profile (bool, default True) – Use a NKG lateral profile to spread the signal. If False, a linear shower is assumed.
N_pix (int, default None) – Number of camera pixels. If not given, the value defined in the Telescope object is used.
int_time (float, default None) – Integration time in microseconds of a camera frame. If not given, the value defined in the Telescope object is used.
NSB (float, default 40) – Night sky background in MHz/m^2/deg^2 (photoelectrons).
- Returns:
image
- Return type: