Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

ShowerTrack

#include "ShowerTrack.hh"

ShowerTrack


class description - source file - inheritance tree (.pdf)

class ShowerTrack : public PhysicsData, public EsafMsgSource

Inheritance Chart:
PhysicsData
EsafMsgSource
<-
ShowerTrack

    public:
ShowerTrack() virtual ~ShowerTrack() void Add(ShowerStep step) void AtmUpdateTrack() static TClass* Class() Bool_t Clear() void DrawXY(Option_t* opt = "colz") void DrawXYZ(Option_t* opt = "box") EarthVector FirstPos() const static TF2* GetAngularDistribution(TString) EVector GetDirVers() const Double_t GetEnergy() const static TF2* GetEnergyDistribution(TString) Double_t GetEthrEl() const Bool_t GetHitGround() const EVector GetInitPos() const const ShowerStep& GetLastStep() const static TF2* GetLateralDistribution(TString) Int_t GetNumEnergyHistos() Int_t GetNumLateralHistos() UInt_t GetNumStep() const Double_t GetPhi() const const ShowerStep& GetStep(UInt_t) const const vector<ShowerStep>& GetSteps() const Double_t GetTheta() const Double_t GetX1() const virtual TClass* IsA() const EarthVector LastPos() const const ShowerStep& operator[](UInt_t) const void Reset() void SetNumEnergyHistos(Int_t n) void SetNumLateralHistos(Int_t n) virtual void ShowMembers(TMemberInspector& insp, char* parent) UInt_t Size() const virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
vector<ShowerStep> fSteps vector of ShowerStep's Double_t fEnergy UHECR energy Double_t fTheta UHECR Theta Double_t fPhi UHECR Phi Double_t fX1 UHECR first interaction depth Double_t fEthrEl Energy Threshold of electrons EVector fDirVers Unit vector of the track direction EVector fInitPos first interaction point (3D coord, meters) in MES EVector fEarthImpact Impact point on the Earth if any Bool_t fHitGround kTRUE is the track can hit the Ground in EUSO FoV, kFALSE otherwise Int_t fNumEnergyHistos number of energy distribution histograms Int_t fNumLateralHistos number of lateral distribution histograms static TF2* fEnergyAgeDistributionDefault default 2d function of energy and age distribution static TF2* fEnergyAgeDistributionHillas hillas 2d function of energy and age distribution static TF2* fEnergyAgeDistributionNerling nerling 2d function of energy and age distribution static TF2* fEnergyAgeDistributionMelot melot 2d function of energy and age distribution static TF2* fEnergyAgeDistributionGiller giller 2d function of energy and age distribution static TF2* fLateralDistributionDefalt default 2d function of lateral distribution static TF2* fLateralDistribution1 NKG1 2d function of lateral distribution static TF2* fLateralDistribution2 NKG2 2d function of lateral distribution static TF2* fAngularDistribution1 2d angular distribution

Class Description

 ShowerTrack class serves as an universal container of Atmospheric Air Shower
 produced by Ultra High Energy Cosmic Ray entering the atmosphere.
 The ShowerTrack object should be produced by interfaces to specific generators
 like CORSIKA, AIRES, UNISIM, SLAST, etc
 In the ShowerTrack object the relevant information is saved:
 vector of ShowerStep's, UHECR energy, theta, phi, first interaction depth,
 Energy Threshold of electrons, Unit vector of the track direction
 first interaction point in MES
 Impact point on the Earth if any

ShowerTrack(): PhysicsData("shower"), EsafMsgSource()
 Constructor


~ShowerTrack()
 Destructor


TF2* GetEnergyDistribution(TString name)
 Return Pointer to the energy distribution of electrons in the shower


TF2* GetLateralDistribution(TString name)
 Return Pointer to the lateral distribution of electrons in the shower


TF2* GetAngularDistribution(TString name)
 Return Pointer to the angular distribution of electrons in the shower


const ShowerStep& GetStep( UInt_t i ) const
 Return the i-th step of the shower


const ShowerStep& GetLastStep( ) const
 Return last step of the shower


void AtmUpdateTrack()
 Update the Track to the density profile of the atmosphere
 currently setted in ESAF. Leave the track direction in space unchanged,
 leave all the shower physics in g/cm^2 unchanged. Change the
 points in physical space. This is done in order to be able to handle
 shower track created by shower generators outside ESAF which are using
 a different atmospheric density profile respect to the one currently
 setted in ESAF.

void Reset()
 delete each ShowerStep object

Bool_t Clear()

void Add( ShowerStep step )

void DrawXYZ(Option_t *opt)

void DrawXY(Option_t *opt)

EarthVector FirstPos() const
 return the entry position of the first ShowerStep


EarthVector LastPos() const
 return the exit position of the last ShowerStep




Inline Functions


                           UInt_t GetNumStep() const
                         Double_t GetEthrEl() const
                          EVector GetDirVers() const
                          EVector GetInitPos() const
                           Bool_t GetHitGround() const
                         Double_t GetEnergy() const
                         Double_t GetTheta() const
                         Double_t GetPhi() const
                         Double_t GetX1() const
                const ShowerStep& operator[](UInt_t) const
        const vector<ShowerStep>& GetSteps() const
                           UInt_t Size() const
                            Int_t GetNumEnergyHistos()
                            Int_t GetNumLateralHistos()
                             void SetNumEnergyHistos(Int_t n)
                             void SetNumLateralHistos(Int_t n)
                          TClass* Class()
                          TClass* IsA() const
                             void ShowMembers(TMemberInspector& insp, char* parent)
                             void Streamer(TBuffer& b)
                             void StreamerNVirtual(TBuffer& b)
About Us | EUSO Official Website | Web pages created by Roberto Pesce and Alessandro Thea - Last Update Wed Nov 16 16:20:03 2005