Hapke¶
- class sonic.Hapke¶
Bases:
sonic.Reflectance
This software is made available under the MIT license. See SONIC/LICENSE for details.
- Constructor Summary
- Hapke(AL_ss, hapkeModelType, HFuncType, SSPF, varargin)¶
Instantiates a sonic Hapke object.
- Inputs:
AL_ss (nxm double): Single-scattering albedo matrix.
hapkeModelType (1x1 string): Implementation type of Hapke model
- HFuncType (1x1 string): Implementation type of
Chandrasekhar H-Function. Current supported inputs are:
“rational”
“linear”
“exact”
- SSPF (1x1 string): Implementation type of
Single-Scattering Phase Function. Current supported inputs are:
“isotropic”
“Rayleigh”
“HG1”
varargin (nx1 double): scattering parameter (xi); ONLY REQUIRED FOR “HG1” SSPF
- Outputs:
obj (1x1 sonic.Hapke): Hapke object.
Last revised: 10/4/2024 Last author: Jennifer Nolan
- Property Summary
- AL_ss¶
Albedo - Single Scattering (n x m) [0, 1]
- AL_ssFlat¶
Albedo - Single Scattering (converted to vector for matrix math)
- HFuncType¶
Type of H-function approximation: “exact”, “rational”, or “linear”
- SSPF¶
Type of Single-Scattering Phase Function: “isotropic”, “Rayleigh”, or “HG1” (Henyey-Greenstein, one-sided)
- hapkeModelType¶
Type of Hapke model: “IMSA” or “MIMSA”
- n¶
Number of terms used for summation (if MIMSA option is used to compute P and/or M)
- xi¶
Scattering parameter [0, 1]
- xiFlat¶
Scattering parameter (converted to vector for matrix math)
- Method Summary
- MIMSAMultipleScattering(bn, cosi, cose)¶
Compute the MIMSA multiple-scattering component for the given SSPF type using n-term summation
- Inputs:
obj (1x1 sonic.Hapke): object containing Hapke parameters
bn (nxm double):
cosi (nxm double): cosine of incidence angles
cose (nxm double): cosine of emission angles
- Outputs:
P (nxm double): matrix of values for specified SSPF
References
- [1] L. G. Henyey and J. L. Greenstein,
“Diffuse radiation in the Galaxy,” doi: 10.1086/144246.
- [2] Lord Rayleigh (Strutt, J. W.), “X. On the
electromagnetic theory of light,” doi: 10.1080/14786448108627074
[3] J. A. Christian, “Spacecraft Optical Navigation”
Last revised: 10/4/2024 Last author: Jennifer Nolan
- calcM(cosi, cose)¶
Compute the multiple-scattering component for the given SSPF type at the user-provided i, e, and g values
- Inputs:
obj (1x1 sonic.Hapke): object containing Hapke parameters
cosi (nxm double): cosine of incidence angles
cose (nxm double): cosine of emission angles
- Outputs:
P (nxm double): matrix of values for specified SSPF
References
- [1] L. G. Henyey and J. L. Greenstein,
“Diffuse radiation in the Galaxy,” doi: 10.1086/144246.
- [2] Lord Rayleigh (Strutt, J. W.), “X. On the
electromagnetic theory of light,” doi: 10.1080/14786448108627074
[3] J. A. Christian, “Spacecraft Optical Navigation”
Last revised: 10/4/2024 Last author: Jennifer Nolan
- calcP(cosg)¶
P = calcSSPF(obj, p) Compute the selected single-scattering phase function for the given phase angle
- Inputs:
obj (1x1 sonic.Hapke): object containing Hapke parameters
cosg (nxm double): cosine of phase angles (rad)
- Outputs:
P (nxm double): matrix of values for specified SSPF
References
- [1] L. G. Henyey and J. L. Greenstein,
“Diffuse radiation in the Galaxy,” doi: 10.1086/144246.
- [2] Lord Rayleigh (Strutt, J. W.), “X. On the
electromagnetic theory of light,” doi: 10.1080/14786448108627074
[3] J. A. Christian, “Spacecraft Optical Navigation”
Last revised: 10/4/2024 Last author: Jennifer Nolan
- refl(inputType, var1, var2, var3)¶
Creates object containing Hapke values
- Inputs:
obj (1x1 sonic.Hapke): object containing Hapke parameters
inputType (1x1 string): defines subsequent set of inputs. Current supported inputs are:
“iep” for incidence/emission/phase angles
“iea” for incidence/emission/azimuth angles
- “ien” for incidence/emission/normal vectors
– Must be column vectors, (3xn)
var1
var2
var3
- Outputs:
r (:,:) (double): matrix of Hapke BRDF values
References
[1] J. A. Christian, “Spacecraft Optical Navigation”
Last revised: 10/4/2024 Last author: Jennifer Nolan