+=============================================================================+ | | | VIIRS L1B Calibrated Radiance Product File Specifications | | for Day-Night Band (DNB) | | V3.0.0 2019-01-22 | | Effective for all higher-numbered versions until superseded | | | +=============================================================================+ This document describes the format and content file specifications for the NASA standard VIIRS L1B calibrated radiance product (VNP02, VJ102), specifically for the Day-Night Band (DNB). These specifications are applicable to VIIRS Level-1B calibrated radiance products derived from the Suomi National Polar-orbiting Satellite System (SNPP) and Joint Polar-orbiting Satellite System-1 (JPSS-1/NOAA-20) missions; subsequently, they will extend to cover other JPSS missions as well in the future. The product is stored in a Network Common Data Form (netCDF4)/ Hierarchical Data Format (HDF5) file for each VIIRS data granule. DETECTOR ORDER CONVENTION FOR DETECTOR-DEPENDENT DATA: The L1B’s detector order convention was defined to allows us to position an image’s consecutive scans where the last detector of one scan is adjacent to the first detector of the next scan. +=====================================================================+ | | | Contents: | | | | I) Global Metadata | | | | II) Observation SDSs | | | | III) Scan Line Attribute SDSs | | | +=====================================================================+ ______ /\ \ +---------------------------------------------------------------+ / \ \| +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ | \ \_____\ | I) Global Metadata | | \ / / +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ | \/_____/+---------------------------------------------------------------+ Description: This section contains granule-level metadata. [Note that values for some of the attributes may change from granule to granule] +===================================================================================+ | | | VIIRS Level 1B Product Granule Metadata | | Stored as global attributes. | | | +===================================================================================+ | | | Name | Type |Count| Example | +----------------------------------+---------+-----+--------------------------------+ | AlgorithmType | String | 1 | "SCI" | +----------------------------------+---------+-----+--------------------------------+ | AlgorithmVersion | String | 1 | "NPP_PR02 v3.0.0" | +----------------------------------+---------+-----+--------------------------------+ | cdm_data_type | String | 1 | "swath" | +----------------------------------+---------+-----+--------------------------------+ | Conventions | String | 1 | "CF-1.6" | +----------------------------------+---------+-----+--------------------------------+ | creator_email | String | 1 | "modis-ops@lists.nasa.gov" | +----------------------------------+---------+-----+--------------------------------+ | creator_name | String | 1 | "VIIRS L1 Processing Group" | +----------------------------------+---------+-----+--------------------------------+ | creator_url | String | 1 |"http://ladsweb.nascom.nasa.gov"| +----------------------------------+---------+-----+--------------------------------+ | date_created | String | 1 | "2018-12-09T04:15:38Z" | +----------------------------------+---------+-----+--------------------------------+ | DayNightFlag | String | 1 | "Both" | +----------------------------------+---------+-----+--------------------------------+ | format_version | int | 1 | 2 | +----------------------------------+---------+-----+--------------------------------+ | GRingPointLatitude | float | 4 | 66.9442f, 82.8593f, 73.0762f, | | | | | 62.2383f | +----------------------------------+---------+-----+--------------------------------+ | GRingPointLongitude | float | 4 | 97.4869f, -28.6419f, -139.005f,| | | | | 147.255f | +----------------------------------+---------+-----+--------------------------------+ | GRingPointSequenceNo | int | 4 | 1, 2, 3, 4 | +----------------------------------+---------+-----+--------------------------------+ | history | String | 1 | "LSIPS_calibrate_viirs.exe | | | | | PGE502.1.AS5110.NPP_OPS.2018- | | | | | 343T00:00.NA.2018-343T09:15:27.| | | | | 4661054.pcf" | +----------------------------------+---------+-----+--------------------------------+ | identifier_product_doi_authority | String | 1 | "http://dx.doi.org" | +----------------------------------+---------+-----+--------------------------------+ | identifier_product_doi | String | 1 | "10.5067/VIIRS/VNP02DNB.001" | +----------------------------------+---------+-----+--------------------------------+ | InputPointer | String | 1 | "VNP01.A2018343.0000.001.201834| | | | | 3072056.nc, ..." | +----------------------------------+---------+-----+--------------------------------+ | institution | String | 1 | "NASA Goddard Space Flight | | | | | Center, VIIRS L1 Processing | | | | | Group" | +----------------------------------+---------+-----+--------------------------------+ | instrument | String | 1 | "VIIRS" | +----------------------------------+---------+-----+--------------------------------+ | instrument_number | int | 1 | 2 | +----------------------------------+---------+-----+--------------------------------+ | keywords_vocabulary | String | 1 | "NASA Global Change Master | | | | | Directory (GCMD) Science | | | | | Keywords" | +----------------------------------+---------+-----+--------------------------------+ | license | String | 1 | "http://science.nasa.gov/earth | | | | | -science/earth-science-data/ | | | | | data-information-policy/" | +----------------------------------+---------+-----+--------------------------------+ | LocalGranuleID | String | 1 | "VNP02DNB.A2018343.0000.001. | | | | | 2018343091536.nc" | +----------------------------------+---------+-----+--------------------------------+ | LongName | String | 1 | "VIIRS/NPP Day/Night Band | | | | | 6-Min L1B Swath 375m" | +----------------------------------+---------+-----+--------------------------------+ | naming_authority | String | 1 | "gov.nasa.gsfc.VIIRSland" | +----------------------------------+---------+-----+--------------------------------+ | _NCProperties | String | 1 | "version=1|netcdflibversion= | | | | | 4.4.1.1|hdf5libversion=1.8.17" | +----------------------------------+---------+-----+--------------------------------+ | number_of_filled_scans | int | 1 | 203 | +----------------------------------+---------+-----+--------------------------------+ | orbit_number | int | 1 | 36868 | +----------------------------------+---------+-----+--------------------------------+ | PGE_Name | String | 1 | "PGE502" | +----------------------------------+---------+-----+--------------------------------+ | PGE_StartTime | String | 1 | "2018-12-09 00:00:00.000" | +----------------------------------+---------+-----+--------------------------------+ | PGE_EndTime | String | 1 | "2018-12-09 00:06:00.000" | +----------------------------------+---------+-----+--------------------------------+ | platform | String | 1 | "Suomi-NPP" | +----------------------------------+---------+-----+--------------------------------+ | ProcessingCenter | String | 1 | "MODAPS-NASA" | +----------------------------------+---------+-----+--------------------------------+ | ProcessingEnvironment | String | 1 | "Linux minion7126 3.10.0-862.14| | | | | .4.el7.x86_64 #1 SMP Wed Sep 26| | | | | 15:12:11 UTC 2018 x86_64 x86_64| | | | | x86_64 GNU/Linux" | +----------------------------------+---------+-----+--------------------------------+ | processing_level | String | 1 | "L1B" | +----------------------------------+---------+-----+--------------------------------+ | processing_version | String | 1 | "v3.0.0" | +----------------------------------+---------+-----+--------------------------------+ | product_name | String | 1 | "VNP02DNB.A2018343.0000.001. | | | | | 2018343091536.nc" | +----------------------------------+---------+-----+--------------------------------+ | ProductionTime | String | 1 | "2018-12-09T04:15:38Z" | +----------------------------------+---------+-----+--------------------------------+ | project | String | 1 | "VIIRS L1 Project" | +----------------------------------+---------+-----+--------------------------------+ | publisher_email | String | 1 | "modis-ops@lists.nasa.gov" | +----------------------------------+---------+-----+--------------------------------+ | publisher_name | String | 1 | "LAADS" | +----------------------------------+---------+-----+--------------------------------+ | publisher_url | String | 1 |"http://ladsweb.nascom.nasa.gov"| +----------------------------------+---------+-----+--------------------------------+ | RangeBeginningDate | String | 1 | "2018-12-09" | +----------------------------------+---------+-----+--------------------------------+ | RangeEndingDate | String | 1 | "2018-12-09" | +----------------------------------+---------+-----+--------------------------------+ | RangeBeginningTime | String | 1 | "00:00:00.000000" | +----------------------------------+---------+-----+--------------------------------+ | RangeEndingTime | String | 1 | "00:06:00.000000" | +----------------------------------+---------+-----+--------------------------------+ | SatelliteInstrument | String | 1 | "NPP_OPS" | +----------------------------------+---------+-----+--------------------------------+ | ShortName | String | 1 | "VNP02DNB" | +----------------------------------+---------+-----+--------------------------------+ | source | String | 1 | "VNP01.A2018342.2354.001.201834| | | | | 3072134.nc..." | +----------------------------------+---------+-----+--------------------------------+ | SouthBoundingCoordinate | float | 1 | 62.23832f | +----------------------------------+---------+-----+--------------------------------+ | NorthBoundingCoordinate | float | 1 | 90.f | +----------------------------------+---------+-----+--------------------------------+ | EastBoundingCoordinate | float | 1 | 180.f | +----------------------------------+---------+-----+--------------------------------+ | WestBoundingCoordinate | float | 1 | -180.f | +----------------------------------+---------+-----+--------------------------------+ | startDirection | String | 1 | "Ascending" | +----------------------------------+---------+-----+--------------------------------+ | endDirection | String | 1 | "Descending" | +----------------------------------+---------+-----+--------------------------------+ | StartTime | String | 1 | "2018-12-09 00:00:00.000" | +----------------------------------+---------+-----+--------------------------------+ | EndTime | String | 1 | "2018-12-09 00:06:00.000" | +----------------------------------+---------+-----+--------------------------------+ | stdname_vocabulary | String | 1 | "NetCDF Climate and Forecast" | | | | | "(CF) Metadata Convention" | +----------------------------------+---------+-----+--------------------------------+ | time_coverage_start | String | 1 | "2018-12-09T00:00:00.000Z" | +----------------------------------+---------+-----+--------------------------------+ | time_coverage_end | String | 1 | "2018-12-09T00:06:00.000Z" | +----------------------------------+---------+-----+--------------------------------+ | title | String | 1 | "VIIRS Day/Night Band Data" | +----------------------------------+---------+-----+--------------------------------+ | VersionId | String | 1 | "001" | +===================================================================================+ ______ /\ \ +---------------------------------------------------------------+ / \ \| +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ | \ \_____\ | II) Observation SDSs | | \ / / +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ | \/_____/+---------------------------------------------------------------+ Description: The observation_data group contains the calibrated science data and the pixel-level quality flags and uncertainty index. (The uncertainty index data will be added in the future version.) Each data set in the calibrated science data, uncertainty index, and quality flags is a 2D array: SDS_name = [number_of_lines, number_of_pixels] where number_of_lines represent the dimension size in the track direction, which is equal to (number_of_scans x number_of_detectors), and the number_of_pixels represent the dimension size along the scan direction, which is 4064 in the L1B DNB product. The data type for the quality flag is 16-bit unsigned integer. The following flag masks are used to retrieve the data quality information: +================================================================+ | Quality Flags | | bitmask, each bit has value: 1=True or 0=False | | | | Bit | Meaning | |======+=========================================================+ | 0 | Substitute_Cal | | (LSB)| (Granule average is substituted for SV &/or BB) | |------+---------------------------------------------------------+ | 1 | Out_of_Range | |------+---------------------------------------------------------+ | 2 | Saturation | |------+---------------------------------------------------------+ | 3 | Temp_not_Nominal (BB or LWIR FPA) | |------+---------------------------------------------------------+ | 7 | Stray_light | |------+---------------------------------------------------------+ | 8 | Bowtie_Deleted | |------+---------------------------------------------------------+ | 9 | Missing_EV data | |------+---------------------------------------------------------+ | 10 | Calibration_Failed | |------+---------------------------------------------------------+ | 11 | Dead_Detector | |------+---------------------------------------------------------+ | 4-6, 12-15| Reserved for future use | +======+=========================================================+ LSB = Least-Significant Bit LWIR = Longwave Infrared SV = Space View FPA = Focal Plane Assembly BB = Blackbody The uncertainty index (UI) is saved as an 8-bit integer. The valid range is [0, 127]. To compute uncertainty in percent from the UI, use the scale_factor for the given band: % uncertainty = 1.0 + scale_factor*UI^2 The band-dependent value of scale_factor is attached as an attribute to each UI SDS. Contents: 2.1) EV Observations 2.2) Quality Flags 2.3) Uncertainty Index (slated for addition in a future version) The following are detailed structures for each SDS +=============================================================================+ | 2.1) EV Observations | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "DNB_observations" float [number_of_lines (number_of_scans*16),| | number_of_pixels (4064)] | | | | Description: | | 32-bit floating point containing the radiance of DNB Earth observations. | | | | SDS Attributes: | | +-----------------------------+---------+-----+------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +-----------------------------+---------+-----+------------------------+ | | valid_min | float | 1 | 0.0f | | +-----------------------------+---------+-----+------------------------+ | | valid_max | float | 1 | 0.04f | | +-----------------------------+---------+-----+------------------------+ | | _FillValue | float | 1 | -999.9 | | +-----------------------------+---------+-----+------------------------+ | | long_name | string | 1 |"DNB observations at | | | | | | pixel locations" | | +-----------------------------+---------+-----+------------------------+ | | units | string | 1 |"Watts/cm^2/steradian" | | +-----------------------------+---------+-----+------------------------+ | | +=============================================================================+ +=============================================================================+ | 2.2) Quality Flags | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "DNB_quality_flags" ushort [number_of_lines (number_of_scans*16),| | number_of_pixels (4064)] | | | | Description: | | 16-bit unsigned integer array containing the data quality | | information corresponding to each pixel from EV observations. | | | | SDS Attributes: | | +--------------------------+--------+-----+----------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +--------------------------+--------+-----+----------------------------+ | | long_name | string | 1 |"DNB quality flags" | | +--------------------------+--------+-----+----------------------------+ | | flag_masks | ushort | 9 |1, 2, 4, 8, 16, 256, 512, | | | | | |1024, 2048 | | +--------------------------+--------+-----+----------------------------+ | | flag_meanings | string | 9 |"Substitute_Cal Out_of_Range| | | | | | Saturation Temp_not_Nominal| | | | | | Stray_light, | | | | | | Bowtie_Deleted Missing_EV | | | | | | Cal_Fail Dead_Detector" | | +--------------------------+--------+-----+----------------------------+ | | +=============================================================================+ +=============================================================================+ | 2.3) Uncertainty Index | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "DNB_uncert_index" byte [number_of_lines (number_of_scans*16),| | number_of_pixels (4064)] | | | | Description: | | 8-bit integer array containing the uncertainty index values | | corresponding to each pixel from EV observations. | | | | SDS Attributes: | | +-------------------------+--------+-----+-----------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +-------------------------+--------+-----+-----------------------------+ | | long_name | string | 1 |"DNB uncertainty index" | | +-------------------------+--------+-----+-----------------------------+ | | units | string | 1 |"percent" | | +-------------------------+--------+-----+-----------------------------+ | | valid_min | byte | 1 | 0 | | +-------------------------+--------+-----+-----------------------------+ | | valid_max | byte | 1 | 127 | | +-------------------------+--------+-----+-----------------------------+ | | _FillValue | byte | 1 | -1 | | +-------------------------+--------+-----+-----------------------------+ | | scale_factor | float | 1 | 0.006138f | | +--------------------------+--------+-----+----------------------------+ | | conversion | string | 1 |"1.0 + scale*index^2" | | +-------------------------+--------+-----+-----------------------------+ | | +=============================================================================+ ______ /\ \ +---------------------------------------------------------------+ / \ \| +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ | \ \_____\ | III) Scan Line Attribute SDSs | | \ / / +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ | \/_____/+---------------------------------------------------------------+ Description: This SDS group contains scan line attributes. Contents: 3.1) ev_mid_time 3.2) scan_start_time 3.3) scan_end_time 3.4) scan_state_flags 3.5) scan_quality_flags The following are example SDSs from each category +=============================================================================+ | 3.1) ev_mid_time | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "ev_mid_time" double [number_of_scans] | | | | Description: | | 64-bit floating-point array containing time (TAI58) at the center of | | EV sector of each scan. | | | | SDS Attributes: | | +-------------------------+--------+-----+-----------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +-------------------------+--------+-----+-----------------------------+ | | long_name | string | 1 |"Earth view mid time (TAI93)"| | | | | |(TAI58 since v3.0.0) | | +-------------------------+--------+-----+-----------------------------+ | | units | string | 1 | "seconds" | | +-------------------------+--------+-----+-----------------------------+ | | valid_min | double | 1 | 0.0f | | +-------------------------+--------+-----+-----------------------------+ | | valid_max | double | 1 | 2.0E9 | | +-------------------------+--------+-----+-----------------------------+ | | _FillValue | double | 1 | -999.9 | | +-------------------------+--------+-----+-----------------------------+ | | +=============================================================================+ TAI = International Atomic Time +=============================================================================+ | 3.2) scan_start_time | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "scan_start_time" double [number_of_scans] | | | | Description: | | 64-bit floating-point array containing time (TAI58) at the start of | | EV sector for each scan. | | | | SDS Attributes: | | +-------------------------+--------+-----+-----------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +-------------------------+--------+-----+-----------------------------+ | | long_name | string | 1 | "Scan start time (TAI93)" | | | | | | (TAI58 since v3.0.0) | | +-------------------------+--------+-----+-----------------------------+ | | units | string | 1 | "seconds" | | +-------------------------+--------+-----+-----------------------------+ | | valid_min | double | 1 | 0.0f | | +-------------------------+--------+-----+-----------------------------+ | | valid_max | double | 1 | 2.0E9 | | +-------------------------+--------+-----+-----------------------------+ | | _FillValue | double | 1 | -999.9 | | +-------------------------+--------+-----+-----------------------------+ | | +=============================================================================+ +=============================================================================+ | 3.3) ev_end_time | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "ev_end_time" double [number_of_scans] | | | | Description: | | 64-bit floating-point array containing time (TAI58) at the end of | | EV sector for each scan. | | | | SDS Attributes: | | +-------------------------+--------+-----+-----------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +-------------------------+--------+-----+-----------------------------+ | | long_name | string | 1 | "Scan end time (TAI93)" | | | | | | (TAI58 since v3.0.0) | | +-------------------------+--------+-----+-----------------------------+ | | units | string | 1 | "seconds" | | +-------------------------+--------+-----+-----------------------------+ | | valid_min | double | 1 | 0.0f | | +-------------------------+--------+-----+-----------------------------+ | | valid_max | double | 1 | 2.0E9 | | +-------------------------+--------+-----+-----------------------------+ | | _FillValue | double | 1 | -999.9 | | +-------------------------+--------+-----+-----------------------------+ | | +=============================================================================+ +=============================================================================+ | 3.4) scan_state_flags | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "scan_state flags" ubyte [number_of_scans] | | | | Description: | | 8-bit unsigned integer array containing the scan state information. | | | | SDS Attributes: | | +-------------------------+--------+-----+-----------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +-------------------------+--------+-----+-----------------------------+ | | long_name | string | 1 | "Scan state flags" | | +-------------------------+--------+-----+-----------------------------+ | | units | string | 1 | "none" | | +-------------------------+--------+-----+-----------------------------+ | | flag_masks | ubyte | 3 | 1, 2, 4 | | +-------------------------+--------+-----+-----------------------------+ | | flag meanings | String | 3 | "HAM_Side, Electronics_Side,| | | | | | Night_Mode" | | +-------------------------+--------+-----+-----------------------------+ | | _FillValue | ubyte | 1 | 255 | | +-------------------------+--------+-----+-----------------------------+ | | +=============================================================================+ HAM = Half-Angle Mirror +=============================================================================+ | 3.5) scan_quality_flags | | | | SDS Name Data Type Dimensions | +-----------------------------------------------------------------------------+ | "scan_quality flags" ubyte [number_of_scans] | | | | Description: | | 8-bit unsigned integer array containing the scan quality information. | | | | SDS Attributes: | | +-------------------------+--------+-----+-----------------------------+ | | Attribute Name | Type |Count| Attribute Value | | +-------------------------+--------+-----+-----------------------------+ | | long_name | string | 1 | "Scan quality flags" | | +-------------------------+--------+-----+-----------------------------+ | | units | string | 1 | "none" | | +-------------------------+--------+-----+-----------------------------+ | | flag_masks | ubyte | 7 | 1, 2, 4, 8, 16, 32, 64 | | +-------------------------+--------+-----+-----------------------------+ | | flag meanings | String | 7 | "Moon_in_SV_KOB EV_Data | | | | | | Sensor_Mode Scan_Sync | | | | | | Tel_Start BB_Temp LWIR_Temp"| | +-------------------------+--------+-----+-----------------------------+ | | _FillValue | ubyte | 1 | 255 | | +-------------------------+--------+-----+-----------------------------+ | | +=============================================================================+ SV_KOB = Space View Keep-Out Box