Isis 3.0 Developer's Reference (API) |
Home |
#include <Isotropic2.h>
Inherits Isis::AtmosModel.
Public Member Functions | |
Isotropic2 (Pvl &pvl, PhotoModel &pmodel) | |
virtual | ~Isotropic2 () |
void | CalcAtmEffect (double pha, double inc, double ema, double *pstd, double *trans, double *trans0, double *sbar, double *transs) |
Calculate the atmospheric scattering effect using photometric angle information. | |
virtual void | SetStandardConditions (bool standard) |
Used to calculate atmosphere at standard conditions. | |
void | GenerateAhTable () |
This method computes the values of the atmospheric Ah table and sets the properties of the atmospheric Ah spline. | |
void | GenerateHahgTables () |
This method computes the values of the atmospheric Hahg and Hahg0 tables and sets the properties of the atmospheric Hahg and Hahg0 splines. | |
void | GenerateHahgTablesShadow () |
This method is a modified version of the GenerateHahgTables method and is used solely for shadow modeling. | |
void | SetAtmosAtmSwitch (const int atmswitch) |
Set the switch that controls the function that will be integrated. | |
void | SetAtmosBha (const double bha) |
Set the Anisotropic Atmospheric function parameter. | |
void | SetAtmosHga (const double hga) |
Set the Hapke atmospheric function parameter. | |
void | SetAtmosInc (const double inc) |
Set the incidence angle. | |
void | SetAtmosNulneg (const string nulneg) |
Set the Atmospheric function parameter. | |
void | SetAtmosPhi (const double phi) |
Set the azimuth angle. | |
void | SetAtmosTau (const double tau) |
Set the Atmospheric function parameter. | |
void | SetAtmosTauref (const double tauref) |
Set the Atmospheric function parameter. | |
void | SetAtmosWha (const double wha) |
Set the Atmospheric function parameter. | |
void | SetAtmosHnorm (const double hnorm) |
Set the Atmospheric function parameter. | |
void | SetAtmosIord (const string offset) |
Set additive offset in fit. | |
void | SetAtmosEstTau (const string esttau) |
Estimate the optical depth tau using shadows. | |
string | AlgorithmName () const |
Return atmospheric algorithm name. | |
bool | AtmosAdditiveOffset () const |
Allow additive offset in fit? | |
double | AtmosHnorm () const |
Return atmospheric Hnorm value. | |
double | AtmosBha () const |
Return atmospheric Bha value. | |
double | AtmosTau () const |
Return atmospheric Tau value. | |
double | AtmosWha () const |
Return atmospheric Wha value. | |
double | AtmosHga () const |
Return atmospheric Hga value. | |
double | AtmosTauref () const |
Return atmospheric Tauref value. | |
bool | AtmosNulneg () const |
Return atmospheric Nulneg value. | |
double | AtmosAb () const |
Return atmospheric Ab value. | |
double | AtmosHahgsb () const |
Return atmospheric Hahgsb value. | |
int | AtmosNinc () const |
Return atmospheric Ninc value. | |
double | AtmosMunot () const |
Return atmospheric Munot value. | |
vector< double > | AtmosIncTable () |
Return atmospheric IncTable value. | |
vector< double > | AtmosAhTable () |
Return atmospheric AhTable value. | |
vector< double > | AtmosHahgtTable () |
Return atmospheric HahgtTable value. | |
vector< double > | AtmosHahgt0Table () |
Return atmospheric Hahgt0Table value. | |
NumericalApproximation | AtmosAhSpline () |
If GenerateAhTable() has been called this returns a clamped cubic spline of the data set (p_atmosIncTable, p_atmosAhTable) with first derivatives of the endpoints equal to 1.0e30. | |
NumericalApproximation | AtmosHahgtSpline () |
If GenerateHahgTables() has been called this returns a clamped cubic spline of the data set (p_atmosIncTable, p_atmosHahgtTable) with first derivatives of the endpoints equal to 1.0e30. | |
NumericalApproximation | AtmosHahgt0Spline () |
If GenerateHahgTables() has been called this returns a clamped cubic spline of the data set (p_atmosIncTable, p_atmosHahgt0Table) with first derivatives of the endpoints equal to 1.0e30. | |
Static Public Member Functions | |
static double | G11Prime (double tau) |
Perform Chandra and Van de Hulst's series approximation for the g'11 function needed in second order scattering theory. | |
static double | Ei (double x) throw (iException &) |
This routine computes the exponential integral, Ei(x). | |
static double | En (unsigned int n, double x) throw (iException &) |
This routine evaluates the generalized exponential integral, En(x). | |
Protected Member Functions | |
virtual void | AtmosModelAlgorithm (double phase, double incidence, double emission) |
Isotropic atmospheric scattering in the first approximation The model for scattering for a general, non-Lambertian surface with an atmosphere looks like this:. | |
void | SetAtmosNulneg (bool nulneg) |
void | SetAtmosIord (bool offset) |
void | SetAtmosEstTau (bool esttau) |
void | SetAlgorithmName (string name) |
void | SetOldTau (double tau) |
void | SetOldWha (double wha) |
PhotoModel * | GetPhotoModel () const |
bool | StandardConditions () const |
bool | TauOrWhaChanged () const |
Checks whether tau or wha have changed. | |
double | Eulgam () const |
Protected Attributes | |
int | p_atmosAtmSwitch |
int | p_atmosNinc |
double | p_atmosBha |
double | p_atmosBhasave |
double | p_atmosHgasave |
double | p_atmosTauref |
double | p_atmosTausave |
double | p_atmosWhasave |
double | p_pstd |
Pure atmospheric-scattering term. | |
double | p_trans |
Transmission of surface reflected light through the atmosphere overall. | |
double | p_trans0 |
Transmission of surface reflected light through the atmosphere with no scatterings in the atmosphere. | |
double | p_transs |
Transmission of light that must be subtracted from the flat surface model to get the shadow model. | |
double | p_sbar |
Illumination of the ground by the sky. | |
double | p_atmosHga |
double | p_atmosTau |
double | p_atmosWha |
double | p_atmosAb |
double | p_atmosHnorm |
Atmospheric shell thickness normalized to planet radius. | |
bool | p_atmosAddOffset |
Allow additive offset in fit. | |
bool | p_atmosEstTau |
Estimate optical depth tau using shadows. | |
vector< double > | p_atmosIncTable |
vector< double > | p_atmosAhTable |
double | p_atmosHahgsb |
vector< double > | p_atmosHahgtTable |
vector< double > | p_atmosHahgt0Table |
double | p_atmosInc |
double | p_atmosPhi |
double | p_atmosMunot |
double | p_atmosSini |
double | p_atmosCosphi |
double | p_atmosEulgam |
NumericalApproximation | p_atmosAhSpline |
Spline object for the atmospheric Ah Table. Properties are set in GenerateAhTable(). | |
NumericalApproximation | p_atmosHahgtSpline |
Spline object for the atmospheric Hahg Table. Properties are set in GenerateHahgTables(). | |
NumericalApproximation | p_atmosHahgt0Spline |
Spline object for the atmospheric Hahg0 Table. Properties are set in GenerateHahgTables(). |
Isis::Isotropic2::Isotropic2 | ( | Pvl & | pvl, | |
PhotoModel & | pmodel | |||
) |
virtual Isis::Isotropic2::~Isotropic2 | ( | ) | [inline, virtual] |
string Isis::AtmosModel::AlgorithmName | ( | ) | const [inline, inherited] |
Return atmospheric algorithm name.
double Isis::AtmosModel::AtmosAb | ( | ) | const [inline, inherited] |
Return atmospheric Ab value.
References Isis::AtmosModel::p_atmosAb.
bool Isis::AtmosModel::AtmosAdditiveOffset | ( | ) | const [inline, inherited] |
Allow additive offset in fit?
References Isis::AtmosModel::p_atmosAddOffset.
NumericalApproximation Isis::AtmosModel::AtmosAhSpline | ( | ) | [inline, inherited] |
If GenerateAhTable() has been called this returns a clamped cubic spline of the data set (p_atmosIncTable, p_atmosAhTable) with first derivatives of the endpoints equal to 1.0e30.
Otherwise, it is a natural cubic spline with an empty data set.
References Isis::AtmosModel::p_atmosAhSpline.
vector<double> Isis::AtmosModel::AtmosAhTable | ( | ) | [inline, inherited] |
Return atmospheric AhTable value.
References Isis::AtmosModel::p_atmosAhTable.
double Isis::AtmosModel::AtmosBha | ( | ) | const [inline, inherited] |
Return atmospheric Bha value.
References Isis::AtmosModel::p_atmosBha.
double Isis::AtmosModel::AtmosHahgsb | ( | ) | const [inline, inherited] |
Return atmospheric Hahgsb value.
References Isis::AtmosModel::p_atmosHahgsb.
NumericalApproximation Isis::AtmosModel::AtmosHahgt0Spline | ( | ) | [inline, inherited] |
If GenerateHahgTables() has been called this returns a clamped cubic spline of the data set (p_atmosIncTable, p_atmosHahgt0Table) with first derivatives of the endpoints equal to 1.0e30.
Otherwise, it is a natural cubic spline with an empty data set.
References Isis::AtmosModel::p_atmosHahgt0Spline.
vector<double> Isis::AtmosModel::AtmosHahgt0Table | ( | ) | [inline, inherited] |
Return atmospheric Hahgt0Table value.
References Isis::AtmosModel::p_atmosHahgt0Table.
NumericalApproximation Isis::AtmosModel::AtmosHahgtSpline | ( | ) | [inline, inherited] |
If GenerateHahgTables() has been called this returns a clamped cubic spline of the data set (p_atmosIncTable, p_atmosHahgtTable) with first derivatives of the endpoints equal to 1.0e30.
Otherwise, it is a natural cubic spline with an empty data set.
References Isis::AtmosModel::p_atmosHahgtSpline.
vector<double> Isis::AtmosModel::AtmosHahgtTable | ( | ) | [inline, inherited] |
Return atmospheric HahgtTable value.
References Isis::AtmosModel::p_atmosHahgtTable.
double Isis::AtmosModel::AtmosHga | ( | ) | const [inline, inherited] |
Return atmospheric Hga value.
References Isis::AtmosModel::p_atmosHga.
Referenced by Isis::NumericalAtmosApprox::InrFunc2Bint().
double Isis::AtmosModel::AtmosHnorm | ( | ) | const [inline, inherited] |
Return atmospheric Hnorm value.
References Isis::AtmosModel::p_atmosHnorm.
vector<double> Isis::AtmosModel::AtmosIncTable | ( | ) | [inline, inherited] |
Return atmospheric IncTable value.
References Isis::AtmosModel::p_atmosIncTable.
void Isis::Isotropic2::AtmosModelAlgorithm | ( | double | phase, | |
double | incidence, | |||
double | emission | |||
) | [protected, virtual] |
Isotropic atmospheric scattering in the first approximation The model for scattering for a general, non-Lambertian surface with an atmosphere looks like this:.
P = Pstd + trans*(rho*Ah*munot)/(1.d0-rho*Ab*sbar) trans0*rho*(psurf-Ah*munot)
where P is the overall photometric function (the model of the data), PSTD is the pure atmospheric-scattering term, PSURF is the surface photometric function, AH*MUNOT is a Lambertian approximation to this with hemispheric albedo AH, TRANS and TRANS0 quantify transmission of surface reflected light through the atmosphere overall and with no scatterings in the atmosphere, and finally SBAR quantifies the illumination of the ground by the sky. RHO is the ratio of the sur- face albedo to the albedo assumed in the functional form of PSURF.
phase | Value of the phase angle. | |
incidence | Value of the incidence angle. | |
emission | Value of the emission angle. |
Implements Isis::AtmosModel.
References _FILEINFO_, Isis::AtmosModel::Ei(), Isis::AtmosModel::En(), Isis::AtmosModel::Eulgam(), fix(), Isis::AtmosModel::G11Prime(), Isis::iException::Math, Isis::iException::Message(), Isis::AtmosModel::p_atmosHnorm, Isis::AtmosModel::p_atmosTau, Isis::AtmosModel::p_atmosWha, Isis::AtmosModel::p_pstd, Isis::AtmosModel::p_sbar, Isis::AtmosModel::p_trans, Isis::AtmosModel::p_trans0, Isis::AtmosModel::p_transs, Isis::PI(), Isis::AtmosModel::SetOldTau(), Isis::AtmosModel::SetOldWha(), and Isis::AtmosModel::TauOrWhaChanged().
double Isis::AtmosModel::AtmosMunot | ( | ) | const [inline, inherited] |
Return atmospheric Munot value.
References Isis::AtmosModel::p_atmosMunot.
int Isis::AtmosModel::AtmosNinc | ( | ) | const [inline, inherited] |
Return atmospheric Ninc value.
References Isis::AtmosModel::p_atmosNinc.
bool Isis::AtmosModel::AtmosNulneg | ( | ) | const [inline, inherited] |
Return atmospheric Nulneg value.
double Isis::AtmosModel::AtmosTau | ( | ) | const [inline, inherited] |
Return atmospheric Tau value.
References Isis::AtmosModel::p_atmosTau.
Referenced by Isis::NumericalAtmosApprox::InrFunc2Bint(), and Isis::AtmosModel::TauOrWhaChanged().
double Isis::AtmosModel::AtmosTauref | ( | ) | const [inline, inherited] |
Return atmospheric Tauref value.
References Isis::AtmosModel::p_atmosTauref.
double Isis::AtmosModel::AtmosWha | ( | ) | const [inline, inherited] |
Return atmospheric Wha value.
References Isis::AtmosModel::p_atmosWha.
Referenced by Isis::AtmosModel::GenerateHahgTables(), Isis::AtmosModel::GenerateHahgTablesShadow(), and Isis::AtmosModel::TauOrWhaChanged().
void Isis::AtmosModel::CalcAtmEffect | ( | double | pha, | |
double | inc, | |||
double | ema, | |||
double * | pstd, | |||
double * | trans, | |||
double * | trans0, | |||
double * | sbar, | |||
double * | transs | |||
) | [inherited] |
Calculate the atmospheric scattering effect using photometric angle information.
pha | phase angle | |
inc | incidence angle | |
ema | emission angle | |
pstd | pure atmospheric-scattering term | |
trans | transmission of surface reflected light through the atmosphere overall | |
trans0 | transmission of surface reflected light through the atmosphere with no scatterings in the atmosphere | |
sbar | illumination of the ground by the sky |
Isis::iException::User | "Invalid photometric angles" |
References Isis::AtmosModel::AtmosModelAlgorithm(), Isis::AtmosModel::p_pstd, Isis::AtmosModel::p_sbar, Isis::AtmosModel::p_trans, Isis::AtmosModel::p_trans0, and Isis::AtmosModel::p_transs.
double Isis::AtmosModel::Ei | ( | double | x | ) | throw (iException &) [static, inherited] |
This routine computes the exponential integral, Ei(x).
This is defined as
for x > 0.
For small x, this method uses the power series,
where is Euler's constant, and for large x, the asymptotic series is used,
x | Value at which the exponential integral will be computed, x > 0.0 |
Isis::iException::Programmer | "Invalid arguments. Definition requires x > 0.0." | |
Isis::iException::Math | "Power series failed to converge" |
References _FILEINFO_, Isis::iException::Math, Isis::iException::Message(), Isis::iException::Programmer, sum, and x.
Referenced by AtmosModelAlgorithm().
double Isis::AtmosModel::En | ( | unsigned int | n, | |
double | x | |||
) | throw (iException &) [static, inherited] |
This routine evaluates the generalized exponential integral, En(x).
This is defined as
Notice that if x = 0, then the equation is not defined for n = 0 or n = 1, as these will result in .
This method uses the following for cases:
For n > 1 and x = 0.0,
For n = 0 and x > 0.0,
For , Lentz's continued fraction algorithm is used,
where and and is Euler's constant.
The parameter n is of type unsigned int since n cannot be negative.
The routine allows fast evaluation of En(x) to any accuracy, , within the reach of your machine's word length for floating-point numbers. The only modification required for increased accuracy is to supply Euler's constant with enough significant digits.
n | Integer value at which the exponential integral will be evaluated (n >= 0) | |
x | The exponential integral En(x) will be evaluated |
Isis::iException::Programmer | "Invalid arguments. Definition requires (x > 0.0 and n >=0 ) or (x >= 0.0 and n > 1)." @throws Isis::iException::Math "Continued fraction failed to converge" @throws Isis::iException::Math "Series representation failed to converge" |
References _FILEINFO_, a, c, d, delta, Isis::iException::Math, Isis::iException::Message(), Isis::iException::Programmer, and x.
Referenced by AtmosModelAlgorithm(), Isis::Isotropic1::AtmosModelAlgorithm(), and Isis::AtmosModel::G11Prime().
double Isis::AtmosModel::Eulgam | ( | ) | const [inline, protected, inherited] |
References Isis::AtmosModel::p_atmosEulgam.
Referenced by AtmosModelAlgorithm().
double Isis::AtmosModel::G11Prime | ( | double | tau | ) | [static, inherited] |
Perform Chandra and Van de Hulst's series approximation for the g'11 function needed in second order scattering theory.
tau | normal optical depth of atmosphere |
References Isis::AtmosModel::En(), MAX, Isis::PI(), and sum.
Referenced by AtmosModelAlgorithm().
void Isis::AtmosModel::GenerateAhTable | ( | ) | [inherited] |
This method computes the values of the atmospheric Ah table and sets the properties of the atmospheric Ah spline.
It obtains the hemispheric albedo by integrating the photometric function times mu over mu = 0 to 1 and then over phi = 0 to 2*pi to calculate the hemispheric reflectance Ah needed for the photometric model with atmosphere. The Trapezoid rule is applied to the table of Ah to obtain bihemispheric albedo Ab. The parameter p_atmosAtmSwitch is set to 0 to integrate Ah.
References Isis::NumericalApproximation::AddData(), Isis::PhotoModel::AlgorithmName(), Isis::NumericalApproximation::CubicClamped, Isis::NumericalAtmosApprox::OuterFunction, Isis::AtmosModel::p_atmosAb, Isis::AtmosModel::p_atmosAhSpline, Isis::AtmosModel::p_atmosAhTable, Isis::AtmosModel::p_atmosAtmSwitch, Isis::AtmosModel::p_atmosInc, Isis::AtmosModel::p_atmosIncTable, Isis::AtmosModel::p_atmosMunot, Isis::AtmosModel::p_atmosNinc, Isis::AtmosModel::p_atmosSini, Isis::PI(), Isis::NumericalApproximation::Reset(), Isis::NumericalAtmosApprox::RombergsMethod(), Isis::NumericalApproximation::SetCubicClampedEndptDeriv(), Isis::NumericalApproximation::SetInterpType(), sub(), and Isis::iString::UpCase().
void Isis::AtmosModel::GenerateHahgTables | ( | ) | [inherited] |
This method computes the values of the atmospheric Hahg and Hahg0 tables and sets the properties of the atmospheric Hahg and Hahg0 splines.
It integrates functions involving the single particle phase function (assumed to be Hapke Henyey-Greenstein) over mu = 0 to 1 and then over phi = 0 to 2*pi to calculate the corrections needed for the anisotropic photometric model with atmosphere. The Trapezoid rule is applied to the table of Ah to obtain bihemispheric albedo Ab. The parameter p_atmosAtmSwitch is set to 1, 2, 3 to evaluate the 3 required integrals.
References Isis::NumericalApproximation::AddData(), Isis::AtmosModel::AtmosWha(), Isis::NumericalApproximation::CubicClamped, Isis::NumericalAtmosApprox::OuterFunction, Isis::AtmosModel::p_atmosAtmSwitch, Isis::AtmosModel::p_atmosHahgsb, Isis::AtmosModel::p_atmosHahgt0Spline, Isis::AtmosModel::p_atmosHahgt0Table, Isis::AtmosModel::p_atmosHahgtSpline, Isis::AtmosModel::p_atmosHahgtTable, Isis::AtmosModel::p_atmosInc, Isis::AtmosModel::p_atmosIncTable, Isis::AtmosModel::p_atmosMunot, Isis::AtmosModel::p_atmosNinc, Isis::AtmosModel::p_atmosSini, Isis::PI(), Isis::NumericalApproximation::Reset(), Isis::NumericalAtmosApprox::RombergsMethod(), Isis::NumericalApproximation::SetCubicClampedEndptDeriv(), Isis::NumericalApproximation::SetInterpType(), and sub().
void Isis::AtmosModel::GenerateHahgTablesShadow | ( | ) | [inherited] |
This method is a modified version of the GenerateHahgTables method and is used solely for shadow modeling.
Unlike the GenerateHahgTables method, this method does not tabulate the first or third integrals. It only evaluates the middle integral that corrects the sbar variable (illumination of the ground by the sky).
References Isis::AtmosModel::AtmosWha(), Isis::NumericalAtmosApprox::OuterFunction, Isis::AtmosModel::p_atmosAtmSwitch, Isis::AtmosModel::p_atmosHahgsb, Isis::AtmosModel::p_atmosInc, Isis::AtmosModel::p_atmosMunot, Isis::AtmosModel::p_atmosSini, Isis::PI(), Isis::NumericalApproximation::Reset(), Isis::NumericalAtmosApprox::RombergsMethod(), and sub().
PhotoModel* Isis::AtmosModel::GetPhotoModel | ( | ) | const [inline, protected, inherited] |
void Isis::AtmosModel::SetAlgorithmName | ( | string | name | ) | [inline, protected, inherited] |
void Isis::AtmosModel::SetAtmosAtmSwitch | ( | const int | atmswitch | ) | [inherited] |
Set the switch that controls the function that will be integrated.
This method is only used for testing the methods in this class. This parameter is limited to the values 0, 1, 2, and 3.
atmswitch | Internal atmospheric function parameter, there is no default |
Isis::iException::User | "Invalid value of atmospheric atmswitch" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosAtmSwitch, and Isis::iException::User.
void Isis::AtmosModel::SetAtmosBha | ( | const double | bha | ) | [inherited] |
Set the Anisotropic Atmospheric function parameter.
This is the coefficient of the single particle Legendre phase function. This parameter is limited to values that are >=-1 and <=1.
bha | Anisotropic atmospheric function parameter, default is 0.85 |
Isis::iException::User | "Invalid value of atmospheric bha" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosBha, and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosEstTau | ( | bool | esttau | ) | [inline, protected, inherited] |
References Isis::AtmosModel::p_atmosEstTau.
void Isis::AtmosModel::SetAtmosEstTau | ( | const string | esttau | ) | [inherited] |
Estimate the optical depth tau using shadows.
esttau | true/false |
References _FILEINFO_, Isis::iException::Message(), Isis::iString::UpCase(), and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosHga | ( | const double | hga | ) | [inherited] |
Set the Hapke atmospheric function parameter.
This is the coefficient of the single particle Henyey-Greenstein phase function. This parameter is limited to values that are >-1 and <1.
hga | Hapke atmospheric function parameter, default is 0.68 |
Isis::iException::User | "Invalid value of atmospheric hga" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosHga, and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosHnorm | ( | const double | hnorm | ) | [inherited] |
Set the Atmospheric function parameter.
This is the atmospheric shell thickness normalized to the planet radius and is used to modify angles to get more accurate path lengths near the terminator (ratio of scale height to the planetary radius). This parameter is limited to values that are >=0.
hnorm | Atmospheric function parameter, default is 0.003 |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosHnorm, and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosInc | ( | const double | inc | ) | [inherited] |
Set the incidence angle.
This method is only used for testing the methods in this class. This parameter is limited to values >=0 and <=90.
inc | Internal atmospheric function parameter, there is no default |
Isis::iException::User | "Invalid value of atmospheric inc" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosInc, Isis::AtmosModel::p_atmosMunot, Isis::AtmosModel::p_atmosSini, Isis::PI(), and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosIord | ( | bool | offset | ) | [inline, protected, inherited] |
References Isis::AtmosModel::p_atmosAddOffset.
void Isis::AtmosModel::SetAtmosIord | ( | const string | offset | ) | [inherited] |
Set additive offset in fit.
offset | true/false |
References _FILEINFO_, Isis::iException::Message(), Isis::iString::UpCase(), and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosNulneg | ( | bool | nulneg | ) | [inline, protected, inherited] |
void Isis::AtmosModel::SetAtmosNulneg | ( | const string | nulneg | ) | [inherited] |
Set the Atmospheric function parameter.
This determines if negative values after removal of atmospheric effects will be set to NULL. This parameter is limited to values of YES or NO.
nulneg | Atmospheric function parameter, default is NO |
Isis::iException::User | "Invalid value of atmospheric nulneg" |
References _FILEINFO_, Isis::iException::Message(), Isis::iString::UpCase(), and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosPhi | ( | const double | phi | ) | [inherited] |
Set the azimuth angle.
This method is only used for testing the methods in this class. This parameter is limited to values >=0 and <=360.
phi | Internal atmospheric function parameter, there is no default |
Isis::iException::User | "Invalid value of atmospheric phi" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosCosphi, Isis::AtmosModel::p_atmosPhi, Isis::PI(), and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosTau | ( | const double | tau | ) | [inherited] |
Set the Atmospheric function parameter.
This specifies the normal optical depth of the atmosphere. This parameter is limited to values that are >=0.
tau | Atmospheric function parameter, default is 0.28 |
Isis::iException::User | "Invalid value of atmospheric tau" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosTau, and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosTauref | ( | const double | tauref | ) | [inherited] |
Set the Atmospheric function parameter.
This specifies the reference optical depth of the atmosphere to which the image will be normalized. This parameter is limited to values that are >=0.
tauref | Atmospheric function parameter, default is 0.0 |
Isis::iException::User | "Invalid value of atmospheric tauref" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosTauref, and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetAtmosWha | ( | const double | wha | ) | [inherited] |
Set the Atmospheric function parameter.
This is the single- scattering albedo of atmospheric particles. This parameter is limited to values that are >0 and <=1.
wha | Atmospheric function parameter, default is 0.95 |
Isis::iException::User | "Invalid value of atmospheric wha" |
References _FILEINFO_, Isis::iException::Message(), Isis::AtmosModel::p_atmosWha, and Isis::iException::User.
Referenced by Isis::AtmosModel::AtmosModel().
void Isis::AtmosModel::SetOldTau | ( | double | tau | ) | [inline, protected, inherited] |
Referenced by AtmosModelAlgorithm(), and Isis::Isotropic1::AtmosModelAlgorithm().
void Isis::AtmosModel::SetOldWha | ( | double | wha | ) | [inline, protected, inherited] |
Referenced by AtmosModelAlgorithm(), and Isis::Isotropic1::AtmosModelAlgorithm().
void Isis::AtmosModel::SetStandardConditions | ( | bool | standard | ) | [virtual, inherited] |
Used to calculate atmosphere at standard conditions.
References Isis::AtmosModel::p_atmosTau, Isis::AtmosModel::p_atmosTauref, and Isis::AtmosModel::p_atmosTausave.
bool Isis::AtmosModel::StandardConditions | ( | ) | const [inline, protected, inherited] |
bool Isis::AtmosModel::TauOrWhaChanged | ( | ) | const [protected, inherited] |
Checks whether tau or wha have changed.
References Isis::AtmosModel::AtmosTau(), and Isis::AtmosModel::AtmosWha().
Referenced by AtmosModelAlgorithm(), and Isis::Isotropic1::AtmosModelAlgorithm().
double Isis::AtmosModel::p_atmosAb [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosAb(), Isis::AtmosModel::AtmosModel(), and Isis::AtmosModel::GenerateAhTable().
bool Isis::AtmosModel::p_atmosAddOffset [protected, inherited] |
Allow additive offset in fit.
Referenced by Isis::AtmosModel::AtmosAdditiveOffset(), Isis::AtmosModel::AtmosModel(), and Isis::AtmosModel::SetAtmosIord().
NumericalApproximation Isis::AtmosModel::p_atmosAhSpline [protected, inherited] |
Spline object for the atmospheric Ah Table. Properties are set in GenerateAhTable().
Referenced by Isis::AtmosModel::AtmosAhSpline(), and Isis::AtmosModel::GenerateAhTable().
vector<double> Isis::AtmosModel::p_atmosAhTable [protected, inherited] |
int Isis::AtmosModel::p_atmosAtmSwitch [protected, inherited] |
double Isis::AtmosModel::p_atmosBha [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosBha(), Isis::AtmosModel::AtmosModel(), and Isis::AtmosModel::SetAtmosBha().
double Isis::AtmosModel::p_atmosBhasave [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosModel().
double Isis::AtmosModel::p_atmosCosphi [protected, inherited] |
bool Isis::AtmosModel::p_atmosEstTau [protected, inherited] |
Estimate optical depth tau using shadows.
Referenced by Isis::AtmosModel::AtmosModel(), and Isis::AtmosModel::SetAtmosEstTau().
double Isis::AtmosModel::p_atmosEulgam [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosModel(), and Isis::AtmosModel::Eulgam().
double Isis::AtmosModel::p_atmosHahgsb [protected, inherited] |
NumericalApproximation Isis::AtmosModel::p_atmosHahgt0Spline [protected, inherited] |
Spline object for the atmospheric Hahg0 Table. Properties are set in GenerateHahgTables().
Referenced by Isis::AtmosModel::AtmosHahgt0Spline(), and Isis::AtmosModel::GenerateHahgTables().
vector<double> Isis::AtmosModel::p_atmosHahgt0Table [protected, inherited] |
NumericalApproximation Isis::AtmosModel::p_atmosHahgtSpline [protected, inherited] |
Spline object for the atmospheric Hahg Table. Properties are set in GenerateHahgTables().
Referenced by Isis::AtmosModel::AtmosHahgtSpline(), and Isis::AtmosModel::GenerateHahgTables().
vector<double> Isis::AtmosModel::p_atmosHahgtTable [protected, inherited] |
double Isis::AtmosModel::p_atmosHga [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosHga(), Isis::AtmosModel::AtmosModel(), and Isis::AtmosModel::SetAtmosHga().
double Isis::AtmosModel::p_atmosHgasave [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosModel().
double Isis::AtmosModel::p_atmosHnorm [protected, inherited] |
Atmospheric shell thickness normalized to planet radius.
Referenced by Isis::AtmosModel::AtmosHnorm(), Isis::AtmosModel::AtmosModel(), AtmosModelAlgorithm(), Isis::Isotropic1::AtmosModelAlgorithm(), and Isis::AtmosModel::SetAtmosHnorm().
double Isis::AtmosModel::p_atmosInc [protected, inherited] |
vector<double> Isis::AtmosModel::p_atmosIncTable [protected, inherited] |
double Isis::AtmosModel::p_atmosMunot [protected, inherited] |
int Isis::AtmosModel::p_atmosNinc [protected, inherited] |
double Isis::AtmosModel::p_atmosPhi [protected, inherited] |
double Isis::AtmosModel::p_atmosSini [protected, inherited] |
double Isis::AtmosModel::p_atmosTau [protected, inherited] |
double Isis::AtmosModel::p_atmosTauref [protected, inherited] |
double Isis::AtmosModel::p_atmosTausave [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosModel(), and Isis::AtmosModel::SetStandardConditions().
double Isis::AtmosModel::p_atmosWha [protected, inherited] |
double Isis::AtmosModel::p_atmosWhasave [protected, inherited] |
Referenced by Isis::AtmosModel::AtmosModel().
double Isis::AtmosModel::p_pstd [protected, inherited] |
Pure atmospheric-scattering term.
Referenced by Isis::AtmosModel::AtmosModel(), AtmosModelAlgorithm(), Isis::Isotropic1::AtmosModelAlgorithm(), and Isis::AtmosModel::CalcAtmEffect().
double Isis::AtmosModel::p_sbar [protected, inherited] |
Illumination of the ground by the sky.
Referenced by Isis::AtmosModel::AtmosModel(), AtmosModelAlgorithm(), Isis::Isotropic1::AtmosModelAlgorithm(), and Isis::AtmosModel::CalcAtmEffect().
double Isis::AtmosModel::p_trans [protected, inherited] |
Transmission of surface reflected light through the atmosphere overall.
Referenced by Isis::AtmosModel::AtmosModel(), AtmosModelAlgorithm(), Isis::Isotropic1::AtmosModelAlgorithm(), and Isis::AtmosModel::CalcAtmEffect().
double Isis::AtmosModel::p_trans0 [protected, inherited] |
Transmission of surface reflected light through the atmosphere with no scatterings in the atmosphere.
Referenced by Isis::AtmosModel::AtmosModel(), AtmosModelAlgorithm(), Isis::Isotropic1::AtmosModelAlgorithm(), and Isis::AtmosModel::CalcAtmEffect().
double Isis::AtmosModel::p_transs [protected, inherited] |
Transmission of light that must be subtracted from the flat surface model to get the shadow model.
Referenced by Isis::AtmosModel::AtmosModel(), AtmosModelAlgorithm(), Isis::Isotropic1::AtmosModelAlgorithm(), and Isis::AtmosModel::CalcAtmEffect().