Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

BunchRadiativeTransfer

#include "BunchRadiativeTransfer.hh"

BunchRadiativeTransfer


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

class BunchRadiativeTransfer : public RadiativeTransfer

Inheritance Chart:
EsafConfigurable
EsafMsgSource
<-
RadiativeTransfer
<-
BunchRadiativeTransfer
    private:
void BunchPropagation(BunchOfPhotons&) virtual void CopyDetectorGeometry(const DetectorGeometry* dg) void DirectToEuso(const BunchOfPhotons&) const void GenerateDirectSingles(const BunchOfPhotons&, Int_t) const virtual void GenerateReflectedSingles(Int_t, const BunchOfPhotons&) const virtual void GroundReflection(const BunchOfPhotons&) const void PropagationOfSingles() public:
BunchRadiativeTransfer() virtual ~BunchRadiativeTransfer() static TClass* Class() virtual const char* ClassName() const virtual const char* ClassType() const virtual PhotonsOnPupil* Get(PhotonsInAtmosphere*, const DetectorGeometry* dg) virtual TClass* IsA() const virtual void Reset() virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
ListPhotonsOnPupil* fPhotons keep in memory the list returned to detector ListPhotonsInAtmosphere* fTotalList pointer on the list created by LightSource module ClearSkyPropagator* fCSpropag propagator for clear sky conditions InCloudsPropagator* fICpropag propagator for cloudy conditions LowtranRadiativeProcessesCalculator* fLowToDetec calculator for last transmission to detector size_t fNbBunch number of bunches to handle Double_t fNbTot total number of photons to handle

Class Description


BunchRadiativeTransfer() : RadiativeTransfer(), fPhotons(0), fTotalList(0), fCSpropag(0), fICpropag(0), fNbBunch(0), fNbTot(0)
 ctor


~BunchRadiativeTransfer()
 dtor


PhotonsOnPupil* Get(PhotonsInAtmosphere* photons, const DetectorGeometry* dg)
 Transport photons from source to Euso pupil


void Reset()
 get ready for next event
 NB : fLowToDetec not reset, its datacard is used for all the events of a run


void DirectToEuso(const BunchOfPhotons& bigbunch) const
 Creates a list of SinglePhoton considering the EUSO solid angle
 handles fluo and cerenkov (angular distrib used for the later)


void BunchPropagation( BunchOfPhotons& bigbunch )
 Propagation of a bunch through the atmosphere

 temp remark : bunch splitting not used so far, thus don't handle for root filling //TOFIX


void GroundReflection(const BunchOfPhotons& b) const
 Process of a bunch reaching ground


void PropagationOfSingles()
 Final phase of transfer. Propagate all the SinglePhoton til EUSO pupil


void GenerateDirectSingles(const BunchOfPhotons& b,Int_t nb) const
 SinglePhoton generation (BunchOfPhotons portion which is created within EUSO solid angle)
 SinglePhotons created added to fTotalList


void GenerateReflectedSingles(Int_t nb, const BunchOfPhotons& b) const
 Creates SinglePhoton objects coming from a BunchOfPhotons reflection on ground




Inline Functions


        const char* ClassType() const
        const char* ClassName() const
               void CopyDetectorGeometry(const DetectorGeometry* dg)
            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:08 2005