enzh-CNfrdeeliwitjakorues

CalCOFI processes our CTD casts using the guidelines recommended by Seabird for our 911+ sensor array and depths. Please refer to the CTD Data Processing Protocol web page for the Seasoft modules applied. This page describes the in-house software used to merge CTD sensor data with bottle data, derive bottle corrections to apply to sensor data, & CTD data flagging. Also explained is the organization of data and metadata files distributed online as preliminary & final data products.
Files referenced: '.asc' & '.hdr' files are Seasoft-generated CTD data files. All other files referenced are SIO-CalCOFI data files generated at-sea and ashore from data acquistion & analysis software and SIO-CalCOFI-developed in-house software. SIO-CalCOFI's data processing methods, file formats, and metadata descriptions are available on the Data FormatsMethods web pages.

1A) BTLvsCTD1 Step 1: (files required: sta.csvs with all bottle data columns populated; corrected YYMMcasts.csv, Seasoft-processed non-binavg CTD.asc & .hdr files). Preliminary bottle data ('YYMM###.csv' sta.csvs) are merged with 4-sec-ave (prior-to-bottle-closure) CTD .asc data, creating a single YY-YYMMSS_CTDCSV###-###.csv that is imported into Excel.

1B) Bottle vs CTD sensor data are plotted: primary CTD oxygen vs bottle oxygen ml/L & umol/kg; secondary CTD oxygen vs bottle ml/L & umol/Kg; FlV (usually V1) vs Chl-a; ISUSV (usually V6) vs NO3; CTD Salts > 350m are compared to bottle salts.

Three duplicate spreadsheets are pasted as new sheets to allow sorting and deletion of specific columns (or you can cut-paste specific columns to new sheets, if you prefer)

  • 'Salts > 350m' - all data are sorted by Pr or Depth, Largest to smallest and all rows less than 350m deleted. Two columns are added: bottle salt - CTD Salt00 & bottle salt - CTD Salt 11. Mean, SD, Min, Max, & n are calculated at the bottom of the column. Any values above 0.02 are excluded. The mean values of the bottle minus primary & secondary salts become the offsets.
  •  'Oxygen umol/kg' - for some reason leaving blank fields in the umol/Kg O2 columns can generate "wavy" scatter plots so deleting rows missing bottle oxygen data and missing CTD oxygen sensor data (unusual) is advised. "Fliers" are removed - either bad or questionable bottle or sensor data. Four plots total - Ox1ML vs OxB, Ox2ML vs OxB, Ox1UM vs OxB, Ox2UM vs OxB.
  •  'ISUS vs NO3' - remove missing or 0 ISUS voltages rows and missing bottle NO3 rows then plot & add a trendline.
  •  'Fluorometer voltage vs chl-a' plot can be generated from the main spreadsheet without issue. Or you can create a 'Chl-a' spreadsheet sorted by depth and delete all depths > 200m.

On all plots - all bottle-data fliers, such as mistrips or misdraws, are removed before trendlines added. PDF plots of all regressions are generated plus 400px & 1024px jpgs for posting online. Preliminary regressions and plots are posted since it can take a year for final data to become available. Once final, regression coefficients and plots are updated with new data.
1C) Seasoft 'Split' and 'Binavg' modules are applied to CTD.asc files, generating 1m binavg up & downcast asc files. It is important to verify any mislabeled CTD .hdr files have been corrected before step 2A to insure the matching sta.csv merges properly with CTD.asc. When there's a mismatch, it's usually caused by the cast number (###; aka 'Proc #' or 'Order Occupied') or CalCOFI Line Sta (eg 93.3 120.0) values being mis-entered when the cast starts. It is usually corrected at-sea but the .hdr correction may be lost if the .hex file has not been corrected. It requires the cast's .hex file be corrected using a binary editor (HxD Hex Editor) to stop the error from re-appearing when processed by Seasoft. If corrected, the original CTD cast .hex & .hdr files should be updated into the cast.zip (YYMM###.zip) & the cruise's YYMMSS_CTDCast.zip distributed online, & documented on the 'CTD Updates' web page.

1D) Inspect and correct YYMMcasts.csv & YYMMevents.csv. YYMMevents.csv will require "erase previous event" editing and Line & Sta verification. After YYMMcasts.csv and YYMMevents.csv have been manually corrected, run the DECODR2 'Clean Event Log' module to compare casts.csv order occupied numbering to the eventlog. (JLW usually checks & corrects the YYMMcasts.csv so coordinate with her to avoid duplicating effort).

CalCOFI deploys a 24-10L bottle CTD-Rosette on our quarterly cruises. The ability of CalCOFI to collect seawater samples at the same time as electronic sensor data allows CalCOFI to use bottle data to correct & calibrate CTD data and vice-versa. CalCOFI's hydrographic time-series is historically based on bottle sampling since 1949. But since 1993, the hydrographic time-series data has integrated CTD sensor data - all temperatures are typically from the primary CTD temperature sensor. Secondary temperature data may be used if the primary temperature data are problematic ie biofouled. Some bottle salinities, typically ISLs (interpolated standard levels) or missing bottle data, may be replaced by CTD sensor salinities. Most bottle oxygen ISL data or missing bottle data reported are CTD oxygen sensor data. Footnotes in the hydrographic data reports usually specify the source.

Our Seabird 911+ is configured with dual Temperature, Conductivity, and Oxygen sensors on separately plumbed & pumped sensor arrays. These are the only redundant sensors on our CTD; data from these sensors are labeled Temp1, Salt1, Ox1, & Temp2, Salt2, Ox2 respectively. Other single sensors include: a fluorometer (Wetlabs currently or Seapoint, Chelsea on older cruises), transmissometer (660nm, 25cm Wetlabs C-Star currently), Satlantic ISUS v3 Nitrate sensor, remote PAR & surface PAR (Biospherical), pH (Seabird SBE18), and altimeter (Benthos/Datasonics).

CTD sensor data that are bottle-corrected are: primary (Salt1) and secondary (Salt2) salinities; primary and secondary oxygens in both ml/L ((Ox1, Ox2) and uM/Kg (Ox1uM, Ox2uM); fluorometer estimated chlorophyll-a (EstChl); and ISUS estimated nitrate (EstNO3).

On the upcast, we collect seawater samples at ~20 depths and use the bottle values to calibrate certain sensors. CalCOFI typically deploys the CTD-Rosette to 515m, depth-permitting, or if shallower, to within ~10m of bottom. An altimeter is installed and used to determine height off the bottom. Weather-permitting, the wireout speed is 30m/min for the first 100m then 60m/min to terminal depth. The CTD-Rosette descends without stopping to the terminal depth, referenced as the downcast and annotated "D" in final data. Based primarily on the downcast fluorometer profile and mixed layer depth, the upcast will stop a specific depths to collect seawater samples. Ten meter bottle spacing is centered around the fluorometer (chlorophyll-a) peak. Other depths are based on historical "standard' level depths such as 10m, 50m, and 100m. Please note that there are two basin stations, Santa Monica Basin & Santa Barbarba Basin, where the CTD-Rosette is deployed deeper than 515m, to within 10m of bottom. Winter & Spring CalCOFI cruise CTD casts on Line 66.7 (MBARI's SECRET line) are often to 1000m.

Bottle-correcting Salinities: A salinity offset is calculated by comparing bottle salinities from depths greater than 350m, where the slope is near-vertical, to CTD primary (Salt1) and secondary (Salt2) salinities values. The offsets are applied to all the CTD salts and reported as Salt1_Corr & Salt2_Corr. The SaltAve_Corr is the average of these two columns. Non-corrected salinities are included in the CTD data csvs as Salt1 & Salt2.

Bottle-correcting Oxygens: Seabird SBE43 oxygens sensors often over-estimate the oxygen surface value near-surface during the downcast. Soaking the CTD near-surface for several minutes improves this issue but using bottle vs CTD oxygen regression coefficients work well. CalCOFI applies two bottle corrections to CTD primary and secondary oxygen sensor data:

  1. Cruise-corrected: four-second averages of CTD oxygen data are plotted versus the oxygen bottle data for the entire cruise. "Four-seconds-prior-to-bottle-closure" average CTD oxygen data  is calculated using 96 records (24 records/sec x 4 secs) of oxygen data before the bottle closure confirmation scan number. Seasoft collects CTD data at 24 scans/sec and each scan (data record) is numbered chronologically, starting at 1. When a bottle is tripped and the deck unit receives confirmation the bottle has fired and closed successfully, the current scan number is recorded in the data files. Two scan values are recorded - one when the bottle trip is initiated and one when the bottle closure confirmation is received. These are tabulated for every bottle closure in the .bl file for each cast as well as embedded in the CTD data file (.hex or .dat).
    SIO-CalCOFI developed software (BtlVsCTD.exe) parses the bottle confirmation scan number for each bottle from within the .bl file. Then averages 96 (4-secs) scans of data prior to the bottle closure and merges it into a csv with the matching depth bottle values. Note - the "4-sec ave prior to bottle closure" criteria for sensor data is SIO-CalCOFI's method of comparing a consistent number of records to bottle data. The number of records average in 1m binavg data is variable. Depending on the total time for a CTD-rosette stop and bottle closure, averaging 200 to 2000+ records.
  2. Station-corrected: sensor behavior can vary from station to station particularly if the seawater temperature changes significantly. Although cruise-corrected CTD oxygen sensor data are very good, station-corrected CTD oxygens are consider the best since it accounts for variability in sensor behavior. Our software program (BtlVsCTD), compares the bottle oxygen data from the individual cast to 4-sec averaged CTD oxygen data. A regression is generated from this comparison and correction coefficients are applied dynamically to bottle-correct the CTD sensor oxygens. "Dynamically' means each station will have slightly different correction coefficients, which are tabulated in a metadata file.
    The correction coefficients are applied to all 1m binavg CTD oxygen data and the bottle vs continuous data are plotted for both primary & secondary sensors. These plots are available in the CTD data files, in the csvs-plots sub-directory. All regression coefficients including the dynamic regressions derived for each cast for both primary and secondary oxygens are tabulated in the metadata coefficients file.

Estimated Chlorophyll: quantifying chlorophyll from fluorometer data is challenging due to variability in the state of the phytoplankton. The primary use of the CTD fluorometer is to identify the depth of the chlorophyll maximum to target bottle seawater sampling depths. Since CalCOFI typically collects and analyzes over 1000 chlorophyll samples per cruise. We compare discreet chlorophyll measurements vs fluorometer voltages (4-sec averages prior to bottle closure). The regression coefficients generated are then applied to fluorometer voltage to estimate chlorophyll. As with CTD oxygens, both cruise-corrected and station-corrected values are calculated with station-corrected estimated chlorophyll-a considered the best.

Estimated Nitrate: the Satlantic MBARI-ISUS nitrate sensor is deploy on the CTD-rosette in vertical orientation and battery powered. As with chlorophyll, since CalCOFI typically collects and analyzes over 1000 nutrient samples per cruise. We compare discreet nitrate measurements vs ISUS voltages (4-sec averages prior to bottle closure). The regression coefficients calculated are applied to ISUS voltage to estimate nitrate. Both cruise-corrected and station-corrected values are calculated with station-corrected considered the best.
Note: it was due to the "burn-in" drift caused by a new ISUS lamp that necessitated the development of the station-corrected regression method. Originally, only the cruise-correction coefficients were derived and applied to ISUS voltages. But when an ISUS with new lamp was deployed, the ISUS estimated-nitrate was (initially) severly underestimated. As the lamp "burned-in" over the first 10 casts, the NO3 vs voltage relationship changed. It took ~8 hours of "burn-in" for the ISUS voltage vs NO3 relationship to stabilize.Addressing station-to-station variability necessitated the implementation of station-corrected regression methodology. This bottle-correction has been applied to oxygen and fluorometer sensors as well. The station-correction method only works on CTD stations where bottle samples are taken. On some cruises, stations north of Pt Conception may have a reduced number or no bottle samples taken so station-corrected CTD data will not be available. Bottle-corrected CTD data, using cruise-average coefficients derived from southern stations, are usually available.

Transmissometer: a variety of transmissometers have been deployed on our CTD-rosette since 1993. For the last decade, a Wetlabs C-Star 660nm 25cm transmissometer has been our primary unit. Standard practice is to calculate updated M & B coefficients by doing a deck test once the CTD is terminated. A dark voltage and in-air voltage are measured then M & B coefficient derived using a transmissometer Excel spreadsheet template. M & B are entered into the Seabird .xmlcon file before the first cast. 1m binavg beam attenuation coefficient and % transmission data are derived using standard Seabird processing modules. These data are included in the CTD data csvs but no additional corrections are applied or further processing performed.

pH: although CalCOFI has deployed a Seabird SBE18 pH sensor on our CTD-rosette since 2009, no bottle-corrections have been applied. DIC-pH samples have been collected but a cross-check or bottle-sample calibration routine has not been implemented yet.

Data available as cruise-corrected and station-corrected are: primary & secondary oxygen data in ml/L & uM/Kg, ISUS estimated nitrate data, and fluorometer estimated chlorophyll. Seasoft-processed, non-bottled corrected CTD data are also reported along with other CTD physical measurements such as density, potential temperature, specific-volume anomaly, dynamic height, and other nutrients - silicate, nitrite, phosphate, and ammonia.

CTD Updates & Corrections

20 Aug 2020 - posted final re-processed 0110NH CTD data: 20-0110NH_CTDFinalQC & DB.zip
30 Jun 2020 - posted final re-processed 0201JD CTD data: 20-0201JD_CTDFinalQC & DB.zip
22 Jun 2020 - posted final re-processed 0204JD CTD data: 20-0204JD_CTDFinalQC & DB.zip
15 Jun 2020 - posted final re-processed 0207NH CTD data: 20-0207NH_CTDFinalQC & DB.zip
03 Jun 2020 - posted final re-processed 0211NH CTD data: 20-0211NH_CTDFinalQC & DB.zip
26 May 2020 - posted final re-processed 0302JD CTD file: 20-0302JD_CTDFinalQC & DB.zip
22 May 2020 - added extra CTD stas to final re-processed 0304RR CTD file: 20-0304RR_CTDFinalQC.zip
19 May 2020 - posted final re-processed CTD data from 0304JD: 20-0304JD_CTDFinalQC & DB.zip
17 May 2020 - posted final re-processed CTD data from 0304RR: 20-0304RR_CTDFinalQC & DB.zip
26 Mar 2019 - posted final processed CTD data from 1804SH: 20-1804SH_CTDFinalQC & DB.zip
19 Mar 2019 - posted final reprocessed CTD data from 0504NH: 20-0504NH_CTDFinalQC & DB.zip
16 Mar 2019 - posted final reprocessed CTD data from 0507NH: 20-0507NH_CTDFinalQC & DB.zip
13 Mar 2019 - posted final reprocessed CTD data from 0511NH: 20-0511NH_CTDFinalQC & DB.zip
05 Mar 2019 - posted final reprocessed CTD data from 0602JD: 20-0602JD_CTDFinalQC & DB.zip
01 Mar 2019 - posted final reprocessed CTD data from 0604NH: 20-0604NH_CTDFinalQC & DB.zip
25 Jan 2019 - posted final reprocessed CTD data from 0607NH: 20-0607NH_CTDFinalQC & DB.zip
24 Jan 2019 - posted final reprocessed CTD data from 0610RR: 20-0610RR_CTDFinalQC & DB.zip
18 Jan 2019 - posted final processed CTD data from 1802SH: 20-1802SH_CTDFinalQC & DB.zip
   Also re-posted 20-1802SH_CTDCast.zip w/ sta correction to Cast 045
17 Jan 2019 - reposted final processed CTD data from 1711SR: 20-1711SR_CTDFinalQC & DB.zip w/ missing transmissometer data
16 Jan 2019 - reposted final processed CTD data from 1708SR: 20-1708SR_CTDFinalQC & DB.zip w/ missing transmissometer data
10 Jan 2019 - reposted final processed CTD data from 1704SH: 20-1704SH_CTDFinalQC & DB.zip w/ missing transmissometer data
08 Jan 2019 - reposted final processed CTD data from 1701RL: 20-1701RL_CTDFinalQC & DB.zip w/ missing transmissometer data
03 Jan 2019 - reposted final processed CTD data from 1611SR: 20-1611SR_CTDFinalQC & DB.zip w/ missing transmissometer data
13 Dec 2018 - posted final reprocessed CTD data from 0701JD: 20-0701JD_CTDFinalQC & DB.zip
07 Dec 2018 - re-posted preliminary CTD data from 1810SR: 20-1810SR_CTDPrelim.zip, fixing Line.Sta on casts 054-059
27 Nov 2018 - posted final reprocessed CTD data from 0704JD: 20-0704JD_CTDFinalQC & DB.zips
27 Nov 2018 - posted prelim CTD data from 1810SR 20-1810SR_CTDPrelim & cast.zips; line.sta corrected for casts 54-59
09 Oct 2018 - posted final reprocessed CTD data from 0707NH: 20-0707NH_CTDFinalQC & DB.zips
20 Sep 2018 - posted final reprocessed CTD data from 0711NH: 20-0711NH_CTDFinalQC & DB.zips
14 Sep 2018 - posted final reprocessed CTD data from 0801JD: 20-0801JD_CTDFinalQC & DB.zips
13 Sep 2018 - entered missing event numbers into 0804JD CTD.csvs & reposted FinalQC & FinalDB zips
11 Sep 2018 - posted final reprocessed CTD data from 0804JD: 20-0804JD_CTDFinalQC & DB.zips
27 Aug 2018 - reposted raw CTD data for 0808NH: 20-0808_CTDCast.zip as some cast zips were corrupted
22 Aug 2018 - posted final re-processed bottle-corrected CTD data for 0810NH: 20-0810_CTDFinalQC.zip
14 Aug 2018 - posted final bottle-corrected CTD data for 1711SR: 20-1711SR_CTDFinalQC.zip
08 Aug 2018 - posted final bottle-corrected CTD data for 0901NH: 20-0901NH_CTDFinalQC.zip
06 Aug 2018 - (re)posted final bottle-corrected CTD data for 0903JD: 20-0903JD_CTDFinalQC.zip
22 May 2018 - posted final bottle-corrected CTD data for 1708SR: 20-1708SR_CTDFinalQC.zip
15 May 2018 - posted final bottle-corrected CTD data for 1704SH: 20-1704SH_CTDFinalQC.zip
15 May 2018 - fixed a station mislabeling on 1804 CTD casts 097 - labeled 63.3 50.0, should be 63.3 55.0
02 Mar 2018 - fixed a station mislabeling on 1802 CTD casts 045 - labeled 76.7 55.0, should be 76.7 70.0
02 Mar 2018 - fixed a station mislabeling on 1711 CTD casts 036 & 037 - they were labeled 86.4, should be 86.7
21 Feb 2018 - uploaded 1802SH CTD casts & preliminary data zips: 20-1802SH_CTDCast & CTDPrelim
06 Feb 2018 - uploaded revised FinalQC zips for 0911NH, with latest datacode format, revised file structure, filenames; bad ISUS voltages excluded
22 Jan 2018 - uploaded revised FinalQC zips for 1011NH, with latest datacode format, revised file structure, filenames; data unchanged
17 Jan 2018 - uploaded revised FinalQC zips for 1008NH, with latest datacode format, revised file structure, filenames; data unchanged
05 Jan 2018 - uploaded revised FinalQC zips for 1004MF, with latest datacode format, revised file structure, filenames; data unchanged


27 Oct 2017 - uploaded revised FinalQC zips for 1001NH with latest datacode format and file structure, filenames; data unchanged
06 Oct 2017 - uploaded revised FinalQC zips for 1402SH, 1404OS, & 1407NH with relabeled .asc voltage headers & filenames; data unchanged
20 Sep 2017 - added FinalQC CTD data for 1611SR, including RINKO III O2 data
05 Sep 2017 - added prelim CTD data for 1708SR, fixing NO3 import error on casts 008 & 009
28 Jun 2017 - corrections to 1504SH & 1507OC Raw CTD cast data, updated pressure coefficients; new CTDCast.zips posted
27 Jun 2017 - corrections to 1604SH Raw CTD cast data, casts 001-025 xmlcon files corrected pressure coefficients; new zip posted
22 May 2017 - corrections to 1507OC & 1511OC Final CTD data
1507OC - longitude noise on casts 001, 013, 018, 027, 029, 031, 044, 046, 055, 060, 062, 067 corrected.
1511OC - bad downcast surface data flagged on cast 016 & 017 due to pump issues. (thanks Sharon)
27 Apr 2017 - added 1704SH raw & preliminary CTD data
22 Mar 2017 - corrections to 1601RL CTDCast & finalQC CTD+Bottle data
Casts 099 did not merge properly with bottle data in the previous version due to sta mislabeling in the CTD .hdr file. The newest 20-1601RL_CTDFinalQC.zip has corrected CTD.csvs and plot for Cast 099. Cast 099 line.sta was mislabel sta 63.3 50.0 so the raw CTD.hex file and processed .asc & .csv files have been corrected; there is a new 20-1601RL_CTDCast.zip.
16 Mar 2017 - 1411NH CTD Data Update:
CalCOFI 1411NH CTD files have been renamed using the new schema; sta 071 was re-merge with bottle data excluding 4 bad bottle oxygens - sta-corrected CTD oxygens should be much improved for this station. New plots were done including secondary sensor downcast and upcast plots.
CalCOFI 1202NH CTD data have been reprocessed into 82-column CTD.csvs; filenames have been updated to YY-YYMMSC_LLLLSSSS_###DU; .asc voltages have been relabeled. Cast 004-007 sta-corrected oxygens have been recalculated after eliminated bad 270m bottle data from sta.csvs.
15 Mar 2017 - New Final CTD Data 1601RL CTD+Bottle Data Online

Earlier additions and changes

2015 cruises (1501, 1504, 1507, 1511) CTD fies renamed using the new schema - YY-YYMMSC_LLLLSSSS_###DU. Also sensor voltage columns have been relabled in the .asc files but original .asc files have also been archived. 

2012 cruises: 1210, 1207, 1203 have been re-processed into 82-column datacode-friendly format. Data are unchanged from previous final data but additional columns have been added to the CTD.csvs. Also primary and secondary sensor plots have been generated and archived.

This tabulation was started 16Mar2017 and will be updated frequently. Changes to CTD data are listed on the CTD Processing Summary web page for each cruise. Please refer to individual cruise pages for additional detailed information on CTD data processing, re-processing, and re-formatting.

Go to top
DMC Firewall is a Joomla Security extension!