Sensor Algorithms

The algorithm code used to generate each data product in the OOI Cyberinfrastructure system can be found in the ion-functions GitHub repository.

Sensor algorithms are free for the community to download and utilize, either as they use OOI raw data, or to be adapted for their own observational data. Note that the provided algorithms are written in Python.

The OOI Data Functions are implemented in this group of modules. These modules, and the functions therein, represent the transforms and calculations applied to parameters uploaded to the system via either dataset or instrument agents, and are used to determine various OOI data products. A brief description of the modules and their contents are provided below. Each set of modules is grouped according to its Instrument Family as defined in SAF.

Available Python Scripts

pCO2 Water (PCO2W)

Calculation of the L1 PCO2WAT data product and extraction of the associated L0 data products. (


Calculation of the L1 CONDWAT, TEMPWAT and PRESWAT data products, and the L2 PRACSAL and DENSITY data products. (

Dissolved Oxygen (DOFST, DOSTA)

Calculates DOFST and DOSTA data products. (do2_functions.pyDirect Covariance Flux (FDCHP)Calculation of the FDCHP data products. (


Calculation of the L1 CDOMFLO, L1 CHLAFLO, and L1 and L2 FLUBSCT data products. (

Hydrophone (HYDBB)

Calculates the L1 HYDAPLF and HYDAPBB data products. (

Bulk Meteorology Instrument Package (METBK)

Calculation of the METBK L1 & L2 data products. (

Mass Spectrometer (MASSP)

Calculates all of the L1 and L2 data products associated with the MASSP instrument. In addition, it includes all of the functions needed to calculate the necessary auxiliary data products including timestamp and calibration range information. (

Nitrate (NUTNR)

Calculates the L2 temperature and salinity corrected dissolved nitrate concentration (NITRTSC) data product. (

Ocean Bottom Seismometer (OBSBB)

Calculates the L1 GRNDVEL, GRNDACC and SGRDVEL data products. (

Optical Properties (OPTAA, PARAD, SPIKR)

Calculation of the data products from the OPTAA, PARAD, and SPKIR instrument classes. (

Provides an array of the published wavelength-dependent temperature and salinity correction factors for the OPTAA data products. Values are provided by the vendor. (

Seawater pH (PHSEN)

Covers calculation of the L1 PHWATER data product and extraction of the associated L0 data products.(

Seafloor Pressure (BOTPT)

Covers calculation of the L1 (BOTTILT) and L2 (BOTSFLU) data products collected from the BOTPT instruments. (

– Dictionary of compass calibration data required by prs_bottilt_ccmp. (
– Re-organized dictionary of compass calibration data required by the faster version of prs_bottilt_ccmp; the code for the faster version is currently commented out within the prs_bottilt_ccmp code. (

BOTSFLU: Functions calculating data products and event notifications. Binary v7 matlab save file (prs_functions_tides_2014_thru_2019.mat)

Seafloor Properties (THSPH, TRHPH, and PRESF)

Covers calculation of L1 and L2 data products collected from the THSPH, TRHPH, and PRESF instruments (

Recreates the 3 arrays of temperature (tdat), conductivty (sdat) and chloride (cdat) from the Larson et al 2007 derived calibration surface provided to CI in a Matlab file (Larson_2007surface.mat). This file is required by sfl_trhph_chloride. (


Covers calculation of the L1 VELPROF, VELTURB and ECHOINT data products from the tRDI ADCPs used throughout the program (

Single Point Water Velocity (VEL3D, VELPT)

Covers calculation of the L1 VEL3D Eastward, Northward, and Upward component data products from VEL3D and VELPT instruments (

Surface Wave Spectra (WAVSS)

Covers calculation of the WAVSS data products WAVSTAT from the TRIAXYS instrument (

Additional Functions

Provide for transforms and calculations that apply to multiple instrument families. (