Isis 3 Programmer Reference
Isis::NormModel Class Referenceabstract

#include <NormModel.h>

Inheritance diagram for Isis::NormModel:
Inheritance graph
Collaboration diagram for Isis::NormModel:
Collaboration graph

Public Member Functions

 NormModel (Pvl &pvl, PhotoModel &pmodel)
 Create a NormModel object. More...
 
 NormModel (Pvl &pvl, PhotoModel &pmodel, AtmosModel &amodel)
 Create a NormModel object. 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)=0
 
virtual void NormModelAlgorithm (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base)=0
 
void SetAlgorithmName (std::string name)
 
PhotoModelGetPhotoModel ()
 
AtmosModelGetAtmosModel ()
 

Protected Attributes

double p_normWavelength
 

Private Attributes

std::string p_normAlgorithmName
 
PhotoModelp_normPM
 
AtmosModelp_normAM
 

Detailed Description

Author
1998-12-21 Randy Kirk
History:
2007-08-15 Steven Lambright - Refactored
History:
2008-03-07 Janet Barrett - Added p_normWavelength variable and SetNormWavelength method to allow an application to set this value to the BandBin Center keyword value for use with MoonAlbedo normalization. The application needs to call the SetPhotomWl method in the Photometry class and the SetNormWavelength method is called from the Photometry class.
History:
2008-06-18 Steven Koechle - Fixed Documentation Errors
History:
2008-07-09 Steven Lambright - Fixed unit test

Definition at line 36 of file NormModel.h.

Constructor & Destructor Documentation

◆ NormModel() [1/2]

Isis::NormModel::NormModel ( Pvl pvl,
PhotoModel pmodel 
)

Create a NormModel object.

Because this is a pure virtual class you can not create a NormModel class directly. Instead, see the NormModelFactory class.

Parameters
pvlA pvl object containing a valid NormModel specification
See also
normalizationModels.doc

Definition at line 23 of file NormModel.cpp.

◆ NormModel() [2/2]

Isis::NormModel::NormModel ( Pvl pvl,
PhotoModel pmodel,
AtmosModel amodel 
)

Create a NormModel object.

Because this is a pure virtual class you can not create a NormModel class directly. Instead, see the NormModelFactory class.

Parameters
pvlA pvl object containing a valid NormModel specification
See also
normalizationModels.doc

Definition at line 39 of file NormModel.cpp.

Member Function Documentation

◆ AlgorithmName()

std::string Isis::NormModel::AlgorithmName ( ) const
inline

Return normalization algorithm name.

Definition at line 43 of file NormModel.h.

◆ CalcNrmAlbedo() [1/2]

void Isis::NormModel::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.

Parameters
phainput phase angle
incinput incidence angle for ellipsoid
emainput emission angle for ellipsoid
demincinput incidence angle for dem
dememainput emission angle for dem
dninput albedo value

Definition at line 89 of file NormModel.cpp.

◆ CalcNrmAlbedo() [2/2]

void Isis::NormModel::CalcNrmAlbedo ( double  pha,
double  inc,
double  ema,
double  dn,
double &  albedo,
double &  mult,
double &  base 
)

Calculate the albedo normalization.

Calculate the normalization albedo using photometric angle information.

Parameters
phainput phase angle
incinput incidence angle
emainput emission angle
dninput albedo value

Definition at line 64 of file NormModel.cpp.

Referenced by Isis::Photometry::Compute().

◆ SetNormWavelength()

void Isis::NormModel::SetNormWavelength ( double  wavelength)
virtual

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 51 of file NormModel.cpp.

Referenced by Isis::Photometry::SetPhotomWl().


The documentation for this class was generated from the following files: