SinglePhotonPropagator
| #include "SinglePhotonPropagator.hh" |
SinglePhotonPropagator
class description - source file - inheritance tree (.pdf)
class SinglePhotonPropagator : public EsafMsgSource
| Inheritance Chart: | |||||||||
|
private:
EarthVector EUSO() const
Double_t EusoOmega(const EarthVector& pos) const
Medium GetNextImpact(const EarthVector&, const EarthVector&, EarthVector&, Bool_t without_clouds = false) const
public:
SinglePhotonPropagator()
SinglePhotonPropagator(const Ground*, Double_t, Double_t)
virtual ~SinglePhotonPropagator()
static TClass* Class()
void CopyDetectorGeometry(const DetectorGeometry* dg, Bool_t decoupled, Bool_t GrndDetec)
void CopyGround(const Ground* g)
void DoOnePhoton(SinglePhoton&, Int_t scatorder) const
void Go(const vector<SinglePhoton*>&, Int_t scatorder) const
virtual TClass* IsA() const
void Reset()
void SetOmegaMax(Double_t omegamax)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
Data Members
private:
FastRadiativeProcessesCalculator* fCalcul interaction length, transmission etc.. WITHOUT Lowtran
const Ground* fGround copy of the RadativeTransfer ground description object
const DetectorGeometry* fDetGeom copy of detector geometry built in RT part
Bool_t fDecoupled in case detector geometry is decoupled from RT simu
Bool_t fDetAtGrnd flag is true if ground detector simulation //GRNDetec
Double_t fMaxPhaseFunction to normalize all the phase function
Double_t fOmegaMax factor defining 'reduced solid angle' used in algo
Double_t fTofCut maximum TOF treated by scattering simu
Class Description
SinglePhotonPropagator <extensive class description> Config file parameters ====================== <parameter name>: <parameter description> -Valid options: <available options>
SinglePhotonPropagator() : EsafMsgSource()
Constructor
SinglePhotonPropagator(const Ground* g, Double_t maxphfunc, Double_t maxtof)
Constructor which copy RT ground description
~SinglePhotonPropagator()
Destructor
void Go(const vector<SinglePhoton*>& list,Int_t scatorder) const
MC code for photon scattering simulation
void DoOnePhoton(SinglePhoton& s,Int_t scatorder) const
MC propagation : handle rayleigh, clouds and ground for fluo and cerenkov Each scattering order simulation is independent from another
Medium GetNextImpact(const EarthVector& pos,const EarthVector& dir,EarthVector& res,Bool_t without_clouds) const
Calculate the impact upon the next medium according to the given track Return type of the next encountered medium - If pos is underground, NONE medium is returned and impact set to (0,0,-HUGE) OUT OF TOA is handled
void Reset()
ready for next event
Inline Functions
void CopyDetectorGeometry(const DetectorGeometry* dg, Bool_t decoupled, Bool_t GrndDetec)
void CopyGround(const Ground* g)
void SetOmegaMax(Double_t omegamax)
EarthVector EUSO() 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)
