USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::MoonAlbedo Class Reference

Albedo dependent phase function normalization for the Moon. More...

#include <MoonAlbedo.h>

Inheritance diagram for Isis::MoonAlbedo:
Inheritance graph
Collaboration diagram for Isis::MoonAlbedo:
Collaboration graph

Public Member Functions

 MoonAlbedo (Pvl &pvl, PhotoModel &pmodel)
 
std::string AlgorithmName () const
 Return normalization algorithm name.
 
void CalcNrmAlbedo (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
 Calculate the albedo normalization.
 
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.
 
virtual void SetNormWavelength (double wavelength)
 Set the wavelength parameter.
 

Protected Member Functions

virtual void NormModelAlgorithm (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
 
virtual void NormModelAlgorithm (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base)
 
void SetAlgorithmName (std::string name)
 
PhotoModelGetPhotoModel ()
 
AtmosModelGetAtmosModel ()
 

Protected Attributes

double p_normWavelength
 

Private Member Functions

void SetNormD (const double d)
 Set parameters needed for albedo dependent phase function normalization for the Moon.
 
void SetNormE (const double e)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormF (const double f)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormG2 (const double g2)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormXmul (const double xmul)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormWl (const double wl)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormH (const double h)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormBsh1 (const double bsh1)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormXb1 (const double xb1)
 Set the albedo dependent phase function normalization parameter.
 
void SetNormXb2 (const double xb2)
 Set the albedo dependent phase function normalization parameter.
 

Private Attributes

double p_normD
 
double p_normE
 
double p_normF
 
double p_normG2
 
double p_normXmul
 
double p_normWl
 
double p_normH
 
double p_normBsh1
 
double p_normXb1
 
double p_normXb2
 
double p_normF1
 
double p_normG2sq
 
double p_normPg30
 
double p_normBc1
 
double p_normFbc3
 
double p_normC3
 
double p_normPg32
 
double p_normBshad3
 

Detailed Description

Albedo dependent phase function normalization for the Moon.

Author
1998-12-21 Randy Kirk
History:
2010-11-30 Janet Barrett - Added ability to use photometric angles from the ellipsoid or the DEM

Definition at line 41 of file MoonAlbedo.h.

Member Function Documentation

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

Return normalization algorithm name.

Definition at line 59 of file NormModel.h.

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

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

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

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

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

void Isis::MoonAlbedo::SetNormBsh1 ( const double  bsh1)
private

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter is limited to values >= 0.

Parameters
bsh1Normalization function parameter, default is 0.08

Definition at line 289 of file MoonAlbedo.cpp.

References _FILEINFO_, and Isis::IException::User.

void Isis::MoonAlbedo::SetNormD ( const double  d)
private

Set parameters needed for albedo dependent phase function normalization for the Moon.

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter has no limits.

Parameters
dNormalization function parameter, default is 0.14

Definition at line 205 of file MoonAlbedo.cpp.

void Isis::MoonAlbedo::SetNormE ( const double  e)
private

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter has no limits.

Parameters
eNormalization function parameter, default is -0.4179

Definition at line 228 of file MoonAlbedo.cpp.

void Isis::MoonAlbedo::SetNormF ( const double  f)
private

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter has no limits.

Parameters
fNormalization function parameter, default is 0.55

Definition at line 239 of file MoonAlbedo.cpp.

void Isis::MoonAlbedo::SetNormG2 ( const double  g2)
private

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter has no limits.

Parameters
g2Normalization function parameter, default is 0.02

Definition at line 250 of file MoonAlbedo.cpp.

void Isis::MoonAlbedo::SetNormH ( const double  h)
private

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter is limited to non-zero values.

Parameters
hNormalization function parameter, default is 0.048

Definition at line 272 of file MoonAlbedo.cpp.

References _FILEINFO_, and Isis::IException::User.

void Isis::NormModel::SetNormWavelength ( double  wavelength)
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().

void Isis::MoonAlbedo::SetNormWl ( const double  wl)
private

Set the albedo dependent phase function normalization parameter.

This is the wavelength in micrometers of the image being normalized (found in the BandBin Center keyword of the image). This parameter has no limits.

Parameters
wlNormalization function parameter, default is 1.0

Definition at line 217 of file MoonAlbedo.cpp.

void Isis::MoonAlbedo::SetNormXb1 ( const double  xb1)
private

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter has no limits.

Parameters
xb1Normalization function parameter, default is -0.0817

Definition at line 306 of file MoonAlbedo.cpp.

void Isis::MoonAlbedo::SetNormXb2 ( const double  xb2)
private

Set the albedo dependent phase function normalization parameter.

This is an emperically derived coefficient. This parameter has no limits.

Parameters
xb2Normalization function parameter, default is 0.0081

Definition at line 317 of file MoonAlbedo.cpp.

void Isis::MoonAlbedo::SetNormXmul ( const double  xmul)
private

Set the albedo dependent phase function normalization parameter.

This parameter is used to convert radiance to reflectance or apply a calibration fudge factor. This parameter has no limits.

Parameters
xmulNormalization function parameter, default is 1.0

Definition at line 261 of file MoonAlbedo.cpp.


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