Moon¶
- class specsim.atmosphere.Moon(wavelength, moon_spectrum, extinction_coefficient, airmass, moon_zenith, separation_angle, moon_phase)[source] [edit on github]¶
Bases:
objectModel of scattered moonlight.
Most of the work is performed by
krisciunas_schaefer(), which implements the model of their 1991 paper. This class uses the predicted V-band surface brightness to normalize an input lunar spectrum (or solar spectrum if you assume the moon is grey).The predicted
surface_brightnessis automatically updated to reflect changes in the following attributes:airmass,moon_zenith,moon_phaseandseparation_angle.This implementation is loosely based on and tested against [IDL code] (https://desi.lbl.gov/svn/code/desimodel/tags/0.4.2/pro/lunarmodel.pro) from Connie Rockosi.
- Parameters:
- wavelengthastropy.units.Quantity
Array of wavelengths with units where data is tabulated.
- moon_spectrumastropy.units.Quantity
Tabulated spectrum of scattered moonlight with units of flux density. The normalization does not matter since it will be fixed by
get_lunar_surface_brightness(). A solar spectrum can be used, which effectively assumes that the moon’s reflectance is wavelength independent.- extinction_coefficientarray
Array of extinction coefficients tabulated on
wavelength.- airmassfloat
Airmass of the observation.
- moon_zenithastropy.units.Quantity
- separation_angleastropy.units.Quantity
- moon_phasefloat
Attributes Summary
Airmass of observation used for lunar scattering model.
Phase of the moon.
Moon zenith angle.
Read-only value of the observing zenith angle.
V-band surface brightness of scattered moonlight.
Read-only value of the observation-moon separation angle.
astropy.units.Quantity: Tabulated scattered moon surface brightness.
Read-only value of the V-band extinction of the moon spectrum.
bool: Read-only visibility of the moon.
Attributes Documentation
- airmass¶
Airmass of observation used for lunar scattering model.
Changes to this value will update
obs_zenithandsurface_brightness.This should normally be the same airmass that is used in the
Atmospheremodel to calculate source extinction, but this is not checked here.
- moon_phase¶
Phase of the moon.
See
krisciunas_schaefer(). Changes to this value will updatesurface_brightness.
- moon_zenith¶
Moon zenith angle.
See
krisciunas_schaefer(). Changes to this value will updatesurface_brightnessandvisible.
- obs_zenith¶
Read-only value of the observing zenith angle.
This attribute is calculated from
airmassby inverting Eqn.3 of Krisciunas & Schaefer 1991:\[X = (1 - 0.96 \sin^2 Z)^{-0.5}\]
- scattered_V¶
V-band surface brightness of scattered moonlight.
This is a read-only attribute whose value depends on the current values of
airmass,moon_zenith,moon_phaseandseparation_angle. Returns None if the moon is below the horizon.
- separation_angle¶
Read-only value of the observation-moon separation angle.
See
krisciunas_schaefer(). Changes to this value will updatesurface_brightness.
- surface_brightness¶
astropy.units.Quantity: Tabulated scattered moon surface brightness.
This is the only model attribute used for simulation. Its value depends on the current values of
airmass,moon_zenith,moon_phaseandseparation_angle.
- vband_extinction¶
Read-only value of the V-band extinction of the moon spectrum.
Calculated as V* - V where V is the Bessell-V magnitude of the input lunar spectrum and V* is calculated with airmass 1.0 extinction applied.
- visible¶
bool: Read-only visibility of the moon.
The visibility criterion is
moon_zenith< 90 degrees.