Isis Developer Reference
AlbedoAtm.h
Go to the documentation of this file.
1 #ifndef AlbedoAtm_h
2 #define AlbedoAtm_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include "NormModel.h"
11 
12 namespace Isis {
13  class Pvl;
14 
38  class AlbedoAtm : public NormModel {
39  public:
40  AlbedoAtm(Pvl &pvl, PhotoModel &pmodel, AtmosModel &amodel);
42  virtual ~AlbedoAtm() {};
43 
44  protected:
56  virtual void NormModelAlgorithm(double pha, double inc, double ema,
57  double dn, double &albedo, double &mult, double &base) {};
58  virtual void NormModelAlgorithm(double pha, double inc, double ema,
59  double deminc, double demema, double dn, double &albedo,
60  double &mult, double &base);
61 
62  private:
64  void SetNormPharef(const double pharef);
65  void SetNormIncref(const double incref);
66  void SetNormEmaref(const double emaref);
67 
68  double p_normPsurfref;
69  double p_normPharef;
70  double p_normIncref;
71  double p_normEmaref;
72  double p_normPstdref;
73  double p_normAhref;
74  double p_normMunotref;
75  double p_normTransref;
76  double p_normTrans0ref;
77  double p_normTranss;
78  double p_normSbar;
79  };
80 };
81 
82 #endif
Isis::AlbedoAtm::NormModelAlgorithm
virtual void NormModelAlgorithm(double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
Performs the normalization.
Definition: AlbedoAtm.h:56
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::IException::Unknown
@ Unknown
A type of error that cannot be classified as any of the other error types.
Definition: IException.h:118
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
NumericalApproximation.h
Isis::AlbedoAtm::~AlbedoAtm
virtual ~AlbedoAtm()
Empty Destructor.
Definition: AlbedoAtm.h:42
Isis::toString
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
IString.h
AlbedoAtm.h
Isis::AlbedoAtm::AlbedoAtm
AlbedoAtm(Pvl &pvl, PhotoModel &pmodel, AtmosModel &amodel)
Constructs AlbedoAtm object using a Pvl, PhotoModel, and AtmosModel.
Definition: AlbedoAtm.cpp:23
Isis::PvlObject::Traverse
@ Traverse
Search child objects.
Definition: PvlObject.h:158
Isis::NormModel
Definition: NormModel.h:36
Isis::AlbedoAtm
Albedo normalization with atmosphere.
Definition: AlbedoAtm.h:38
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::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
AlbedoAtmPlugin
Isis::NormModel * AlbedoAtmPlugin(Isis::Pvl &pvl, Isis::PhotoModel &pmodel, Isis::AtmosModel &amodel)
Definition: AlbedoAtm.cpp:228
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