Isis Developer Reference
Anisotropic2.h
Go to the documentation of this file.
1 #if !defined(Anisotropic2_h)
2 #define Anisotropic2_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include "AtmosModel.h"
11 
12 namespace Isis {
13  class Pvl;
14 
44  class Anisotropic2 : public AtmosModel {
45  public:
46  Anisotropic2(Pvl &pvl, PhotoModel &pmodel);
47  virtual ~Anisotropic2() {};
48 
49  protected:
50  virtual void AtmosModelAlgorithm(double phase, double incidence,
51  double emission);
52 
53  private:
54  double p_wha2;
55  double p_wham;
56  double p_e1;
57  double p_e1_2;
58  double p_e2;
59  double p_e3;
60  double p_e4;
61  double p_e5;
62  double p_em;
63  double p_e;
64  double p_f1m;
65  double p_f2m;
66  double p_f3m;
67  double p_f4m;
68  double p_g12;
69  double p_g13;
70  double p_g14;
71  double p_g32;
72  double p_g33;
73  double p_g34;
74  double p_f1;
75  double p_f2;
76  double p_f3;
77  double p_f4;
78  double p_g11p;
79  double p_g12p;
80  double p_g13p;
81  double p_g14p;
82  double p_g32p;
83  double p_g33p;
84  double p_g34p;
85  double p_x0_0;
86  double p_y0_0;
87  double p_x0_1;
88  double p_y0_1;
89  double p_delta_0;
90  double p_delta_1;
91  double p_alpha0_0;
92  double p_alpha1_0;
93  double p_beta0_0;
94  double p_beta1_0;
95  double p_fac;
96  double p_den;
97  double p_p0;
98  double p_q0;
99  double p_p1;
100  double p_q1;
101  double p_q02p02;
102  double p_q12p12;
103  };
104 };
105 
106 #endif
Isis::AtmosModel::TauOrWhaChanged
bool TauOrWhaChanged() const
Checks whether tau or wha have changed.
Definition: AtmosModel.cpp:954
Isis::PhotoModel
Definition: PhotoModel.h:41
Isis::PI
const double PI
The mathematical constant PI.
Definition: Constants.h:40
Isis::AtmosModel::p_pstd
double p_pstd
Pure atmospheric-scattering term.
Definition: AtmosModel.h:258
AtmosModel.h
Isis::Anisotropic2
Definition: Anisotropic2.h:44
Isis::AtmosModel::En
static double En(unsigned int n, double x)
This routine evaluates the generalized exponential integral, En(x).
Definition: AtmosModel.cpp:370
Isis::Anisotropic2::~Anisotropic2
virtual ~Anisotropic2()
Definition: Anisotropic2.h:47
Isis::IException::Unknown
@ Unknown
A type of error that cannot be classified as any of the other error types.
Definition: IException.h:118
PvlGroup.h
Anisotropic2Plugin
Isis::AtmosModel * Anisotropic2Plugin(Isis::Pvl &pvl, Isis::PhotoModel &pmodel)
Definition: Anisotropic2.cpp:356
Isis::AtmosModel::Eulgam
double Eulgam() const
Definition: AtmosModel.h:244
Isis::AtmosModel
Isotropic atmos scattering model.
Definition: AtmosModel.h:60
Isis::Pvl
Container for cube-like labels.
Definition: Pvl.h:119
Isis::AtmosModel::p_atmosBha
double p_atmosBha
Definition: AtmosModel.h:251
IString.h
Isis::AtmosModel::p_trans
double p_trans
Transmission of surface reflected light through the atmosphere overall.
Definition: AtmosModel.h:259
Pvl.h
_FILEINFO_
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
Anisotropic2.h
Isis::AtmosModel::p_transs
double p_transs
Transmission of light that must be subtracted from the flat surface model to get the shadow model.
Definition: AtmosModel.h:261
Isis::IException
Isis exception class.
Definition: IException.h:91
Isis::Anisotropic2::Anisotropic2
Anisotropic2(Pvl &pvl, PhotoModel &pmodel)
Empty constructor.
Definition: Anisotropic2.cpp:27
Isis::AtmosModel::p_atmosTau
double p_atmosTau
Definition: AtmosModel.h:264
Isis::AtmosModel::p_atmosHnorm
double p_atmosHnorm
Atmospheric shell thickness normalized to planet radius.
Definition: AtmosModel.h:267
IException.h
Isis::AtmosModel::SetOldTau
void SetOldTau(double tau)
Definition: AtmosModel.h:230
Isis::AtmosModel::SetOldWha
void SetOldWha(double wha)
Definition: AtmosModel.h:233
Isis::AtmosModel::Ei
static double Ei(double x)
This routine computes the exponential integral, Ei(x).
Definition: AtmosModel.cpp:229
Isis::AtmosModel::G11Prime
static double G11Prime(double tau)
Perform Chandra and Van de Hulst's series approximation for the g'11 function needed in second order ...
Definition: AtmosModel.cpp:153
Isis::AtmosModel::p_sbar
double p_sbar
Illumination of the ground by the sky.
Definition: AtmosModel.h:262
Constants.h
Isis::AtmosModel::p_atmosWha
double p_atmosWha
Definition: AtmosModel.h:265
Isis::Anisotropic2::AtmosModelAlgorithm
virtual void AtmosModelAlgorithm(double phase, double incidence, double emission)
Anisotropic atmospheric scattering with P1 single-particle phase fn, in the second approximation.
Definition: Anisotropic2.cpp:59
Isis::AtmosModel::p_trans0
double p_trans0
Transmission of surface reflected light through the atmosphere with no scatterings in the atmosphere.
Definition: AtmosModel.h:260
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::IException::User
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....
Definition: IException.h:126