16 #include <det/Detector.h>
17 #include <atm/ParametricXMLMieModel.h>
18 #include <atm/ScatteringResult.h>
19 #include <atm/AttenuationResult.h>
21 #include <atm/MeasuredDBMieModel.h>
22 #include <atm/ParametricXMLMieModel.h>
23 #include <atm/SuperMieModel.h>
24 #include <atm/ScatteringResult.h>
25 #include <atm/AttenuationResult.h>
51 const double distance,
52 const vector<double>& wLength)
const {
64 const double distance,
77 const double distance,
78 double wLength)
const {
90 const double distance,
92 const double mieAttenuation)
const {
103 const vector<double>& wLength)
const{
113 double wLength)
const{
131 const double wLength)
const {
140 const double wLength)
const {
double GetAttenuationLength(const utl::Point &p, const double wLength) const
Horizontal attenuation length (inverse of extinction coefficient). Grows with altitude as aerosol dis...
Base class for a Mie Model.
double GetAttenuationLength(const utl::Point &p, const double wLength) const
atm::ScatteringResult EvaluateMieScattering(const utl::Point &xA, const utl::Point &xB, const double angle, const double distance, const std::vector< double > &wLength) const
Compute scattering intensity at point at a particular angle and distance from track defined by two po...
Class for computing aerosol scattering and attenuation using database measurements.
void SetUncertaintyBound(double nSigma) const
alter Model by nSigma standard deviations
Class holding the output of the ScatteringResult function.
double GetVerticalAerosolOpticalDepth(const unsigned int eyeId, const double altitude) const
Calculate VAOD at some altitude (w.r.t. sea level) above a given eye.
bool HasData() const
Determine if the DB tables are full or if an update is needed.
double GetVerticalAerosolOpticalDepth(const unsigned int eyeId, const double altitude) const
atm::AttenuationResult EvaluateMieAttenuation(const utl::Point &xInit, const utl::Point &xFinal, const std::vector< double > &wLength) const
Compute attenuation between two points for several wavelengths.
void SetUncertaintyBound(double nSigma) const
alter Model by nSigma standard deviations
double GetAttenuationLength(const utl::Point &p, const double wLength) const
void Init()
Initialize model using an XML card.
double EvaluateScatteringAngle(const utl::Point &p, const double angle, const double wLength) const
Calculation is done independent of the position and wavelength.
double EvaluateScatteringAngle(const utl::Point &p, const double angle, const double wLength) const
ParametricXMLMieModel * fParametricXMLMieModel
atm::AttenuationResult EvaluateMieAttenuation(const utl::Point &xInit, const utl::Point &xFinal, const std::vector< double > &wLength) const
atm::AttenuationResult EvaluateMieAttenuation(const utl::Point &xInit, const utl::Point &xFinal, const std::vector< double > &wLength) const
Calculate the aerosol attenuation between two points.
MeasuredDBMieModel * fMeasuredDBMieModel
Class for computing aerosol scattering and attenuation using simple parameterizations.
double EvaluateScatteringAngle(const utl::Point &p, const double angle, const double wLength) const
double GetVerticalAerosolOpticalDepth(const unsigned int eyeId, const double altitude) const
Compute the aerosol optical depth at some height above a given eye.
atm::ScatteringResult EvaluateMieScattering(const utl::Point &xA, const utl::Point &xB, const double angle, const double distance, const std::vector< double > &wLength) const
Compute scattering intensity at point at a particular angle and distance from track defined by two po...
atm::ScatteringResult EvaluateMieScattering(const utl::Point &xA, const utl::Point &xB, const double angle, const double distance, const std::vector< double > &wLength) const
Aerosol scattering fraction in a wavelength band.
Class describing the Atmospheric attenuation.