Isis Developer Reference
Hapke.h
Go to the documentation of this file.
1 #ifndef Hapke_h
2 #define Hapke_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include <string>
11 #include "PhotoModel.h"
12 
13 namespace Isis {
14  class Pvl;
15 
47  class Hapke : public PhotoModel {
48  public:
49  Hapke(Pvl &pvl);
50  virtual ~Hapke() {};
51 
52  void SetPhotoHg1(const double hg1);
54 /* inline double PhotoHg1() const {
55  return p_photoHg1;
56  };*/
57 
58  void SetPhotoHg2(const double hg2);
60 /* inline double PhotoHg2() const {
61  return p_photoHg2;
62  };*/
63 
64  void SetPhotoBh(const double bh);
66 /* inline double PhotoBh() const {
67  return p_photoBh;
68  };*/
69 
70  void SetPhotoCh(const double ch);
72 /* inline double PhotoCh() const {
73  return p_photoCh;
74  };*/
75 
76  void SetPhotoWh(const double wh);
78 /* inline double PhotoWh() const {
79  return p_photoWh;
80  };*/
81 
82  void SetPhotoHh(const double hh);
84 /* inline double PhotoHh() const {
85  return p_photoHh;
86  };*/
87 
88  void SetPhotoB0(const double b0);
90 /* inline double PhotoB0() const {
91  return p_photoB0;
92  };*/
93 
94  void SetPhotoTheta(const double theta);
96 /* inline double PhotoTheta() const {
97  return p_photoTheta;
98  };*/
99 
100  void SetOldTheta(double theta) {
101  p_photoThetaold = theta;
102  }
103 
104 
105  void SetPhoto0B0Standard(const QString &b0standard);
106 
107  void SetStandardConditions(bool standard);
108 
109  virtual double PhotoModelAlgorithm(double phase, double incidence,
110  double emission);
111 
112  protected:
113  private:
114  };
115 };
116 
117 #endif
Isis::Hapke::SetPhotoHh
void SetPhotoHh(const double hh)
Return photometric Wh value.
Definition: Hapke.cpp:390
Isis::PhotoModel::p_photoOsr
double p_photoOsr
Definition: PhotoModel.h:211
Isis::PhotoModel
Definition: PhotoModel.h:41
Isis::PI
const double PI
The mathematical constant PI.
Definition: Constants.h:40
Isis::PhotoModel::p_algName
QString p_algName
Definition: PhotoModel.h:212
Isis::Hapke
Hapke-Henyey-Greenstein photometric model.
Definition: Hapke.h:47
Isis::PhotoModel::p_photoTant
double p_photoTant
Definition: PhotoModel.h:209
Isis::PhotoModel::p_photoB0save
double p_photoB0save
Definition: PhotoModel.h:217
Isis::PhotoModel::AlgorithmName
QString AlgorithmName() const
Return algorithm name found in Pvl file from constructor.
Definition: PhotoModel.h:47
PvlGroup.h
Isis::PhotoModel::p_photoHh
double p_photoHh
Definition: PhotoModel.h:215
Hapke.h
PhotoModel.h
Isis::PhotoModel::p_photoB0
double p_photoB0
Definition: PhotoModel.h:216
Isis::PvlContainer::hasKeyword
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Definition: PvlContainer.cpp:159
Isis::PhotoModel::p_photoThetaold
double p_photoThetaold
Definition: PhotoModel.h:219
Isis::Pvl
Container for cube-like labels.
Definition: Pvl.h:119
Isis::Hapke::SetPhoto0B0Standard
void SetPhoto0B0Standard(const QString &b0standard)
Determine if the Hapke opposition surge component is initialized to zero during the SetStandardCondit...
Definition: Hapke.cpp:423
Isis::Hapke::SetStandardConditions
void SetStandardConditions(bool standard)
Sets whether standard conditions will be used.
Definition: Hapke.cpp:454
Isis::PhotoModel::p_photoTheta
double p_photoTheta
Definition: PhotoModel.h:218
Isis::PhotoModel::p_photoCott
double p_photoCott
Definition: PhotoModel.h:207
IString.h
Isis::PhotoModel::p_photoHg2
double p_photoHg2
Definition: PhotoModel.h:204
Isis::PhotoModel::p_photoBh
double p_photoBh
Definition: PhotoModel.h:205
Isis::PvlObject::Traverse
@ Traverse
Search child objects.
Definition: PvlObject.h:158
Isis::IString::UpCase
IString UpCase()
Converst any lower case characters in the object IString with uppercase characters.
Definition: IString.cpp:617
Isis::PvlGroup
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
Pvl.h
Isis::Hapke::SetPhotoTheta
void SetPhotoTheta(const double theta)
Return photometric B0 value.
Definition: Hapke.cpp:444
_FILEINFO_
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
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
Isis::PhotoModel::p_photoSr
double p_photoSr
Definition: PhotoModel.h:210
Isis::IException
Isis exception class.
Definition: IException.h:91
Isis::PhotoModel::p_photoWh
double p_photoWh
Definition: PhotoModel.h:214
Isis::Hapke::SetPhotoHg2
void SetPhotoHg2(const double hg2)
Return photometric Hg1 value.
Definition: Hapke.cpp:324
Isis::Hapke::Hapke
Hapke(Pvl &pvl)
Definition: Hapke.cpp:19
Isis::PhotoModel::SetStandardConditions
virtual void SetStandardConditions(bool standard)
Sets whether standard conditions will be used.
Definition: PhotoModel.cpp:50
IException.h
std
Namespace for the standard library.
Isis::Hapke::SetPhotoWh
void SetPhotoWh(const double wh)
Return photometric Ch value.
Definition: Hapke.cpp:374
Isis::Hapke::~Hapke
virtual ~Hapke()
Definition: Hapke.h:50
HapkePlugin
Isis::PhotoModel * HapkePlugin(Isis::Pvl &pvl)
Definition: Hapke.cpp:467
Isis::PhotoModel::p_photo0B0Standard
QString p_photo0B0Standard
Definition: PhotoModel.h:213
Isis::PhotoModel::Hfunc
double Hfunc(double u, double gamma)
Hapke's approximation to Chandra's H function.
Definition: PhotoModel.h:168
Isis::IString
Adds specific functionality to C++ strings.
Definition: IString.h:165
Constants.h
Isis::Hapke::SetPhotoB0
void SetPhotoB0(const double b0)
Return photometric Hh value.
Definition: Hapke.cpp:406
Isis::Hapke::SetPhotoCh
void SetPhotoCh(const double ch)
Return photometric Bh value.
Definition: Hapke.cpp:358
Isis::PhotoModel::p_photoHg1
double p_photoHg1
Definition: PhotoModel.h:203
Isis::PhotoModel::p_photoCot2t
double p_photoCot2t
Definition: PhotoModel.h:208
Isis::Hapke::SetOldTheta
void SetOldTheta(double theta)
Return photometric Theta value.
Definition: Hapke.h:100
Isis::Hapke::SetPhotoHg1
void SetPhotoHg1(const double hg1)
Set the Hapke Henyey Greenstein coefficient for the single particle phase function.
Definition: Hapke.cpp:307
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::Hapke::PhotoModelAlgorithm
virtual double PhotoModelAlgorithm(double phase, double incidence, double emission)
Definition: Hapke.cpp:109
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
Isis::PhotoModel::p_photoCh
double p_photoCh
Definition: PhotoModel.h:206
Isis::Hapke::SetPhotoBh
void SetPhotoBh(const double bh)
Return photometric Hg2 value.
Definition: Hapke.cpp:341