Profile

class showermodel.profile.Profile(E=10000000.0, theta=0.0, alt=None, prf_model='Greisen', X_max=None, X0_GH=None, lambda_GH=None, zi=None, atmosphere=None, **kwargs)

Bases: DataFrame

DataFrame containing a shower profile discretization.

Use sm.Profile() to construct the default Profile object.

Parameters
  • E (float) – Energy of the primary particle in MeV.

  • theta (float) – Zenith angle in degrees of the apparent position of the source.

  • alt (float) – Altitude in degrees of the apparent position of the source. If None, theta is used. If given, theta is overwritten.

  • prf_model ('Greisen', 'Gaisser-Hillas' or DataFrame) – If ‘Greisen’, the Greisen function for electromagnetic showers is used. If ‘Gaisser-Hillas’, the Gaisser-Hillas function for hadron-induced showers is used. If a DataFrame with an energy deposit profile is input, it must have two columns with the slant depth in g/cm2 and dE/dX in MeV.cm2/g.

  • X_max (float) – Slant depth in g/cm^2 at shower maximum. If None and prf_model is ‘Greisen’ or ‘Gaisser-Hillas’, a typical value of X_max for gamma or proton showers is calculated from the radiation length lambda_r = 36.7 g/cm^2 and the critical energy E_c = 81 MeV.

  • X0_GH (float) – X0 parameter in g/cm2 to be used when prf_model==’Gaisser-Hillas’. If None, a typical value for the input energy is used.

  • lambda_GH (float) – Lambda parameter in g/cm2 to be used when prf_model==’Gaisser-Hillas’. If None, a typical value for the input energy is used.

  • zi (float, default None) – Height in km of the first interaction point of the shower. If None, the shower is assumed to begin at the top of the atmosphere (theta<90) or at ground level (theta>90).

  • atmosphere (Atmosphere) – If None, a new Atmosphere object is generated.

  • **kwargs ({h0, h_top, N_steps, model}) – Options to construct the new Atmosphere object when atmosphere==None. If None, the default Atmosphere object is used.

X

Column 0, slant depth in g/cm^2.

Type

float

s

Column 1, shower age.

Type

float

dX

Column 2, discretization step in g/cm^2 along the shower axis.

Type

float

E_dep

Column 3, energy deposit in MeV at each discretiztion step.

Type

float

N_ch

Column 4, number of charged particles.

Type

float

atmosphere

Atomosphere object.

Type

Atmosphere

E

Energy of the primary particle.

Type

float

theta

Zenith angle in degrees of the apparent position of the source.

Type

float

alt

Altitude in degrees of the apparent position of the source.

Type

float

prf_model
Type

{‘Greisen’, ‘Gaisser-Hillas’} or DataFrame.

X_max

Slant depth in g/cm^2 at shower maximum.

Type

float

X0_GH

X0 parameter in g/cm2 for prf_model==’Gaisser-Hillas’.

Type

float

lambda_GH

lambda parameter in g/cm2 for prf_model==’Gaisser-Hillas’.

Type

float

dl

Size in km of the discretization step along the shower axis.

Type

float

Fluorescence()

Calculate the fluorescence light production.

Cherenkov()

Calculate the Cherenkov light production.

show()

Show the shower profile as a function of slant depth.

See also

Profile

DataFrame containing a shower profile discretization.

Shower

Make a discretization of a shower.

Methods:
Profile.Fluorescence()

Calculate the fluorescence photon production from a shower profile discretization.

Returns

fluorescence

Return type

Fluorescece

Profile.Cherenkov()

Calculate the Cherenkov light production from a shower profile discretization.

Returns

cherenkov

Return type

Cherenkov

Profile.show()

Show the shower profile, both number of charged particles and energy deposit, as a function of slant depth.

Returns

(ax1, ax2)

Return type

AxesSubplot