Software Open Access

Tropical Pacific Chlorophyll Algorithm (TPCA): Source code and matchups v1.0 Primary release for Pittman et al., 2019

Nicholas, Pittman

The Tropical Pacific Chlorophyll Algorithm (TPCA): source code and matchup data is a supplement to Pittman et al., 2019 (2019JC015498).

The matchup dataset is coincident in situ and satellite chlorophyll observations for the tropical Pacific (10°N to 10°S and 150°E to 90°W). The matchups are defined as any coincident matchup within ±2 days and ±1 pixel (~15km). Matchup sets are provided for the satellite sensors SeaWiFS, MODIS-Aqua and MERIS. 

The source code provided includes algorithms for producing the TPCA algorithm from Level 3 Mapped > Daily > 9km RRs data obtained from Example scripts are provided to produce the TPCA from:
1) directly downloading data from the oceandata portal
2) from the matchup database. A number of statistical methods are provided to assess performance. 

Matchup data was obtained from several sources:
1) Tropical Atmosphere Ocean (TAO) mooring maintenance cruises. This is the same dataset used by Strutton et al. (2008), provided by Francisco Chavez, Monterey Bay Aquarium Research Institute.
2) Valente et al. (2016;
3) Word Ocean Database 2018 (WOD; Boyer et al., 2018;


    • Set Python functions to process Rrs data from SeaWiFS, MODIS-Aqua into the TPCA [1] algorithm, built upon CI [2] and OCx [3]. Functions include:
      • blended_chl (Linear blending function [1,2])
      • calculate_chl_ocx (Calculate Chl OCx [1,2,3])
      • calculate_chl_ci (Calculate Chl CI [1,2])
      • calculate_seawifs_chl (Calculate TPCA chl for SeaWiFS with Rrs443, Rrs490, Rrs510, Rrs555, Rrs670)
      • calcuate_modis_chl (Calculate TPCA chl for MODIS-Aqua with Rrs443, Rrs488, Rrs547, Rrs667)
      • calculate_meris_chl (Calculate TPCA chl (Default NASA implementation with Rrs443, Rrs490, Rrs510, Rrs560, Rrs665)
    • Example script which uses the requests library to download L3M Daily 2000-01-01 Seawifs wavelengths for Rrs443,490,510,555,670 and the chlor_a file into a new directory: seawifs_data. Cuts the tropical Pacific out of these files, processes the TPCA algorithm and makes 3 plots; TPCA, chlor_a and the difference between the two.
    • Example script which produces the TPCA algorithm for SeaWiFS and uses tropical_pacific_matchups/seawifs_matchups.csv to produce chlorophyll estimates for the tropical Pacific and uses chl_statistics to assess model performance.
      • Note * The diagnostics produced by this script do not identically reproduce Table 3, SeaWiFS rank 2. The Rrs values provided in the matchup databases are an average of each wavelength in the 45 pixel matchup window. Table 3 was produced instead by calculating chl for each of the 45 pixels, and then averaging the 45 chlorophyll concentrations. This produces slightly different values than seen in the paper. A python Pickle file of the un-averaged Rrs values can be provided on request for accurate reproduction.
    • Contains two functions:
      • plot_linear_trend - Function for plotting differences between two chlorophyll variables.
      • check_bias - Function for calculating % wins, bias, and also returns slope, r2 and intercept. Uses the plot_linear_trend function and prints linear plots to assess model performance.
  • requirements.txt
    • For a conda environment, built using Python 3.7.3.
  • tropical_pacific_matchups/
    • seawifs_matchups.csv
    • modis_matchups.csv
    • meris_matchups.csv

Matchup details

  • Satellite to in situ matchup files as used in Pittman et al., 2019 [1] have been openly provided for as per the Journal of Geophysical Research: Oceans guidelines.

  • Three files are provided. Each file is a *.csv matchup database for one of the three sensors analysed; SeaWiFS, MODIS-Aqua and MERIS.

  • Chlor_a and relevant Rrs data for the three sensors was downloaded from the NASA ocean color portal:

  • Monthly MEI (Multivariate ENSO Index) has matched from:

  • More details about the matchup process and sensor details / sources. R,eprocessing versions are 2018.0 for SeaWiFS and MODIS-Aqua, and 2012.1 for MERIS.

  • In situ fluorometric data has been compiled from three unique sources [4,5,6]

  • Each sensor has a different number of matchups due to time period in orbit, different orbits, cloud cover and quality control.

  • These matchup files are those used in [1]; 2 day radius and 1 pixel. This results in a total of 5 days (day, day, observation, day, day) and a grid of 9 pixels, with the observation located in the centre pixel. The matchups provided are the mean of these 45 pixels. For example in space:

Sat   Sat  Sat

Sat   Ob  Sat

Sat   Sat  Sat

Matchup database

The *.csv files contain 28 fields including:

A description of the matchup databse is available from the github repository: , release v1.0.

Files (219.2 kB)
Name Size
219.2 kB Download
  • Boyer, T.P., Baranova, O.K., Coleman, C., Garcia, H.E., Grodsky, A., Locarnini, R.A., Mishonov, A.V., Paver, C.R., Reagan, J.R., Seidov, D., et al. World Ocean Database 2018. A. V. Mishonov, Technical Editor, NOAA Atlas NESDIS 87.

  • Hu, C., Lee, Z., and Franz, B. (2012). Chlorophyll a algorithms for oligotrophic oceans: A novel approach based on three-band reflectance difference. Journal of Geophysical Research: Oceans 117.

  • O'Reilly, J.E., Maritorena, S., Mitchell, B.G., Siegel, D.A., Carder, K.L., Garver, S.A., Kahru, M., and McClain, C. (1998). Ocean color chlorophyll algorithms for SeaWiFS. Journal of Geophysical Research: Oceans 103, 24937–24953.

  • Pittman, N. A., Strutton, P.G., Johnson, R., Matear R., Chavez, F.P. (2019). An assessment and improvement of tropical Pacific Ocean Color algorithms. Submitted to Journal of Geophysical Research: Oceans

  • Strutton, P.G., Evans, W., and Chavez, F.P. (2008). Equatorial Pacific chemical and biological variability, 1997–2003. Global Biogeochemical Cycles 22.

  • Valente, A., Sathyendranath, S., Brotas, V., Groom, S., Grant, M., Taberner, M., Antoine, D., Arnone, R., Balch, W.M., Barker, K., et al. (2016). A compilation of global bio-optical in situ data for ocean-colour satellite applications. Earth System Science Data 18.

All versions This version
Views 9898
Downloads 55
Data volume 1.1 MB1.1 MB
Unique views 8686
Unique downloads 44


Cite as