Isis Developer Reference
TopoAtm.h
Go to the documentation of this file.
1 #ifndef TopoAtm_h
2 #define TopoAtm_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include "NormModel.h"
11 
12 namespace Isis {
13  class Pvl;
14 
74  class TopoAtm : public NormModel {
75  public:
76  TopoAtm(Pvl &pvl, PhotoModel &pmodel, AtmosModel &amodel);
77  virtual ~TopoAtm() {};
78 
79  protected:
80  virtual void NormModelAlgorithm(double pha, double inc, double ema,
81  double dn, double &albedo, double &mult, double &base) {};
82  virtual void NormModelAlgorithm(double pha, double inc, double ema,
83  double deminc, double demema, double dn, double &albedo,
84  double &mult, double &base);
85 
86  private:
87  void SetNormPharef(const double pharef);
88  void SetNormIncref(const double incref);
89  void SetNormEmaref(const double emaref);
90  void SetNormAlbedo(const double albedo);
91 
92  double p_normPharef;
93  double p_normIncref;
94  double p_normEmaref;
95  double p_normAlbedo;
96  double p_normAout;
97  double p_normBout;
98  double p_normRhobar;
99  };
100 };
101 
102 #endif
Isis::NumericalApproximation::Extrapolate
@ Extrapolate
Evaluate() attempts to extrapolate if a is outside of the domain. This is only valid for NumericalApp...
Definition: NumericalApproximation.h:814
Isis::PhotoModel
Definition: PhotoModel.h:41
Isis::PI
const double PI
The mathematical constant PI.
Definition: Constants.h:40
Isis::TopoAtm::~TopoAtm
virtual ~TopoAtm()
Definition: TopoAtm.h:77
Isis::IException::Unknown
@ Unknown
A type of error that cannot be classified as any of the other error types.
Definition: IException.h:118
Isis::TopoAtm::TopoAtm
TopoAtm(Pvl &pvl, PhotoModel &pmodel, AtmosModel &amodel)
Definition: TopoAtm.cpp:18
Isis::AtmosModel
Isotropic atmos scattering model.
Definition: AtmosModel.h:60
Isis::PvlContainer::hasKeyword
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Definition: PvlContainer.cpp:159
Isis::PhotoModel::CalcSurfAlbedo
double CalcSurfAlbedo(double pha, double inc, double ema)
Calculate the surface brightness using photometric angle information.
Definition: PhotoModel.cpp:177
Isis::Pvl
Container for cube-like labels.
Definition: Pvl.h:119
Isis::PhotoModel::PhtTopder
double PhtTopder(double phase, double incidence, double emission)
Obtain topographic derivative of an arbitrary photometric function.
Definition: PhotoModel.cpp:64
NumericalApproximation.h
Isis::PvlObject::Traverse
@ Traverse
Search child objects.
Definition: PvlObject.h:158
TopoAtm.h
Isis::NormModel
Definition: NormModel.h:36
Isis::PvlGroup
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
_FILEINFO_
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
Isis::AtmosModel::GenerateAhTable
void GenerateAhTable()
This method computes the values of the atmospheric Ah table and sets the properties of the atmospheri...
Definition: AtmosModel.cpp:537
Isis::TopoAtm
As in the case without an atmosphere, processing proceeds in three steps, a pass 1 PHOTOM followed by...
Definition: TopoAtm.h:74
Isis::AtmosModel::AtmosAhSpline
NumericalApproximation AtmosAhSpline()
If GenerateAhTable() has been called this returns a clamped cubic spline of the data set (p_atmosIncT...
Definition: AtmosModel.h:183
Isis::PvlObject::findObject
PvlObjectIterator findObject(const QString &name, PvlObjectIterator beg, PvlObjectIterator end)
Find the index of object with a specified name, between two indexes.
Definition: PvlObject.h:274
NormModel.h
Isis::IException
Isis exception class.
Definition: IException.h:91
Isis::PhotoModel::SetStandardConditions
virtual void SetStandardConditions(bool standard)
Sets whether standard conditions will be used.
Definition: PhotoModel.cpp:50
Isis::AtmosModel::AtmosAb
double AtmosAb() const
Return atmospheric Ab value.
Definition: AtmosModel.h:139
IException.h
Isis::NormModel::GetAtmosModel
AtmosModel * GetAtmosModel()
Definition: NormModel.h:69
Isis::NormModel::GetPhotoModel
PhotoModel * GetPhotoModel()
Definition: NormModel.h:66
Isis::AtmosModel::SetStandardConditions
virtual void SetStandardConditions(bool standard)
Used to calculate atmosphere at standard conditions.
Definition: AtmosModel.cpp:498
TopoAtmPlugin
Isis::NormModel * TopoAtmPlugin(Isis::Pvl &pvl, Isis::PhotoModel &pmodel, Isis::AtmosModel &amodel)
Definition: TopoAtm.cpp:230
Isis::TopoAtm::NormModelAlgorithm
virtual void NormModelAlgorithm(double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
Definition: TopoAtm.h:80
Isis::IString
Adds specific functionality to C++ strings.
Definition: IString.h:165
Isis::AtmosModel::CalcAtmEffect
void CalcAtmEffect(double pha, double inc, double ema, double *pstd, double *trans, double *trans0, double *sbar, double *transs)
Calculate the atmospheric scattering effect using photometric angle information.
Definition: AtmosModel.cpp:475
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::IException::User
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....
Definition: IException.h:126