RGB Workshop 2025 Discussion: "Fog RGB" is an alternate name for "Night Microphysics"
The document says that an alternate name for "Night Microphysics RGB" is "Fog RGB", but the fog product in Satpy uses a completely different band in the green channel difference:
night_microphysics:
compositor: !!python/name:satpy.composites.core.GenericCompositor
prerequisites:
- compositor: !!python/name:satpy.composites.arithmetic.DifferenceCompositor
prerequisites:
- 12.0
- 10.8
- compositor: !!python/name:satpy.composites.arithmetic.DifferenceCompositor
prerequisites:
- 10.8
- 3.9
- 10.8
standard_name: night_microphysics
fog:
compositor: !!python/name:satpy.composites.core.GenericCompositor
prerequisites:
- compositor: !!python/name:satpy.composites.arithmetic.DifferenceCompositor
prerequisites:
- 12.0
- 10.8
- compositor: !!python/name:satpy.composites.arithmetic.DifferenceCompositor
prerequisites:
- 10.8
- 8.7
- 10.8
standard_name: fog
So, are 3.9um and 8.7um both good at showing the same thing so these are considered "equivalent"?
Both can show fog fairly well I would say, but at night it's generally better to use the IR3.9 channel, which however becomes useless for fog and low clouds at daytime and twilight when there is solar contribution. Hence, it's used in night_microphysics.
The satpy fog RGBs is rather a variant of the 24h_microphysics with slightly different stretching and gamma in order to better highlight fog specifically (I guess).
24h-Microphysics Recipe:
24h_microphysics:
references:
EUMETRAIN Quick Guide: https://eumetrain.org/sites/default/files/2021-05/24MicroRGB.pdf
Recipe: https://resources.eumetrain.org/RGBguide/recipes/RGB_recipes.pdf
compositor: !!python/name:satpy.composites.core.GenericCompositor
prerequisites:
- compositor: !!python/name:satpy.composites.arithmetic.DifferenceCompositor
prerequisites:
- 12.0
- 10.8
- compositor: !!python/name:satpy.composites.arithmetic.DifferenceCompositor
prerequisites:
- 10.8
- 8.7
- 10.8
standard_name: 24h_microphysics
24h-Microphysics and fog enhancements:
24h_microphysics_default:
standard_name: 24h_microphysics
operations:
- name: stretch
method: !!python/name:satpy.enhancements.contrast.stretch
kwargs:
stretch: crude
min_stretch: [-4, 0, 248]
max_stretch: [2, 6, 303]
- name: gamma
method: !!python/name:satpy.enhancements.contrast.gamma
kwargs:
gamma: [ 1, 1.2, 1 ]
fog_default:
standard_name: fog
operations:
- name: stretch
method: !!python/name:satpy.enhancements.contrast.stretch
kwargs:
stretch: crude
min_stretch: [-4, 0, 243]
max_stretch: [2, 6, 283]
There is also night_fog in satpy, which has the same channel combinations as night_microphysics, but again with different enhancement.
As far as I remember these fog specific variants of the 24h/night_microphysics RGBs, were not really discussed at the workshop. I think the default recipes were considered good enough for this purpose.
Maybe to offer a historical perspective, many composites in satpy originate from recipes we had at SMHI, but might not have been accurate fully accurate. Same thing with names.
So Fog is the old SMHI variant for 24h Microphysics, and Night Fog is the old variant for Night Microphysics I think. I.e., I think we should just keep *microphysics.
So maybe we just keep "fog" as some legacy composite with no deprecation but maybe add some of this historical context and we make sure that the various *_microphysics* composites are "properly" named.