From 644ba6c672401104bb73e4426ca838e0fd980977 Mon Sep 17 00:00:00 2001 From: "Nina.Hakansson" Date: Fri, 8 Mar 2024 15:07:56 +0100 Subject: [PATCH] Adapt viirs2pps also to viirs_compact --- bin/viirs2pps.py | 6 +++++- level1c4pps/__init__.py | 4 ++-- level1c4pps/viirs2pps_lib.py | 8 +++++--- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/bin/viirs2pps.py b/bin/viirs2pps.py index fe37f9c..96c108a 100755 --- a/bin/viirs2pps.py +++ b/bin/viirs2pps.py @@ -41,6 +41,9 @@ help="Output directory where to store the level1c file") parser.add_argument('--iband', action='store_true', help="Iband resolution include I01-I03, M15-M16 and optional M09, M14") + parser.add_argument('--reader', type=str, nargs='?', + required=False, default="viirs_sdr", + help="VIIRS reader default: viirs_sdr") parser.add_argument('-ne', '--nc_engine', type=str, nargs='?', required=False, default='h5netcdf', help="Engine for saving netcdf files netcdf4 or h5netcdf (default).") @@ -53,6 +56,7 @@ help="Orbit number (default is 00000).") options = parser.parse_args() - process_one_scene(options.files, options.out_dir, options.iband, engine=options.nc_engine, + process_one_scene(options.files, options.out_dir, options.iband, reader=options.reader, + engine=options.nc_engine, all_channels=options.all_channels, pps_channels=options.pps_channels, orbit_n=options.orbit_number) diff --git a/level1c4pps/__init__.py b/level1c4pps/__init__.py index 5c9de31..a3ad6eb 100644 --- a/level1c4pps/__init__.py +++ b/level1c4pps/__init__.py @@ -334,10 +334,10 @@ def rename_latitude_longitude(scene): """Rename latitude longitude to lat lon.""" lat_name_satpy = 'latitude' lon_name_satpy = 'longitude' - for alt_latname in ['lat_pixels', 'm_latitude', 'i_latitude']: + for alt_latname in ['lat_pixels', 'm_latitude', 'latitude_m', 'i_latitude']: if alt_latname in scene and 'latitude' not in scene: lat_name_satpy = alt_latname - for alt_lonname in ['lon_pixels', 'm_longitude', 'i_longitude']: + for alt_lonname in ['lon_pixels', 'm_longitude','longitude_m', 'i_longitude']: if alt_lonname in scene and 'longitude' not in scene: lon_name_satpy = alt_lonname scene[lat_name_satpy].attrs['name'] = 'lat' diff --git a/level1c4pps/viirs2pps_lib.py b/level1c4pps/viirs2pps_lib.py index 738965b..fa9f6d4 100644 --- a/level1c4pps/viirs2pps_lib.py +++ b/level1c4pps/viirs2pps_lib.py @@ -22,7 +22,7 @@ # Nina Hakansson # Adam.Dybbroe -"""Functions to convert MERSI-2 level-1 data to a NWCSAF/PPS level-1c formatet netCDF/CF file.""" +"""Functions to convert VIIRS level-1 data to a NWCSAF/PPS level-1c formatet netCDF/CF file.""" import os import time @@ -124,12 +124,12 @@ def set_header_and_band_attrs(scene, orbit_n=0): return nimg -def process_one_scene(scene_files, out_path, use_iband_res=False, engine='h5netcdf', +def process_one_scene(scene_files, out_path, use_iband_res=False, reader='viirs_sdr', engine='h5netcdf', all_channels=False, pps_channels=False, orbit_n=0): """Make level 1c files in PPS-format.""" tic = time.time() scn_ = Scene( - reader='viirs_sdr', + reader=reader, filenames=scene_files) MY_MBAND = MBAND_DEFAULT @@ -149,6 +149,8 @@ def process_one_scene(scene_files, out_path, use_iband_res=False, engine='h5netc scn_.load(MY_IBAND_I + ANGLE_NAMES + ['i_latitude', 'i_longitude'], resolution=371) scn_.load(MY_IBAND_M, resolution=742) scn_ = scn_.resample(resampler='native') + elif reader == "viirs_compact": + scn_.load(MY_MBAND + ANGLE_NAMES + ['latitude_m', 'longitude_m'], resolution=742) else: scn_.load(MY_MBAND + ANGLE_NAMES + ['m_latitude', 'm_longitude'], resolution=742)