Isis Developer Reference
MoonAlbedo.h
Go to the documentation of this file.
1 #ifndef MoonAlbedo_h
2 #define MoonAlbedo_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include "NormModel.h"
11 
12 namespace Isis {
13  class Pvl;
14 
25  class MoonAlbedo : public NormModel {
26  public:
27  MoonAlbedo(Pvl &pvl, PhotoModel &pmodel);
28  virtual ~MoonAlbedo() {};
29 
30  protected:
31  virtual void NormModelAlgorithm(double pha, double inc, double ema,
32  double dn, double &albedo, double &mult, double &base) {};
33  virtual void NormModelAlgorithm(double pha, double inc, double ema,
34  double deminc, double demema, double dn, double &albedo,
35  double &mult, double &base);
36 
37  private:
40  void SetNormD(const double d);
41  void SetNormE(const double e);
42  void SetNormF(const double f);
43  void SetNormG2(const double g2);
44  void SetNormXmul(const double xmul);
45  void SetNormWl(const double wl);
46  void SetNormH(const double h);
47  void SetNormBsh1(const double bsh1);
48  void SetNormXb1(const double xb1);
49  void SetNormXb2(const double xb2);
50 
51  double p_normD;
52  double p_normE;
53  double p_normF;
54  double p_normG2;
55  double p_normXmul;
56  double p_normWl;
57  double p_normH;
58  double p_normBsh1;
59  double p_normXb1;
60  double p_normXb2;
61  double p_normF1;
62  double p_normG2sq;
63  double p_normPg30;
64  double p_normBc1;
65  double p_normFbc3;
66  double p_normC3;
67  double p_normPg32;
68  double p_normBshad3;
69  };
70 };
71 
72 #endif
Isis::MoonAlbedo::MoonAlbedo
MoonAlbedo(Pvl &pvl, PhotoModel &pmodel)
Definition: MoonAlbedo.cpp:16
MoonAlbedo.h
Isis::PhotoModel
Definition: PhotoModel.h:41
Isis::PI
const double PI
The mathematical constant PI.
Definition: Constants.h:40
SpecialPixel.h
Isis::IException::Unknown
@ Unknown
A type of error that cannot be classified as any of the other error types.
Definition: IException.h:118
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::PvlObject::Traverse
@ Traverse
Search child objects.
Definition: PvlObject.h:158
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
MoonAlbedoPlugin
Isis::NormModel * MoonAlbedoPlugin(Isis::Pvl &pvl, Isis::PhotoModel &pmodel)
Definition: MoonAlbedo.cpp:328
Isis::NULL8
const double NULL8
Definition: SpecialPixel.h:94
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::MoonAlbedo::NormModelAlgorithm
virtual void NormModelAlgorithm(double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
Definition: MoonAlbedo.h:31
IException.h
Isis::NormModel::p_normWavelength
double p_normWavelength
Definition: NormModel.h:73
Isis::NormModel::GetPhotoModel
PhotoModel * GetPhotoModel()
Definition: NormModel.h:66
Isis::MoonAlbedo::~MoonAlbedo
virtual ~MoonAlbedo()
Definition: MoonAlbedo.h:28
Isis::MoonAlbedo
Albedo dependent phase function normalization for the Moon.
Definition: MoonAlbedo.h:25
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