10 #include <cppunit/extensions/HelperMacros.h>
12 #include <det/Detector.h>
13 #include <fdet/FDetector.h>
16 #include <fwk/CoordinateSystemRegistry.h>
18 #include <atm/AerosolDB.h>
19 #include <atm/AttenuationResult.h>
20 #include <atm/ScatteringResult.h>
22 #include <fwk/CentralConfig.h>
24 #include <utl/TimeStamp.h>
25 #include <utl/UTCDateTime.h>
26 #include <utl/ErrorLogger.h>
28 #include <utl/Point.h>
29 #include <utl/TabulatedFunctionErrors.h>
30 #include <utl/ReferenceEllipsoid.h>
32 #include <tst/Verify.h>
48 CPPUNIT_TEST(testGetAttFromDB);
49 CPPUNIT_TEST(testGetAttFromXML);
50 CPPUNIT_TEST(testGetScatFromDB);
51 CPPUNIT_TEST(testGetScatFromXML);
53 CPPUNIT_TEST(testUncertaintyDB);
54 CPPUNIT_TEST(testUncertaintyXML);
56 CPPUNIT_TEST_SUITE_END();
62 CentralConfig::GetInstance(BOOTSTRAPFILE);
72 Detector::GetInstance().Update(
UTCDateTime(2005,1,1,0,0,0).GetTimeStamp());
73 const Atmosphere& theAtm = Detector::GetInstance().GetAtmosphere();
75 vector<double> wlength;
83 CSll(Detector::GetInstance().GetFDetector().GetEye(
"Los Leones").GetLocalCoordinateSystem() );
85 Point All(0., 0., 0., CSll);
86 Point Bll(0., 0., 9000.*
m, CSll);
98 Detector::GetInstance().Update(
TimeStamp(111));
99 const Atmosphere& theAtm = Detector::GetInstance().GetAtmosphere();
101 vector<double> wlength;
109 CSll(Detector::GetInstance().GetFDetector().GetEye(
"Los Leones").GetLocalCoordinateSystem() );
111 Point All(0., 0., 0., CSll);
112 Point Bll(0., 0., 2600.*
m, CSll);
123 Detector::GetInstance().Update(
UTCDateTime(2005,1,1,0,0,0).GetTimeStamp());
124 const Atmosphere& theAtm = Detector::GetInstance().GetAtmosphere();
126 CSll(Detector::GetInstance().GetFDetector().GetEye(
"Los Leones").GetLocalCoordinateSystem() );
128 vector<double> wlength;
133 Point pointA(0., 0. , 0., CSll);
134 Point pointB(0., 0. , 1400.*
m, CSll);
147 Detector::GetInstance().Update(
TimeStamp(111));
148 const Atmosphere& theAtm = Detector::GetInstance().GetAtmosphere();
150 vector<double> wlength;
156 CSll(Detector::GetInstance().GetFDetector().GetEye(
"Los Leones").GetLocalCoordinateSystem() );
157 Point pointA(0., 0. , 0., CSll);
158 Point pointB(0., 0. , 1400.*
m, CSll);
167 Detector::GetInstance().Update(
UTCDateTime(2005,1,1,0,0,0).GetTimeStamp());
170 CSll(Detector::GetInstance().GetFDetector().GetEye(
"Los Leones").GetLocalCoordinateSystem() );
174 Point All(0., 0., 0., CSll);
175 Point Bll(0., 0., 2600.*
m, CSll);
177 vector<double> wlength;
182 const Atmosphere& theAtm = Detector::GetInstance().GetAtmosphere();
203 Detector::GetInstance().Update(
TimeStamp(111));
204 const Atmosphere& theAtm = Detector::GetInstance().GetAtmosphere();
206 vector<double> wlength;
214 CSll(Detector::GetInstance().GetFDetector().GetEye(
"Los Leones").GetLocalCoordinateSystem() );
216 Point All(0., 0., 0., CSll);
217 Point Bll(0., 0., 2600.*
m, CSll);
Top of the interface to Atmosphere information.
void testGetScatFromXML()
atm::AttenuationResult EvaluateMieAttenuation(const utl::Point &xInit, const utl::Point &xFinal, const std::vector< double > &wLength) const
const utl::TabulatedFunctionErrors & GetTransmissionFactor() const
Transmission factor.
CPPUNIT_TEST_SUITE_REGISTRATION(testAiresShowerFile)
A TimeStamp holds GPS second and nanosecond for some event.
constexpr double nanometer
Class holding the output of the ScatteringResult function.
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
Reference ellipsoids for UTM transformations.
const utl::TabulatedFunctionErrors & GetScatteringFactor() const
Scattering factor.
utl::CoordinateSystemPtr Get(const std::string &id)
Get a well-known Coordinate System.
void testUncertaintyXML()
double Y(const double x) const
Get or interpolate the Y value that corresponds to parameter x.
void SetUncertaintyBound(const ModelWithUncertainty model, const double nSigma) const
alter Model "model" by "nSigma" standard deviations
Class describing the Atmospheric attenuation.
atm::ScatteringResult EvaluateMieScattering(const utl::Point &xA, const utl::Point &xB, const double angle, const double distance, const std::vector< double > &xLength) const