Oxygen data from Eastern Tropical North Pacific cruises and floats 20212022
Data files
Aug 08, 2024 version files 403.02 MB

CalibratedOxygen.zip

ODZ_Level2.zip

ODZ_Raw.zip

Optode_Calibration.zip

README.md
Abstract
Using standard calibration schemes commercial oxygen optode sensors typically yield oxygen concentrations in the range of 24 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 SternVolmer 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 insitu 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 shipbased STOX measurements by similar amounts. Thus with current sensors, an insitu 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 orderofmagnitude 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.
README: Oxygen data from Eastern Tropical North Pacific cruises and floats 20212022
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 oldstyle 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]
 redphase, bluephase 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.371381. DOI:10.4319/lom.2009.7.371.
And from their manufacturer https://unisense.com/products/stoxmicrosensor/
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 [sigmatheta,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]
 NO3Suna [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.(K283.15).^2)/R/K )(1+Drift (days since start) )'
Variables are
 Taup: 'Phase [uS]'
 Etau: 'Energy is Etau+Etau2*(T10C) [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)/tau1.
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 ****_ddmmmyyyy.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)/Tau1
 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/Tau1
 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 custombuilt 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.
Methods
Data was collected on 10 custombuilt 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.