krisciunas_schaefer¶
- specsim.atmosphere.krisciunas_schaefer(obs_zenith, moon_zenith, separation_angle, moon_phase, vband_extinction)[source] [edit on github]¶
Calculate the scattered moonlight surface brightness in V band.
Based on Krisciunas and Schaefer, “A model of the brightness of moonlight”, PASP, vol. 103, Sept. 1991, p. 1033-1039 (http://dx.doi.org/10.1086/132921). Equation numbers in the code comments refer to this paper.
The function
plot_lunar_brightness()provides a convenient way to plot this model’s predictions as a function of observation pointing.Units are required for the angular inputs and the result has units of surface brightness, for example:
>>> sb = krisciunas_schaefer(20*u.deg, 70*u.deg, 50*u.deg, 0.25, 0.15) >>> print(np.round(sb, 3)) 19.855 mag / arcsec2
The output is automatically broadcast over input arrays following the usual numpy rules.
This method has several caveats but the authors find agreement with data at the 8% - 23% level. See the paper for details.
- Parameters:
- obs_zenithastropy.units.Quantity
Zenith angle of the observation in angular units.
- moon_zenithastropy.units.Quantity
Zenith angle of the moon in angular units.
- separation_angleastropy.units.Quantity
Opening angle between the observation and moon in angular units.
- moon_phasefloat
Phase of the moon from 0.0 (full) to 1.0 (new), which can be calculated as abs((d / D) - 1) where d is the time since the last new moon and D = 29.5 days is the period between new moons. The corresponding illumination fraction is
0.5*(1 + cos(pi * moon_phase)).- vband_extinctionfloat
V-band extinction coefficient to use.
- Returns:
- astropy.units.Quantity
Observed V-band surface brightness of scattered moonlight.