satpy.modifiers.geometry module
Modifier classes for corrections based on sun and other angles.
- class satpy.modifiers.geometry.EffectiveSolarPathLengthCorrector(correction_limit=88.0, **kwargs)[source]
Bases:
SunZenithCorrectorBase
Special sun zenith correction with the method proposed by Li and Shibata.
(2006): https://doi.org/10.1175/JAS3682.1
In addition to adjusting the provided reflectances by the cosine of the solar zenith angle, this modifier forces all reflectances beyond a solar zenith angle of max_sza to 0 to reduce noise in the final data. It also gradually reduces the amount of correction done between
correction_limit
andmax_sza
. Ifmax_sza
isNone
then a constant correction is applied to zenith angles beyondcorrection_limit
.To set
max_sza
toNone
in a YAML configuration file use:effective_solar_pathlength_corrected: modifier: !!python/name:satpy.modifiers.EffectiveSolarPathLengthCorrector max_sza: !!null optional_prerequisites: - solar_zenith_angle
Collect custom configuration values.
- Parameters:
- class satpy.modifiers.geometry.SunZenithCorrector(correction_limit=88.0, **kwargs)[source]
Bases:
SunZenithCorrectorBase
Standard sun zenith correction using
1 / cos(sunz)
.In addition to adjusting the provided reflectances by the cosine of the solar zenith angle, this modifier forces all reflectances beyond a solar zenith angle of
max_sza
to 0. It also gradually reduces the amount of correction done betweencorrection_limit
andmax_sza
. Ifmax_sza
isNone
then a constant correction is applied to zenith angles beyondcorrection_limit
.To set
max_sza
toNone
in a YAML configuration file use:sunz_corrected: modifier: !!python/name:satpy.modifiers.SunZenithCorrector max_sza: !!null optional_prerequisites: - solar_zenith_angle
Collect custom configuration values.
- Parameters:
- class satpy.modifiers.geometry.SunZenithCorrectorBase(max_sza=95.0, **kwargs)[source]
Bases:
ModifierBase
Base class for sun zenith correction modifiers.
Collect custom configuration values.
- Parameters:
max_sza (float) – Maximum solar zenith angle in degrees that is considered valid and correctable. Default 95.0.
- class satpy.modifiers.geometry.SunZenithReducer(correction_limit=80.0, max_sza=90, strength=1.3, **kwargs)[source]
Bases:
SunZenithCorrectorBase
Reduce signal strength at large sun zenith angles.
Within a given sunz interval [correction_limit, max_sza] the strength of the signal is reduced following the formula:
res = signal * reduction_factor
where reduction_factor is a pixel-level value ranging from 0 to 1 within the sunz interval.
The strength parameter can be used for a non-linear reduction within the sunz interval. A strength larger than 1.0 will decelerate the signal reduction towards the sunz interval extremes, whereas a strength smaller than 1.0 will accelerate the signal reduction towards the sunz interval extremes.
Collect custom configuration values.
- Parameters:
correction_limit (float) – Solar zenith angle in degrees where to start the signal reduction.
max_sza (float) – Maximum solar zenith angle in degrees where to apply the signal reduction. Beyond this solar zenith angle the signal will become zero.
strength (float) – The strength of the non-linear signal reduction.