Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

TestLightSource

#include "TestLightSource.hh"

TestLightSource


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

class TestLightSource : public LightSource, public EsafMsgSource

Inheritance Chart:
EsafConfigurable
<-
LightSource
EsafMsgSource
<-
TestLightSource
    private:
void BuildLightTrack(const EarthVector& posi, const EarthVector& dir) void Configure() EarthVector EUSO() const const TF12 GetAngularDistribution(Double_t alt) const Double_t GetEnergyThreshold(Double_t SC_alt) const EarthVector GetHmaxPos(const EarthVector&, const EarthVector&, Double_t) const const TF12 GetLateralDistribution(const EarthVector& pos) const EarthVector GetLongitudinalExtension(const EarthVector& pos, const EarthVector& dir) PhotonsInAtmosphere* MakeHmaxSpot(const EarthVector& Posi, double nbPhotons) Double_t MakeSpectrum(const EarthVector& pos, EsafSpectrum* spectrum = 0, string photontype = dummy) PhotonsInAtmosphere* MakeSpot(const EarthVector& Posi, double nbPhotons) PhotonsInAtmosphere* MakeTrack(Double_t theta, Double_t phi, const EarthVector& Posi, Double_t nbPhotons) public:
TestLightSource() virtual ~TestLightSource() static TClass* Class() virtual const char* ClassName() const virtual const char* ClassType() const virtual PhotonsInAtmosphere* Get(const PhysicsData*) virtual TClass* IsA() const virtual void Reset() virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual MCTruth* Truth()

Data Members

    private:
EarthVector fEUSO ListPhotonsInAtmosphere* fPh_in_atmo FluoCalculator* fFluocalcul TF2* fLateralDistribution TF2* fAngularDistribution

Class Description


TestLightSource() : LightSource("TEST"), EsafMsgSource(), fFluocalcul(0)
 ctor


~TestLightSource()
 dtor


void Configure()
 Configure TestLightSource


void Reset()
 reset internal list of photons


PhotonsInAtmosphere* Get( const PhysicsData *dummy)
 return the list of photons in atmosphere


PhotonsInAtmosphere* MakeSpot(const EarthVector& Posi, Double_t nbPhotons)
 Produce light in a single spot


PhotonsInAtmosphere* MakeHmaxSpot(const EarthVector& impact, Double_t nbPhotons)
 Produce light in a single spot


PhotonsInAtmosphere* MakeTrack(Double_t theta, Double_t phi, const EarthVector& Posi, Double_t nbPhotons)
 Produce light along a track


Double_t MakeSpectrum(const EarthVector& pos,EsafSpectrum* spectrum,string photontype)
 Calculation of the wavelenght spectrum


const TF12 GetLateralDistribution(const EarthVector& pos)
 return TF12 the lateral distribution at pos for age = 1


const TF12 GetAngularDistribution(Double_t alt)
 return Pointer to the angular distribution


EarthVector GetLongitudinalExtension(const EarthVector& Pos,const EarthVector& Dir)
 return last point of a bunch with first point Pos and mean direction Dir


EarthVector GetHmaxPos(const EarthVector& impact,const EarthVector& Direc,Double_t theta) const
 get Hmax 3D-position -- for HmaxSPOT option only
 Here theta MUST be LOCAL zenith angle (at impact)


void BuildLightTrack(const EarthVector& posinit, const EarthVector& dir)
 for CERENKOV RadiativeTransfer handling, when AlongTrack_CSPropagator is used


Double_t GetEnergyThreshold(Double_t SC_alt) const
 get the energy threshold for cerenkov emission




Inline Functions


           MCTruth* Truth()
        const char* ClassType() const
        const char* ClassName() const
        EarthVector EUSO() const
            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:21:00 2005