Isis 3 Programmer Reference
|
#include <PhotoModel.h>
Public Member Functions | |
PhotoModel (Pvl &pvl) | |
Create a PhotoModel object. | |
QString | AlgorithmName () const |
Return algorithm name found in Pvl file from constructor. | |
virtual void | SetStandardConditions (bool standard) |
Sets whether standard conditions will be used. | |
bool | StandardConditions () const |
Returns true if standard conditions are used, i.e., if SetStandardConditions(true) has been called. This is initialized to false in the constructor. | |
double | PhtTopder (double phase, double incidence, double emission) |
Obtain topographic derivative of an arbitrary photometric function. | |
double | CalcSurfAlbedo (double pha, double inc, double ema) |
Calculate the surface brightness using photometric angle information. | |
virtual void | SetPhotoL (const double l) |
double | PhotoL () const |
Return photometric L value. | |
virtual void | SetPhotoK (const double k) |
double | PhotoK () const |
Return photometric K value. | |
virtual void | SetPhotoHg1 (const double hg1) |
double | PhotoHg1 () const |
Return photometric Hg1 value. | |
virtual void | SetPhotoHg2 (const double hg2) |
double | PhotoHg2 () const |
Return photometric Hg2 value. | |
virtual void | SetPhotoBh (const double bh) |
double | PhotoBh () const |
Return photometric Bh value. | |
virtual void | SetPhotoCh (const double ch) |
double | PhotoCh () const |
Return photometric Ch value. | |
virtual void | SetPhotoWh (const double wh) |
double | PhotoWh () const |
Return photometric Wh value. | |
virtual void | SetPhotoHh (const double hh) |
double | PhotoHh () const |
Return photometric Hh value. | |
virtual void | SetPhotoB0 (const double b0) |
double | PhotoB0 () const |
Return photometric B0 value. | |
virtual void | SetPhotoTheta (const double theta) |
double | PhotoTheta () const |
Return photometric Theta value. | |
virtual void | SetPhoto0B0Standard (const QString &b0standard) |
QString | Photo0B0Standard () const |
Return photometric B0 standardization value. | |
double | Hfunc (double u, double gamma) |
Hapke's approximation to Chandra's H function. | |
virtual void | SetPhotoPhaseList (const QString) |
virtual void | SetPhotoKList (const QString) |
virtual void | SetPhotoLList (const QString) |
virtual void | SetPhotoPhaseCurveList (const QString) |
std::vector< double > | PhotoPhaseList () const |
Return photometric phase angle list. | |
std::vector< double > | PhotoKList () const |
Return photometric k value list. | |
std::vector< double > | PhotoLList () const |
Return photometric l value list. | |
std::vector< double > | PhotoPhaseCurveList () const |
Return photometric phase curve value list. | |
Static Public Member Functions | |
static double | PhtAcos (double cosang) |
Obtain arccosine of input value. | |
Protected Member Functions | |
virtual double | PhotoModelAlgorithm (double phase, double incidence, double emission)=0 |
Protected Attributes | |
double | p_photoL |
double | p_photoK |
double | p_photoHg1 |
double | p_photoHg2 |
double | p_photoBh |
double | p_photoCh |
double | p_photoCott |
double | p_photoCot2t |
double | p_photoTant |
double | p_photoSr |
double | p_photoOsr |
QString | p_algName |
QString | p_photo0B0Standard |
double | p_photoWh |
double | p_photoHh |
double | p_photoB0 |
double | p_photoB0save |
double | p_photoTheta |
double | p_photoThetaold |
std::vector< double > | p_photoPhaseList |
std::vector< double > | p_photoKList |
std::vector< double > | p_photoLList |
std::vector< double > | p_photoPhaseCurveList |
int | p_photoPhaseAngleCount |
NumericalApproximation | p_photoKSpline |
NumericalApproximation | p_photoLSpline |
NumericalApproximation | p_photoBSpline |
Private Attributes | |
QString | p_photoAlgorithmName |
Unique name of the photometric model. | |
bool | p_standardConditions |
Indicates whether standard conditions are used. | |
1998-12-21 Randy Kirk - USGS, Flagstaff - Original code
2007-02-20 Janet Barrett - Imported from Isis2.
2007-07-31 Steven Lambright - Moved children methods out of this class and into the children classes
2008-03-07 Janet Barrett - Moved variables and related methods that pertain to Hapke specific parameters to this class from the HapkeHen class. Also added the code to set standard conditions.
2008-06-18 Steven Koechle - Fixed Documentation Errors
2008-07-09 Steven Lambright - Fixed unit test
2008-10-17 Steven Lambright - Moved Hapke-specific methods out of this class and into children classes.
2008-11-05 Jeannie Walldren - Moved PhtAcos() from NumericalMethods class.
Definition at line 41 of file PhotoModel.h.
Isis::PhotoModel::PhotoModel | ( | Pvl & | pvl | ) |
Create a PhotoModel object.
Because this is a pure virtual class you can not create a PhotoModel class directly. Instead, see the PhotoModelFactory class.
pvl | A pvl object containing a valid PhotoModel specification |
Definition at line 26 of file PhotoModel.cpp.
References Isis::PvlContainer::hasKeyword(), p_photoAlgorithmName, p_standardConditions, Isis::PvlObject::Traverse, and Isis::IException::User.
|
inlinevirtual |
Definition at line 44 of file PhotoModel.h.
|
inline |
Return algorithm name found in Pvl file from constructor.
Definition at line 47 of file PhotoModel.h.
References p_photoAlgorithmName.
Referenced by Isis::AtmosModel::GenerateAhTable().
double Isis::PhotoModel::CalcSurfAlbedo | ( | double | pha, |
double | inc, | ||
double | ema ) |
Calculate the surface brightness using photometric angle information.
pha | Phase angle |
inc | Incidence angle |
ema | Emission angle |
Definition at line 177 of file PhotoModel.cpp.
Referenced by Isis::Albedo::Albedo(), Isis::AlbedoAtm::AlbedoAtm(), Isis::Albedo::NormModelAlgorithm(), Isis::AlbedoAtm::NormModelAlgorithm(), and PhtTopder().
|
inline |
Hapke's approximation to Chandra's H function.
Definition at line 168 of file PhotoModel.h.
|
inline |
Return photometric B0 standardization value.
Definition at line 163 of file PhotoModel.h.
|
inline |
Return photometric B0 value.
Definition at line 143 of file PhotoModel.h.
|
inline |
Return photometric Bh value.
Definition at line 107 of file PhotoModel.h.
|
inline |
Return photometric Ch value.
Definition at line 116 of file PhotoModel.h.
|
inline |
Return photometric Hg1 value.
Definition at line 89 of file PhotoModel.h.
|
inline |
Return photometric Hg2 value.
Definition at line 98 of file PhotoModel.h.
|
inline |
Return photometric Hh value.
Definition at line 134 of file PhotoModel.h.
|
inline |
Return photometric K value.
Definition at line 80 of file PhotoModel.h.
|
inline |
Return photometric k value list.
Definition at line 183 of file PhotoModel.h.
|
inline |
Return photometric L value.
Definition at line 71 of file PhotoModel.h.
|
inline |
Return photometric l value list.
Definition at line 188 of file PhotoModel.h.
|
protectedpure virtual |
Implemented in Isis::LunarLambert, Isis::LunarLambertEmpirical, Isis::Minnaert, and Isis::MinnaertEmpirical.
|
inline |
Return photometric phase curve value list.
Definition at line 193 of file PhotoModel.h.
|
inline |
Return photometric phase angle list.
Definition at line 178 of file PhotoModel.h.
|
inline |
Return photometric Theta value.
Definition at line 152 of file PhotoModel.h.
|
inline |
Return photometric Wh value.
Definition at line 125 of file PhotoModel.h.
|
static |
Obtain arccosine of input value.
If the input value is outside of the valid range (-1 to 1), then obtain the arccosine of the closest valid value.
cosang | input value to obtain arccosine of (in radians) |
Definition at line 150 of file PhotoModel.cpp.
Referenced by PhtTopder().
double Isis::PhotoModel::PhtTopder | ( | double | phase, |
double | incidence, | ||
double | emission ) |
Obtain topographic derivative of an arbitrary photometric function.
phase | Input phase angle |
incidence | Input incidence angle |
emission | Input emission angle |
Definition at line 64 of file PhotoModel.cpp.
References CalcSurfAlbedo(), PhtAcos(), and Isis::PI.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 158 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 138 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 102 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 111 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 84 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 93 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 129 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Minnaert.
Definition at line 75 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::MinnaertEmpirical.
Definition at line 173 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::LunarLambert.
Definition at line 66 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::LunarLambertEmpirical.
Definition at line 174 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::LunarLambertEmpirical, and Isis::MinnaertEmpirical.
Definition at line 175 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::LunarLambertEmpirical, and Isis::MinnaertEmpirical.
Definition at line 172 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 147 of file PhotoModel.h.
|
inlinevirtual |
Reimplemented in Isis::Hapke.
Definition at line 120 of file PhotoModel.h.
|
virtual |
Sets whether standard conditions will be used.
standard | True if standard conditions are used. |
Reimplemented in Isis::Hapke.
Definition at line 50 of file PhotoModel.cpp.
References p_standardConditions.
Referenced by Isis::Albedo::Albedo(), and Isis::AlbedoAtm::AlbedoAtm().
|
inline |
Returns true if standard conditions are used, i.e., if SetStandardConditions(true) has been called. This is initialized to false in the constructor.
Definition at line 53 of file PhotoModel.h.
References p_standardConditions.
|
protected |
Definition at line 212 of file PhotoModel.h.
|
protected |
Definition at line 213 of file PhotoModel.h.
|
private |
Unique name of the photometric model.
Definition at line 232 of file PhotoModel.h.
Referenced by AlgorithmName(), and PhotoModel().
|
protected |
Definition at line 216 of file PhotoModel.h.
|
protected |
Definition at line 217 of file PhotoModel.h.
|
protected |
Definition at line 205 of file PhotoModel.h.
|
protected |
Definition at line 228 of file PhotoModel.h.
|
protected |
Definition at line 206 of file PhotoModel.h.
|
protected |
Definition at line 208 of file PhotoModel.h.
|
protected |
Definition at line 207 of file PhotoModel.h.
|
protected |
Definition at line 203 of file PhotoModel.h.
|
protected |
Definition at line 204 of file PhotoModel.h.
|
protected |
Definition at line 215 of file PhotoModel.h.
|
protected |
Definition at line 202 of file PhotoModel.h.
|
protected |
Definition at line 222 of file PhotoModel.h.
|
protected |
Definition at line 226 of file PhotoModel.h.
|
protected |
Definition at line 201 of file PhotoModel.h.
|
protected |
Definition at line 223 of file PhotoModel.h.
|
protected |
Definition at line 227 of file PhotoModel.h.
|
protected |
Definition at line 211 of file PhotoModel.h.
|
protected |
Definition at line 225 of file PhotoModel.h.
|
protected |
Definition at line 224 of file PhotoModel.h.
|
protected |
Definition at line 221 of file PhotoModel.h.
|
protected |
Definition at line 210 of file PhotoModel.h.
|
protected |
Definition at line 209 of file PhotoModel.h.
|
protected |
Definition at line 218 of file PhotoModel.h.
|
protected |
Definition at line 219 of file PhotoModel.h.
|
protected |
Definition at line 214 of file PhotoModel.h.
|
private |
Indicates whether standard conditions are used.
Definition at line 234 of file PhotoModel.h.
Referenced by PhotoModel(), SetStandardConditions(), and StandardConditions().