MSL12 Code Package Change Log (updated Jun 30, 2020)
Changes-to-make List:
- Improve strayligh/cloudshadow flagging using NIR cloudmask info
- New sensor capabilities: MSI/Sentinel-2
v1.8 (May.15, 2023) Major Updates:
- Implement band-dependent geometry capability (solar/sensor angles)
- Fix a major bug in NIR-SWIR blending scheme (arg float/int issue with windex)
- Add a small program to copy L2 flags for use in second output file.
v1.7 (Oct.19, 2022) Major Updates:
- Implemented SGLI/GCOM-C1 processing capability
- SGLI 672nm and 867nm low/high-gain switch based on glint coefficient
v1.6 (Oct.26, 2021) Major Updates:
- Implemented OLCI/Sentinel-3B processing capability
- Fixed Rayleigh out-of-band correction for VIIRS sensors (changed a0, a1 in getrayleigh.f)
- Add coefficients for GOCI, MODISA and J2 to derive SNPP-consistent products
v1.5 (Jun.23, 2021) Major Updates:
- Implemented J2 processing capability
- Verification of J2 Ocean Color Data Processing Using MSL12
- Prepared LUTs for VIIRS JPSS-2 including sensor file, aerosol tables, default par file and filter file, etc.
- Revised MSL12 codes to add J2 sensor and temporarily use same parameters as NOAA-20
- Investigated and found that the official simulated J2 sample granules cannot be used for the testing purpose (other than the data format verification)
- Used the same NOAA-20 test case delivered to CoastWatch, duplicated the M1 file and modified its metadata to make MSL12 recognizable for the file as a J2 granule
- Generated/simulated a sample J2 granule using NOAA-20 SDR data with changing the metadata for J2
- Processed the "J2 granule" using the MSL12 ocean color data processing with J2 data processing implemented
- We tested with vicarious gains of 1.0 and also using the NOAA-20 vicarious gain set
v1.4 (Oct.30, 2020) Major Updates:
- Multiple NetCDF L2 files output capability
- Improved Landmask with 250m resolution
- Add new evaluationproducts: Suspended Particulate Matter (SPM) and Water Class (by-product of QA score) (Wei et al., 2021)
- Use band ratio info at open ocean only to derive products across various sensors for consistent results (Wang et al., 2020)
- Updated QAA method to use NIR band when calculating IOPs in turbid waters (Shi & Wang, 2019)
- Updated blue-band correction method using spectra information, which can also deal with negative Rayleigh-corrected reflectance (Wang & Jiang, 2018)
- Updated spectra database for QA score calculation
- Adjust f/Q effect to apply only to open oceans
- Updated sensor files to use RSR-weighted water properties
- Improve straylight flagging for VIIRS-NOAA20 using band relationship with SNPP nLw(551) climatology at open oceans only
- Add NIR QAA and NEGLRC, LOWLWCORFR flags
- Fix VIIRS sensor subregion bug due to different aggregation zones
v1.3 (Dec.21, 2018) Major Updates:
- VIIRS-J1 sensor capability
- BRDF options for f/Q effect
- New "start_orbit_number" atttribute in file metadata
- The "processing_version" attrbiute in metadata now uses software version defined in code and gets rest from parameter file
- QA score updated to five common bands across different sensors
v1.22 (Nov.13, 2017) Major Updates:
- New improved aerosol products: averaged flat angstrom "angstrom_ave" and aerosol optical thickness at any wavelength (aot_xxx)
v1.21 (Apr.26, 2017) Major Updates:
- Update analytical multi-scattering Epsilon method during strong absorbing aerosol case
- Update fill values and high-resolution dimension variables
v1.20 (Mar.22, 2017) Major Updates:
- I-band high/low resolution processing capability for VIIRS-SNPP (Wang & Jiang, 2018)
- New sensor capabilities: GOCI/COMS, OLCI/Sentinel-3, and OLI/Landsat8
- New atmspheric processing scheme: NIR+SWIR BMW (OLCI)
- NIR/SWIR atmospheric correction band specification through parameter file
- OCI chlorophyll merging algorithm update
- New quality product: QA Score
- Analytical multi-scattering Epsilon for specified nLw minimum
- Rayleigh optical thickness variation with latitude-dependent gravity
- Sensor-independent LUTs for diffusive transmittance, Rayleigh reflectance and aerosol phase function
- Sensor file updates for RSR-weighted Rayleigh optical thickness, water absorption and backscattering
- Major bug fixes: correct rotation angle for polorization correciton and add NO2 absorption
v1.10 (Apr.19, 2016) Major Updates:
- Wavelength change for VIIRS-SNPP nLw
- NetCDF metadata finalization
- New prodcuts: GIOP implementation
- OCI chlorophyll algorithm coefficients change
- L2 flag change
- Improved straylight flagging with 4km nLw551 climatology and bilinear interpolation
- New NIR atmospheric correction scheme: no NIR correction
- High resolution 250m landmask in NetCDF format (data from MOD44W)
- Implement aerosol dual-model for vicarious calibration purpose
- Iterative scheme in vicarious calibration
- Sun-glint iteration for SWIR processing
- Miscellaneous bug fixes: aerosol single and multi-scattering conversion, taua calculation, mside reading, linear abcde coefficient delcaration, SWIR filtering
v1.02 (Jun.05, 2015) Major Updates:
- Enabled Rrs and rhos outputs
- Redefined ATMWARN flag to not be triggered by negative nLws
- OCI chlorophyll calculation bug fix
- Scale factor and intercept changes for some products
- Valid range changes for Kd products
v1.01 (May.11, 2015) Major Updates:
- Product name change for Kd(490) and Kd(PAR)
- Changed min valid value from zero to a small positive for chlorophyll and Kd prodcuts
v1.00 (Apr.24, 2015) Initial Features:
- NetCDF4 output format and metadata convention compliance
- Product destriping and straylight/cloudshadow flagging as post-processes
- Improved NIR atmospheric correction (BMW) and NIR-SWIR blending scheme
- On-the-fly F-factor ratio application for products of science quality
- Sensor-independent 280-band Rayleigh LUT
- Correct polarization correction for VIIRS-SNPP
- New products QAA IOPs, Kd(PAR) and OCI-based chlorophyll
- Optimized and standardized source code