skip to main content
US FlagAn official website of the United States government
dot gov icon
Official websites use .gov
A .gov website belongs to an official government organization in the United States.
https lock icon
Secure .gov websites use HTTPS
A lock ( lock ) or https:// means you've safely connected to the .gov website. Share sensitive information only on official, secure websites.


Title: Delayed-Mode Quality Control of Oxygen, Nitrate, and pH Data on SOCCOM Biogeochemical Profiling Floats
The Southern Ocean Carbon and Climate Observations and Modeling (SOCCOM) project has deployed 194 profiling floats equipped with biogeochemical (BGC) sensors, making it one of the largest contributors to global BGC-Argo. Post-deployment quality control (QC) of float-based oxygen, nitrate, and pH data is a crucial step in the processing and dissemination of such data, as in situ chemical sensors remain in early stages of development. In situ calibration of chemical sensors on profiling floats using atmospheric reanalysis and empirical algorithms can bring accuracy to within 3 μmol O 2 kg –1 , 0.5 μmol NO 3 – kg –1 , and 0.007 pH units. Routine QC efforts utilizing these methods can be conducted manually through visual inspection of data to assess sensor drifts and offsets, but more automated processes are preferred to support the growing number of BGC floats and reduce subjectivity among delayed-mode operators. Here we present a methodology and accompanying software designed to easily visualize float data against select reference datasets and assess QC adjustments within a quantitative framework. The software is intended for global use and has been used successfully in the post-deployment calibration and QC of over 250 BGC floats, including all floats within the SOCCOM array. Results from validation of the proposed methodology are also presented which help to verify the quality of the data adjustments through time.  more » « less
Award ID(s):
2110258 1936222 1946578
PAR ID:
10321272
Author(s) / Creator(s):
; ;
Date Published:
Journal Name:
Frontiers in Marine Science
Volume:
8
ISSN:
2296-7745
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. Abstract Profiles of oxygen measurements from Argo profiling floats now vastly outnumber shipboard profiles. To correct for drift, float oxygen data are often initially adjusted to deployment casts, ship‐based climatologies, or, recently, measurements of atmospheric oxygen for in situ calibration. Air calibration enables accurate measurements in the upper ocean but may not provide similar accuracy at depth. Using a quality controlled shipboard data set, we find that the entire Argo oxygen data set is offset relative to shipboard measurements (float minus ship) at pressures of 1,450–2,000 db by a median of −1.9 μmol kg−1(mean ± SD of −1.9 ± 3.9, 95% confidence interval around the mean of {−2.2, −1.6}) and air‐calibrated floats are offset by −2.7 μmol kg−1(−3.0 ± 3.4 (CI95%{−3.7, −2.4}). The difference between float and shipboard oxygen is likely due to offsets in the float oxygen data and not oxygen changes at depth or biases in the shipboard data set. In addition to complicating the calculation of long‐term ocean oxygen changes, these float oxygen offsets impact the adjustment of float nitrate and pH measurements, therefore biasing important derived quantities such as the partial pressure of CO2(pCO2) and dissolved inorganic carbon. Correcting floats with air‐calibrated oxygen sensors for the float‐ship oxygen offsets alters float pH by a median of 3.0 mpH (3.1 ± 3.7) and float‐derived surfacepCO2by −3.2 μatm (−3.2 ± 3.9). This adjustment to floatpCO2represents half, or more, of the bias in float‐derivedpCO2reported in studies comparing floatpCO2to shipboardpCO2measurements. 
    more » « less
  2. Abstract Global climate change has impacted ocean biogeochemistry and physical dynamics, causing increases in acidity and temperature, among other phenomena. These changes can lead to deleterious effects on marine ecosystems and communities that rely on these ecosystems for their livelihoods. To better quantify these changes, an array of floats fitted with biogeochemical sensors (BGC‐Argo) is being deployed throughout the ocean. This paper presents an algorithm for deriving a deployment strategy that maximizes the information captured by each float. The process involves using a model solution as a proxy for the true ocean state and carrying out an iterative process to identify optimal float deployment locations for constraining the model variance. As an example, we use the algorithm to optimize the array for observing ocean surface dissolved carbon dioxide concentrations (pCO2) in a region of strong air–sea gas exchange currently being targeted for BGC‐Argo float deployment. We conclude that 54% of the pCO2variability in the analysis region could be sampled by an array of 50 Argo floats deployed in specified locations. This implies a relatively coarse average spacing, though we find the optimal spacing is nonuniform, with a denser sampling being required in the eastern equatorial Pacific. We also show that this method could be applied to determine the optimal float deployment along ship tracks, matching the logistics of real float deployment. We envision this software package to be a helpful resource in ocean observational design anywhere in the global oceans. 
    more » « less
  3. Abstract Satellite‐based sensors of ocean color have become the primary tool to infer changes in surface chlorophyll, while BGC‐Argo floats are now filling the information gap at depth. Here we use BGC‐Argo data to assess depth‐resolved information on chlorophyll‐a derived from an ocean biogeochemical model constrained by the assimilation of surface ocean color remote sensing. The data‐assimilating model replicates well the general seasonality and meridional gradients in surface and depth‐resolved chlorophyll‐a inferred from the float array in the Southern Ocean. On average, the model tends to overestimate float‐based chlorophyll, particularly at times and locations of high productivity such as the beginning of the spring bloom, subtropical deep chlorophyll maxima, and non‐iron limited regions of the Southern Ocean. The highest model RMSE in the upper 50 m with respect to the float array is of 0.6 mg Chl m−3, which should allow the detection of seasonal changes in float‐based biomass (varying between 0.01 and >1 mg Chl m−3) but might hinder the identification of subtle changes in chlorophyll at narrow local scales. Both model and float profiling data show good agreement with in situ data from station ALOHA, with model estimates showing a slight accuracy edge in inferring depth‐resolved observations. Uncertainties in float bio‐optical estimates impede their use as a reliable benchmark for validation, but the general qualitative agreement between model and float data provides confidence in the ability of model to replicate biogeochemical features below the surface, where data is not directly constrained by the assimilation of satellite ocean color. 
    more » « less
  4. Abstract Marine net community production (NCP), a metric of ecosystem functionality, is often estimated as the residual term in a mass balance equation that aims to describe upper ocean variations in the time series of a chemical tracer. The advent of biogeochemical (BGC) Argo profiling floats equipped with nitrate, pH, and oxygen sensors has enabled such NCP estimation across vast ocean regions. Floats typically drift at 1,000 m depth between profiling from ∼2,000 m to the surface every 10 days, resulting in quasi‐Lagrangian time series that can reflect different upper ocean water masses over time. However, limited information about real‐time horizontal tracer gradients often leads to lateral processes being omitted during tracer budget closure, which can bias the residual‐term NCP estimates. To determine the potential magnitude of such biases, we developed a method to quantify and adjust for the impact of lateral float movement across horizontal tracer gradients using dissolved inorganic carbon (DIC) as our case study. We evaluated the method by extracting artificial float profiles from a depth‐resolved observation‐based DIC product to generate an artificial DIC time series. We then estimated NCP before and after accounting for horizontal gradient effects and compared the results to NCP estimates from an artificial DIC time series extracted at a fixed location along the float trajectory. Testing 10 biogeographical domains with moderate to substantial horizontal DIC gradients, our method significantly improved the precision (by ∼50 to ∼80%) and accuracy (by ∼10 to ∼100%) of regional NCP estimates. This method can be applied to other tracers with multi‐month‐long residence times. 
    more » « less
  5. Using standard calibration schemes commercial oxygen optode sensors typically yield oxygen concentrations in the range of 2-4 umol/kg under anoxic conditions. They are thus unable to detect the roughly 0.1 umol/kg levels of oceanic functional anoxia. Here, a modified Stern-Volmer equation is used to characterize and calibrate 26 optodes deployed on 16 autonomous floats in the Eastern Tropical Pacific (ETNP) oxygen deficient zone (ODZ) using a combination of manufacturers', laboratory, and in-situ data. Laboratory calibrations lasting several months and conducted over 2 years show that optodes kept under anoxic conditions drift at rates of order 0.2 umol/kg/yr, with much higher drifts in the first month. The initial transient is plausibly due to the degassing of plastic components of the optodes and might be reduced by replacing these with metal. Oxygen concentrations measured by these calibrated optodes in the nearly anoxic ODZ core of the ETNP deviated from both the laboratory calibrations and ship-based STOX measurements by similar amounts. Thus with current sensors, an in-situ anoxic oxygen calibration only once or twice a year is needed to maintain an accuracy close to 0.2 umol/kg. An algorithm to find the anoxic cores of the ETNP ODZ is developed and used to remove the drift in the float optodes to this accuracy. This is an order-of-magnitude improvement in the low oxygen performance of the optodes and could be implemented on the existing database of Argo oxygen floats to map the geography of functional anoxia. This dataset contains the raw float data, the float data calibrated using the manufacturers’ schemes and our new scheme. The calibration points and our final calibration constants, as well as the STOX data used to validate our new calibrations, are included. Data was collected on 10 custom-built profiling 'ODZ' floats equipped with oxygen optodes and gas tension devices and on 6 standard Argo floats with oxygen sensors. Argo data was processed by Argo and recalibrated at APL/UW. ODZ float data was processed at APL/UW as described in the associated manuscript. # Oxygen data from Eastern Tropical North Pacific cruises and floats 2021-2022 [https://doi.org/10.5061/dryad.8kprr4xwk](https://doi.org/10.5061/dryad.8kprr4xwk) ## Description of the data and file structure ## **ODZ Level2.zip** contains scientific data for the ODZ floats converted from raw data using nominal calibrations. Level_2 in NASAspeak. A README, Diagnostic plots, and a Matlab conversion program are included.  The script ***MRVFloatDecode_2023.m*** reads the raw files for the ODZ floats and puts them in a single Matlab file **xo110-.mat** where the first is the float number and the second is the boot number. It makes lots of plots, which I also include. Matlab substructures and variables are: ***CTD*** – Structure containing Seabird 41CT data * P, T, S – pressure [dbar], temperature [deg C], practica salinity as computed by Seabird [psu] * time, mtime – time in Matlab datetime and datenum formats * SA, CT, Sig0 – Absolute salinity [g/kg], conservative temperature [deg C], potential density [kg/m^3] * CC, W, Drag–estimated oil volume [cc], vertical velocity [m/s], Drag force (for ballasting) [N] ***GPS*** – position * time, mtime - time as Matlab datetime, Matlab datnum * lat,lon- location degrees latitude, degrees longitude * nsat, hdop – number of satellites, horizontal dilution of precision ***GTD*** – Gas Tension Sensor * time, mtime - time as Matlab datetime, Matlab datnum, * P, T, S, Sig0 – Pressure [dbar], temperature [deg C], practical salinity [psu], potential density [kg/m^3] * GT – gas tension [mbar] * Tgtd – temperature of GTD [ deg C]  * Ref- time [matlab datenum], temperature [deg C], pressure [mbar] for reference sensor * Other variables are calibration constants and check values. ***SBE5M1,SBE5M2*** - status of pumps. 1 is for optode(1) and GTD. 2 is for reference optod  ***oldGTD*** - One float had an old-style GTD for reference.  ***optode*** - SBE63 optodes (1) is water optode, (2) is reference optode * time, time -time as Matlab datum and date time * SN – optode serial number * red_amp, blue_amp- amplitudes of red and blue LEDs [counts] * red-phase, blue-phase- phases [microvolts] of fluorescence phase. * O2phase- their difference [microvolts] used to compute oxygen * T – optode temperature [deg C] * O2uM – optode’s computed oxygen concentration converted to uMol/kg. * Tctd, S, P, Sig0 – CTD interpolated to optode time - temperature [deg C], practical salinity [psu], pressure [dbar], potential density [kg/m^3] ***ADC, AirPump, AirValve, OilPump,*** ***OilValve*** - structures diagnosing the buoyancy system operations. Scientfically uninteresting. ## ***STOX Oxygen Profiles.zip*** Contains high precision oxygen profiles taken on the two Sally Ride cruises using STOX oxygen sensors. The data is provided as .txt and .mat formats along with miscellaneous data from the CTD. Oxygen measurements from the floats were referenced to STOX oxygen profiles taken from the ship on the two cruises because these provide much more stable and high precision measurements. STOX sensors are described in detail in Revsbech, N. P.; Larsen, L. H.; Gundersen, J.; Dalsgaard, T.; Ulloa, O. and Thamdrup, B. ( 2009) Determination of ultra‐low oxygen concentrations in oxygen minimum zones by the STOX sensor. Limnology and Oceanography: Methods, 7, pp.371-381. DOI:10.4319/lom.2009.7.371. And from their manufacturer [https://unisense.com/products/stox-microsensor/](https://unisense.com/products/stox-microsensor/) STOX data was collected on two cruises of the research vessel, Sally Ride, SR 2114 and SR2011. Data from each CTD cast with a STOX profile is in a separate folder in this archive. In each, the raw data is in a ****.txt*** file and the converted Matlab data is in a ****.mat*** file. MATLAB scripts to read the ****.mat*** file are included in each folder. Data names and units are: Ship Cruise Station Cast Year Month Day Hour Minute * Depth [m] * Latitude [deg]  * Longitude [deg] * Density [sigma-theta,kg/m^3]  * Temperature [ºC]  * Salinity * Beam Attenuation [1/m] * Fluorescence [mg Chla/m3]  * PAR [umol/m2/s] * Oxygen_SBE [µmol/kg]) * Oxygen_STOX [µmol/kg] * STOX_SD [µmol/kg] * STOX_n [µmol/kg] * NO3-Suna [uM] ## **Optode Calibration.zip**  Contains all of the calibration data used to calibrate the optodes including the anoxic laboratory points, the manufacturers' calibration points, and the coefficients of the calibration model for each optode.  **Seabird 63 Optodes** Anoxic calibration data and model fit are in ***AnoxicCalibration/SBE63/2020/*** and ***/2021/***. The 2020 data was used in the final calibration. * Files are *******Tau0model.mat*** where **** is the optode serial number * Variable ***meta*** explains each variable, repeated here. Calibration model is '1./Taup.*exp(-(Etau+Etau2.*(K-283.15).^2)/R/K )*(1+Drift *(days since start) )' Variables are * Taup: 'Phase [uS]' * Etau: 'Energy is Etau+Etau2*(T-10C) [J/mol] * Drift: 'Drift coefficient in the model [1/days] * Ttau: 'Time scale of drift [days] * Drift_uSday: 'Model Drift uS/day' * Dcal: 'Robust Drift. The drift line is Dcal(2)+ Dcal(1)*(Yearday of 2021) in uMol. Drift is Dcal(1) [uMol/day] * Drms: 'RMS drift fit error [uS] * Derr: 'Uncertainty in Dcal; Drift uncertainty is Derr(1) [uMol/day]'  Calibration points from the anoxic tank are in structure ***RawS.*** Variable ***meta*** explains each variable, repeated here. * K: 'Temperature [Kelvin]' * O2phase: 'O2 phase tau [uS]' * R: 'Gas constant [J/K/mol] * dyd: 'Time since start of record [days]' * TIME: 'Time [matlab datetime] * Omodel: 'Tau computed from model with drift [uS] * OmodelND: 'Tau computed from model with drift removed [uS] **Full Calibration/** contains the oxic calibration points and calibration coefficients Calibration points from Seabird supplied with optode are in **SBE63/*FactoryCalibration/ ****_dd_mmm_yyyy.mat ***where **** is the optode serial number. The calibration date follows. Variables are * Caltime - Calibration time [matlab datum] * ID - Serial number * O2in_mll - Oxygen in tank from winklers [ml/L] * O2out_mll - Oxygen computed from Seabird calibration [ml/L] * S - Salinity [psu] * T - Temperature [deg C] * resid_mll - model residual [ml/L] * tau_us - optode phase lag [microseconds] The oxic part of the optode model calibration coefficients are in ***SBE63/Calfiles/*** Calibration model, coefficients, and check values are in ***Calfiles/_oxic_model.mat*** where **** is the optode SN Data is in structure ***Kfile*** ***Kfile.meta*** explains the variables, repeated here. Model is pO2=eta/K(T) * (1 + a(T)*eta^2.3)^q(T) ; eta= tau0(T)/tau-1.  Note that tau0(T) is computed from *******_Tau0model.mat*** coefficients above. Variables are * Check: 'Test values of T, Tau, and pO2 from SBE cal' * Lk: 'K(T)=polyval(Lk, T) - Matlab call to compute K from Lk polynomial coefficients and T [deg C] * La: 'a(T)=polyval(La,T)' * Lq: 'q(T)=polyval(Lq,T)' **Aanderaa 4330 Optodes** **Anoxic calibration** data and model fit is in ***AnoxicCalibration/AA/*** \**                  **File names and formats are the same as for SBE63 optodes **Full Calibration/AA** **/Factory Calibrations** contains the calibration information supplied with the optodes Files are *******_dd-mmm-yyyy.mat*** with the same format as for the SBE63 The relevant variables are: * Caltime - Calibration time [matlab datenum] * ID - Serial number of optode * O2in_uMol - Calibration bath oxygen [uMol/L] * S - Salinity [psu] * T - Temperature from optode [deg C] * tau_deg - optode output phase [degrees] * meta - Misc information **/Calfiles/********_M0_oxic_model.mat** contain oxic part of the optode model calibration coefficients The format is the same as for SBE63, but there is an extra variable * eta_off: Add this to eta to account for drift since calibration [uS] ## **Calibrated Oxygen.zip** contains both uncalibrated and calibrated optode data for both the ODZ and Argo floats. A README file and Matlab processing programs are included. /***SBE63/xo110**-***.mat*** contain the calibrated data for **ODZ float xo110** Format and data is identical to that in the ***optode*** structure in ***ODZ_Level2_Mat,*** but with 2 extra variables * pO2 – partial pressure of oxygen [mbar] in uncalibrated data * Cal – a structure containing calibrated data -- FINAL DATA IS HERE * pO2: partial pressure of oxygen [mbar] in calibrated data  * Tau0m: Calibration model of anoxic phase [microsecond]. Includes offset. * Tau: Measured phase [microsecond] * Tauoff: offset in Tau from in situ calibration [uS] * eta: (Tau0m+Tauoff)/Tau-1 * O2uM: oxygen concentration [micromoles/kg] * O2umol: same Note that optode(1) is the water oxygen. Optode(2) is a reference optode, which is not of scientific interest.  **/SBE63/Reprocess_SBE63.m** is a MATLAB script showing how to combine calibration data and float data to make calibrated data for SBE63 optodes **/AA/Mat/*FloatID*/*FloatID_profilenum*.mat** contains Argo float data from float FloatID, profile number profilenum. Variables are Data from Argos float archive * mtime, time - time in datetime and datenum formats * lat, lon - GPS position latitude degrees and longitude degrees * P, T, S - CTD pressure [dbar], temperature [deg C], salinity [psu] * Optode - Optode serial number * O2T - Optode temperature [deg C] * O2phase - Optode phase [degrees] * O2umol - Optode oxygen [micromole/kg] Added variables * Kfile - Structure as in Optode Calibration files. Kfile.meta also has metadata * Cal - Structure containing calibrated optode data on the same timebase * Tau - measured phase [degrees] * Tau0m - Model anoxic phase [degrees] * Tauoff - Offset from laboratory calibration [degrees]. Includes offset & drift. * Drift - Drift [degrees/year] * mtime0 - base time for drift [matlab datenum format] * eta - Tau0m/Tau-1 * pO2 - Calibrated Oxygen partial pressure [mbar] * O2umol - Calibrated Oxygen concentration [micromole/kg] * meta - similar list to this one. * SN - same as Optode * Float - FloatID **/AA/Mat/*FloatID*/*FloatID_profilenum*.xls** contains the calibrated data in Excel format ***/AA/Reprocess_3_AA.m*** is a MATLAB script showing how to combine calibration data and float data to make calibrated data for AA optodes ## ***ODZ Raw\.zip*** contains the raw data from 9 custom-built ODZ floats. Level_1 in NASAspeak. They can be read by ***MRVFloatDecode_2023.m*** included in ***ODZ Level 2 files*** ## Code/Software Processing and reading scripts in Matlab (24.1.0.2628055 (R2024a) Update 4) are provided. 
    more » « less