BunchRadiativeTransfer
#include "BunchRadiativeTransfer.hh" |
BunchRadiativeTransfer
class description - source file - inheritance tree (.pdf)
class BunchRadiativeTransfer : public RadiativeTransfer
Inheritance Chart: | |||||||||||||||
|
private:
void BunchPropagation(BunchOfPhotons&) void DirectToEuso(const BunchOfPhotons&) const EarthVector EUSO() const Double_t EusoOmega(const EarthVector& pos) const Double_t EusoRadius() const void GenerateDirectSingles(const BunchOfPhotons&, Int_t) const virtual void GenerateReflectedSingles(Int_t, const BunchOfPhotons&) const const DetectorGeometry* GetDetGeometry() 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 unsigned int fNbBunch number of bunches to handle Double_t fNbTot total number of photons to handle const DetectorGeometry* fDetGeom copy of the object defined in Detector part
Class Description
PhotonsOnPupil* Get(PhotonsInAtmosphere* photons, const DetectorGeometry* dg)
Transport photons from source to Euso pupil
void Reset()
get ready for next event
void DirectToEuso(const BunchOfPhotons& bigbunch) const
Creates a list of SinglePhoton considering the EUSO solid angle
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
void ~BunchRadiativeTransfer() BunchRadiativeTransfer BunchRadiativeTransfer() const char* ClassType() const const char* ClassName() const const DetectorGeometry* GetDetGeometry() const EarthVector EUSO() const Double_t EusoRadius() const Double_t EusoOmega(const EarthVector& pos) const TClass* Class() TClass* IsA() const void ShowMembers(TMemberInspector& insp, char* parent) void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)