1 #ifndef _TelescopeSimulatorKG2_Mirror_h_
2 #define _TelescopeSimulatorKG2_Mirror_h_
6 #include <utl/CoordinateSystemPtr.h>
7 #include <utl/AugerUnits.h>
10 #include <utl/MathConstants.h>
12 #include <utl/Point.h>
13 #include <utl/Vector.h>
14 #include <utl/TabulatedFunction.h>
35 namespace TelescopeSimulatorKG2 {
51 const double mirrorSize,
52 const double mirrorSegmentSigma,
53 const double mirrorRadiusSigma,
54 const double mirrorAbsorptionTop,
55 const double mirrorAbsorptionBot,
84 : index(i), origin(p), radius(r), cs(ptr) { }
utl::CoordinateSystemPtr cs
const double fMirrorAbsorptionTop
const double fMirrorAbsorptionBot
Class to hold collection (x,y) points and provide interpolation between them.
utl::CoordinateSystemPtr fTelCS
utl::RandomEngine & fRandom
const double fMirrorSegmentSigma
std::map< int, MirrorSegment > fSegments
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
Wraps the random number engine used to generate distributions.
const utl::TabulatedFunction *const fMirrorDiffusionTop
const utl::TabulatedFunction *const fMirrorDiffusionBot
MirrorSegment(const int i, const utl::Point &p, const double r, const utl::CoordinateSystemPtr &ptr)
Detector description interface for Telescope-related data.
Template class for a FADC data or calibrated data container. Use the typedefs (TraceD, TraceI, etc.) defined in Trace-fwd.h.
const utl::TabulatedFunction & fReflectivity
Simulates the mirror in the raytracing of the TelescopeSimulator module.
const double fMirrorRadiusSigma