1.5.1.1.7.1.24. polar2grid.readers.viirs_l1b module¶
The VIIRS Level 1B Reader operates on NASA Level 1B (L1B) NetCDF files.
The files are from the Visible/Infrared Imager Radiometer Suite (VIIRS) instrument. The VIIRS L1B reader analyzes the user provided filenames to determine if a file can be used. Files usually have the following naming scheme (example from the SNPP VIIRS instrument):
VL1BI_snpp_d20160101_t185400_c20160301041812.nc
The VIIRS L1B reader supports all instrument spectral bands, identified as
the products shown below. Geolocation files must be included when
specifying filepaths to readers and polar2grid.sh
. Therefore, the
creation of The VIIRS L1B frontend can be specified to the Polar2Grid
glue script with the frontend name viirs_l1b
.
The list of supported products includes true and false color imagery. These are created by means of a python based atmospheric Rayleigh Scattering algorithm that is executed as part of the Polar2Grid VIIRS L1B reader.
Note
The VIIRS L1B reader only supports the NASA L1B version 2.0 file format. Previous and future versions may work for some products, but are not guaranteed.
This reader’s default resampling algorithm is ewa
for Elliptical Weighted
Averaging resampling. The --weight-delta-max
parameter is set to 40 and the
--weight-distance-max
parameter is set to 2.
Product Name |
Description |
---|---|
i01 |
I01 Reflectance Band |
i02 |
I02 Reflectance Band |
i03 |
I03 Reflectance Band |
i04 |
I04 Brightness Temperature Band |
i05 |
I05 Brightness Temperature Band |
m01 |
M01 Reflectance Band |
m02 |
M02 Reflectance Band |
m03 |
M03 Reflectance Band |
m04 |
M04 Reflectance Band |
m05 |
M05 Reflectance Band |
m06 |
M06 Reflectance Band |
m07 |
M07 Reflectance Band |
m08 |
M08 Reflectance Band |
m09 |
M09 Reflectance Band |
m10 |
M10 Reflectance Band |
m11 |
M11 Reflectance Band |
m12 |
M12 Brightness Temperature Band |
m13 |
M13 Brightness Temperature Band |
m14 |
M14 Brightness Temperature Band |
m15 |
M15 Brightness Temperature Band |
m16 |
M16 Brightness Temperature Band |
DNB |
Raw DNB Band (not useful for images) |
histogram_dnb |
Histogram Equalized DNB Band |
adaptive_dnb |
Adaptive Histogram Equalized DNB Band |
dynamic_dnb |
Dynamic DNB Band from Steve Miller and Curtis Seaman. Uses erf to scale the data |
hncc_dnb |
Simplified High and Near-Constant Contrast Approach from Stephan Zinke |
ifog |
Temperature difference between I05 and I04 |
i_solar_zenith_angle |
I Band Solar Zenith Angle |
i_solar_azimuth_angle |
I Band Solar Azimuth Angle |
i_sat_zenith_angle |
I Band Satellite Zenith Angle |
i_sat_azimuth_angle |
I Band Satellite Azimuth Angle |
m_solar_zenith_angle |
M Band Solar Zenith Angle |
m_solar_azimuth_angle |
M Band Solar Azimuth Angle |
m_sat_zenith_angle |
M Band Satellite Zenith Angle |
m_sat_azimuth_angle |
M Band Satellite Azimuth Angle |
dnb_solar_zenith_angle |
DNB Band Solar Zenith Angle |
dnb_solar_azimuth_angle |
DNB Band Solar Azimuth Angle |
dnb_sat_zenith_angle |
DNB Band Satellite Zenith Angle |
dnb_sat_azimuth_angle |
DNB Band Satellite Azimuth Angle |
dnb_lunar_zenith_angle |
DNB Band Lunar Zenith Angle |
dnb_lunar_azimuth_angle |
DNB Band Lunar Azimuth Angle |
true_color |
Ratio sharpened rayleigh corrected true color |
false_color |
Ratio sharpened rayleigh corrected false color |
For reflectance/visible products a check is done to make sure that at least 10% of the swath is day time. Data is considered day time where solar zenith angle is less than 100 degrees.
- class polar2grid.readers.viirs_l1b.ReaderProxy(scn: Scene, user_products: list[str])[source]¶
Bases:
ReaderProxyBase
Provide Polar2Grid-specific information about this reader’s products.
- polar2grid.readers.viirs_l1b._process_legacy_products(satpy_names, band_aliases)[source]¶
Map all lowercase band names to uppercase names and add radiance product.
- polar2grid.readers.viirs_l1b.add_reader_argument_groups(parser: ArgumentParser, group: _ArgumentGroup | None = None) tuple[_ArgumentGroup | None, _ArgumentGroup | None] [source]¶
Add reader-specific command line arguments to an existing argument parser.
If
group
is provided then arguments are added to this group. If not, a new group is added to the parser and arguments added to this new group.