Isis 3 Programmer Reference
|
Albedo normalization with atmosphere. More...
#include <AlbedoAtm.h>
Public Member Functions | |
AlbedoAtm (Pvl &pvl, PhotoModel &pmodel, AtmosModel &amodel) | |
Constructs AlbedoAtm object using a Pvl, PhotoModel, and AtmosModel. More... | |
virtual | ~AlbedoAtm () |
Empty Destructor. More... | |
std::string | AlgorithmName () const |
Return normalization algorithm name. More... | |
void | CalcNrmAlbedo (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base) |
Calculate the albedo normalization. More... | |
void | CalcNrmAlbedo (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base) |
Calculate the normalization albedo using photometric angle information. More... | |
virtual void | SetNormWavelength (double wavelength) |
Set the wavelength parameter. More... | |
Protected Member Functions | |
virtual void | NormModelAlgorithm (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base) |
Performs the normalization. More... | |
virtual void | NormModelAlgorithm (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base) |
Performs the normalization. More... | |
void | SetAlgorithmName (std::string name) |
PhotoModel * | GetPhotoModel () |
AtmosModel * | GetAtmosModel () |
Protected Attributes | |
double | p_normWavelength |
Private Member Functions | |
void | SetNormPharef (const double pharef) |
Set parameters needed for albedo normalization. More... | |
void | SetNormIncref (const double incref) |
Set the normalization function parameter. More... | |
void | SetNormEmaref (const double emaref) |
Set the normalization function parameter. More... | |
Private Attributes | |
double | p_normPsurfref |
??? More... | |
double | p_normPharef |
The reference phase angle. More... | |
double | p_normIncref |
The reference incidence angle. More... | |
double | p_normEmaref |
The reference emission angle. More... | |
double | p_normPstdref |
??? More... | |
double | p_normAhref |
??? More... | |
double | p_normMunotref |
??? More... | |
double | p_normTransref |
??? More... | |
double | p_normTrans0ref |
??? More... | |
double | p_normTranss |
??? More... | |
double | p_normSbar |
??? More... | |
Albedo normalization with atmosphere.
2007-08-15 Steven Lambright - Refactored code and fixed unit test
2008-06-18 Christopher Austin - Fixed documentation errors
2008-11-05 Jeannie Walldren - Modified references to NumericalMethods class.
2008-11-07 Jeannie Walldren - Fixed documentation.
2009-05-11 Janet Barrett - Fixed so that the NormModelAlgorithm supporting DEM input is the empty function. DEM input is not yet supported.
2010-11-10 Janet Barrett - Added reference parameters for phase and emission so user can specify normalization conditions in initialization
2010-11-30 Janet Barrett - Added ability to use photometric angles from the ellipsoid and the DEM
2017-07-03 Makayla Shepherd - Updated documentation. References #4807.
Definition at line 54 of file AlbedoAtm.h.
Isis::AlbedoAtm::AlbedoAtm | ( | Pvl & | pvl, |
PhotoModel & | pmodel, | ||
AtmosModel & | amodel | ||
) |
Constructs AlbedoAtm object using a Pvl, PhotoModel, and AtmosModel.
pvl | |
pmodel | |
amodel |
Definition at line 23 of file AlbedoAtm.cpp.
References Isis::AtmosModel::AtmosAhSpline(), Isis::AtmosModel::CalcAtmEffect(), Isis::PhotoModel::CalcSurfAlbedo(), Isis::NumericalApproximation::Extrapolate, Isis::PvlObject::findObject(), Isis::AtmosModel::GenerateAhTable(), Isis::PvlContainer::hasKeyword(), p_normAhref, p_normEmaref, p_normIncref, p_normMunotref, p_normPharef, p_normPstdref, p_normPsurfref, p_normSbar, p_normTrans0ref, p_normTransref, p_normTranss, Isis::PI, SetNormEmaref(), SetNormIncref(), SetNormPharef(), Isis::PhotoModel::SetStandardConditions(), Isis::AtmosModel::SetStandardConditions(), and Isis::PvlObject::Traverse.
|
inlinevirtual |
Empty Destructor.
Definition at line 58 of file AlbedoAtm.h.
|
inlineinherited |
Return normalization algorithm name.
Definition at line 59 of file NormModel.h.
|
inherited |
Calculate the albedo normalization.
Calculate the normalization albedo using photometric angle information.
pha | input phase angle |
inc | input incidence angle |
ema | input emission angle |
dn | input albedo value |
Definition at line 58 of file NormModel.cpp.
Referenced by Isis::Photometry::Compute().
|
inherited |
Calculate the normalization albedo using photometric angle information.
pha | input phase angle |
inc | input incidence angle for ellipsoid |
ema | input emission angle for ellipsoid |
deminc | input incidence angle for dem |
demema | input emission angle for dem |
dn | input albedo value |
Definition at line 83 of file NormModel.cpp.
|
inlineprotectedvirtual |
Performs the normalization.
pha | The phase angle. |
inc | The incidence angle. |
ema | The emission angle. |
dn | The DN value |
albedo | ??? |
mult | The multiplier of the image |
base | The base of the image |
Implements Isis::NormModel.
Definition at line 72 of file AlbedoAtm.h.
|
protectedvirtual |
Performs the normalization.
phase | The phase angle. |
incidence | The incidence angle. |
emission | The emission angle. |
demincidence | The local incidence angle |
dememission | The local emission angle |
dn | The DN value |
albedo | ??? |
mult | The multiplier of the image |
base | The base of the image |
Implements Isis::NormModel.
Definition at line 86 of file AlbedoAtm.cpp.
References _FILEINFO_, Isis::AtmosModel::AtmosAb(), Isis::AtmosModel::AtmosAhSpline(), Isis::AtmosModel::CalcAtmEffect(), Isis::PhotoModel::CalcSurfAlbedo(), Isis::NumericalApproximation::Extrapolate, p_normAhref, p_normMunotref, p_normPstdref, p_normPsurfref, p_normSbar, p_normTrans0ref, p_normTransref, Isis::PI, and Isis::IException::Unknown.
|
private |
Set the normalization function parameter.
This is the reference emission angle to which the image photometry will be normalized. This parameter is limited to values that are >=0 and <90.
emaref | Normalization function parameter, default is 0.0 |
Definition at line 217 of file AlbedoAtm.cpp.
References _FILEINFO_, p_normEmaref, Isis::toString(), and Isis::IException::User.
Referenced by AlbedoAtm().
|
private |
Set the normalization function parameter.
This is the reference incidence angle to which the image photometry will be normalized. This parameter is limited to values that are >=0 and <90.
incref | Normalization function parameter, default is 0.0 |
Definition at line 198 of file AlbedoAtm.cpp.
References _FILEINFO_, p_normIncref, Isis::toString(), and Isis::IException::User.
Referenced by AlbedoAtm().
|
private |
Set parameters needed for albedo normalization.
Set the normalization function parameter.
This is the reference phase angle to which the image photometry will be normalized. This parameter is limited to values that are >=0 and <180.
pharef | Normalization function parameter, default is 0.0 |
Definition at line 179 of file AlbedoAtm.cpp.
References _FILEINFO_, p_normPharef, Isis::toString(), and Isis::IException::User.
Referenced by AlbedoAtm().
|
virtualinherited |
Set the wavelength parameter.
This value is obtained from the BandBin Center keyword of the image. This must be set by the application.
Definition at line 45 of file NormModel.cpp.
Referenced by Isis::Photometry::SetPhotomWl().
|
private |
|
private |
The reference emission angle.
Definition at line 87 of file AlbedoAtm.h.
Referenced by AlbedoAtm(), and SetNormEmaref().
|
private |
The reference incidence angle.
Definition at line 86 of file AlbedoAtm.h.
Referenced by AlbedoAtm(), and SetNormIncref().
|
private |
|
private |
The reference phase angle.
Definition at line 85 of file AlbedoAtm.h.
Referenced by AlbedoAtm(), and SetNormPharef().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |