Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Cast Scalar Profile Plot and Data

Device-level and sensor-level cast scalar profile data products are time or cast delimited scalar products for profile data. Cast-delimited options include up casts, down casts, stationary periods, step casts (VPS only), and all casts (up, down, and stationary). Individual casts are grouped daily for plotting purposes only. The cast options, plots and file products are available on cabled profilers (Vertical Profiler System (VPS) in Barkley Canyon and the Buoy Profiler System (BPS) in Saanich Inlet). For other casting / profiling deployments such as from ships or through the ice, only plots are available with the daily option (breaks at midnight PST or 0800 UTC), an example of this case are the Pacific Salmon Foundation (PSF) profiling CTDs, Oxygen Sensors and Fluorometers. This data is acquired in partnership with PSF for their Salish Sea Marine Survival program where community based fishers go out regularly to collect CTD casts at various locations. Here is an example in Data Search: https://data.oceannetworks.ca/DataSearch?location=SSMSP

Please note, the plotting products here are distinct from the Time Series Scalar Profile Plot, as they does not have a time axis. Both sets of plots aim to visualize vertical profile data.

Please consult individual instruments' documentation for more information.

Oceans 2.0 API filterdataProductCode=CSPPD

Revision History

  1. 20160901: Initial Release
  2. 20180507: Updated with cast delineation, options for cast type selection and temperature/conductivity lag correction

Data Product Options

Include Page
Cast Scalar Profile Plot and Data
Cast Scalar Profile Plot and Data

Formats

PNG / PDF: Cast Scalar Profile Plot

Oceans 2.0 API filterextension={png,pdf}

Cast Scalar Profile plots are plots of depth versus the variable or sensor being plotted and are available as PNG or PDF format plots. These are the standard CTD cast-type plots. Multiple sensors maybe plotted on multiple x-axes for device-level plots.

For device level plots, particularly for CTDs, we put density, sigma-t, and conductivity vs depth in the first plot, with specific colours while the remaining sensors are plotted in subsequent plots. The second plot contains practical salinity, temperature, sigma-theta, and sound speed vs depth. Each plot is colour coded to improve readability. The second plot will have “_2” added on the end of the filename. Here is an example of a device level plot search for down casts on the BPS, resulting in two plots:

Image AddedImage Added

Here is an example of single sensor plot for up casts on the VPS:

Image Added


MAT / netCDF: Cast Scalar Profile Data

This data is available as MAT or netCDF data products. 

MAT Files

Oceans 2.0 API filterextension={mat,nc}

MAT files (v7) can be opened using MathWorks MATLAB 7.0 or later. The file contains two structures: ProfileData and metadata.

ProfileData: structured as an 1 x N structure with M fields where M includes the sensor data fields (conductivity, temperature, salinity, etc.) and cast details (cast start date, end data, duration, depth, direction, etc.), and N is the cast number:

Image Added

  • Sensor Data (example: seawatertemperature, depth, etc.): see below for structure details 
  • startDate: Start date of the profile in the format 'dd-mmm-yyyy HH:MM:SS.FFF' 
  • endDate: End date of the profile in the format 'dd-mmm-yyyy HH:MM:SS.FFF' 
  • duration: Duration of the profile, in minutes.
  • meanDate: Mean date of the profile (mean of startDate and endDate)
  • minDepth: Minimum depth of the profile (in meters)
  • maxDepth: Maximum depth of the profile (in meters) 
  • depthRange: Total depth of the profile (in meters) 
  • direction: Direction of cast (either 'Down Casts', 'Up Casts', or 'Stationary')

Sensor data is stored in a structure identical to its original data structure (the original being the standard scalar data structure defined in Time Series Scalar Data).

Image Added

  • sensorID: Unique identifier number for sensor.
  • sensorName: Name of sensor.

  • sensorCode: Unique string for the sensor.

  • sensorDescription: Description of sensor.

  • sensorType: Type of sensor as classified in the ONC data model.

  • sensorTypeID: ONC ID given to sensor type.

  • units: Unit of measure for the sensor data.

  • isEngineeringSensor: boolean (flag) to determine if sensor is an engineering sensor.

  • sensorDerivation: String describing the source of the sensor data: derived from calibration formula (dmas-derived), calculated on the device (instrument-derived), calculated by an external process (externally-derived), or direct from the instrument.

  • propertyCode: Unique string for the sensor using only lowercase letters and no unique characters

  • isMobilePositionSensor: boolean (flag) to determine if sensor is a mobile sensor. Note, this will only be flagged true if this data was added in addition to the requested data. For example, if the user requests a device-level mat product from a GPS device, then the latitude sensor is not flagged. Conversely, if the user requests temperature data from a mobile platform like a ship, then the latitude data from the GPS is added and interpolated to match the time stamps of the temperature sensor. See Positioning and Attitude for Mobile Devices for more information.

  • deviceID: Unique identifier number for the parent device.

  • searchDateNumFrom: Start date of the specific search in MATLAB datenum format - searches are truncated by availability and deployment dates.

  • searchDateNumTo: End date of the specific search MATLAB datenum format - searches are truncated by availability and deployment dates.

  • samplePeriod: Vector of sample periods in seconds.

  • samplePeriodDateFrom: Vector of the start date of each sample period (MATLAB datenum format).

  • samplePeriodDateTo: Vector of the end date of each of sample period (MATLAB datenum format).

  • sampleSize: The size of the data sample. 

  • resampleType: Type of resampling used.

  • resampleDescription: Description of the resampleing used.

  • resamplePeriod_sec: Resample period in seconds.

  • resampleTypeID: Unique identifier of the subsample type used: 0/NaN - none, 1 - average, 2 - decimated (not offered), 3 - min/max, 4 - linear interpolation (VPS pressure only).

  • dataProductOptions: A string describing the data product options selected for this data product. This information is reflected in the file name.

  • qaqcFlagDescription: A string describing the flags. See the QAQC page for more information.

  • time: A vector of data timestamps in MATLAB datenum format.

  • dat: A vector of sensor values corresponding to each timestamp. When resampling by averaging, this becomes the average value. (May make a separate field for this in the future, especially if users prefer that option).

  • qaqcFlags: A vector indicating the quality of the data, matching the time and dat vectors. See the QAQC page for more information.

  • dataDateNumFrom: First time-stamp of the time series.

  • dataDateNumTo: Last time-stamp of the time series.

  • samplesExpected: The number of valid samples expected from the minimum returned data to the maximum returned data, accounting for variations in sample period.

  • samplesReceived: The number of raw samples received, maybe less than length(data.time) when data gaps are being filled with the NaN option.

  • Calibration: Structure containing information on the calibration formula applied to the data, as a it appears on the sensor listing page, in the JEP langauage. Fields include: dateFrom, dateTo, sensorID, name, formula.

Image Added

Include Page
MAT file Metadata structure - Scalar
MAT file Metadata structure - Scalar

NETCDF Files

Oceans 2.0 API filterextension=nc

NetCDF is a machine-independent data format offered by numerous institutions, particularly within the earth and ocean science communities. Additional resources are noted here.

Two NetCDF files are created with this Data Product: TimeSeriesNetCDF and BinnedNetCDF. The NetCDF files are extracted from the data contained in the above MAT file.

The TimeSeriesNetCDF file contains the following variables: 

  • time: Time of measurement in days since 1970-01-01 00:00:00
  • start_stop_indx: Start and stop indices for each profile (index corresponding to time series)
  • direction: Direction of cast (up = -1, down = 1, stationary = 0)
  • variable1*: Time series of sensor data (ie seawatertemperature, depth, etc.). The time series only includes data from desired profile (ie only down casts), and the start and stop indices of each profile are stored in the variable start_stop_indx
  • variable2*: Time series of next sensor (ie seawatertemperature, depth, etc.).
  • variable1_qaqcFlags: Time series of sensor qaqc flag
  • variable2_qaqcFlags: Time series of next sensor qaqc flag

* these will be labelled using the sensor's propertyCode (ie depth, depth_qaqcFlags)

Example text file to display contents: InshoreProfilingSystem_ProfilingInstrumentPackage_CTD_Temperature_20160821T000000Z_20160822T000000Z-clean_Profile_DownCasts_TimeSeries.txt

Example NetCDF file: InshoreProfilingSystem_ProfilingInstrumentPackage_CTD_Temperature_20160821T000000Z_20160822T000000Z-clean_Profile_DownCasts_TimeSeries.nc

The BinnedNetCDF file contains the following variables: 

  • time_prof: A single date for each profile (the mean profile date)
  • depth_bin: Water depth (in m) of the edges of the measurement bin (ie depth_bin(1) = 0.5 m and depth_bin(2) = 1.5 m so the first bin covers the depths 0.5 to 1.5 m, in other words binned to a 1 m grid centered around integer depths)
  • direction: Direction of cast (up = -1, down = 1, stationary = 0)
  • variable1*: Binned profile of sensor data (ie seawatertemperature, depth, etc., see DP61 for details on binning method)
  • variable2*: Binned profile of next sensor (ie seawatertemperature, depth, etc.)
  • variable1*_qaqcFlags: Qaqc flag of each bin for sensor (see “Documentation for Integrating QAQC Flags in VENUS search” for method details)
  • variable2*_qaqcFlags: Qaqc flag of each bin for next sensor

* these will be labelled using the sensor's propertyCode (i.e. depth, depth_qaqcFlags)

Unfortunately, our NetCDF files are not CF-Compliant due to the use of ONC variable names, but this will change in the future.

Example text file to display contents: InshoreProfilingSystem_ProfilingInstrumentPackage_CTD_Temperature_20160821T030720Z_20160821T212313Z-clean_Binned.txt

Example NetCDF file: InshoreProfilingSystem_ProfilingInstrumentPackage_CTD_Temperature_20160821T030720Z_20160821T212313Z-clean_Binned.nc

Temperature/Conductivity Lag Correction

A temporal lag between temperature and conductivity sensors can arise from the difference in physical location, response time, and flow rate of the sensors. Another source of T-C lag is due to heat stored in the conductivity sensor material. If users choose this product or Time Series Scalar Profile Plot and Gridded Data and request data that includes temperature and conductivity sensors, they will receive estimated T-C correction terms. These values are used to calculate newly aligned sensors designated with ‘_aligned’ after the sensors name.

T-C lag values are calculated using an FFT process originally written by Jody Klymak. T-C profiles undergo spectral analysis and cases where coherence > 90% are used to calculate a lag correction term that is applied to the temperature sensor, and subsequently applied to the derived sensors (salinity, density, sigma-t, sigma-theta, and sound speed) by re-calculating them with the newly aligned temperature data. These lag correction terms are stored in the data structure under the field ‘TClag’. The TClag values are smoothed over 6 casts. If there are less than 6 values to average over, the user will get a warning that ‘TClag determined from small sample size’. Lack of any TClag values will result in NaN.

The newly calculated ‘_aligned’ sensors do not have unique sensor ID’s. Therefore, they cannot be explicitly searched for in Oceans 2.0 and will not show up in Cast Scalar Profile plots. They will however show up in Time Series Scalar Profile plots and both MAT or netCDF data files, but only if the user selects data that includes both temperature and conductivity sensors.

Discussion

To comment on this product, click Write a comment belowPlease Standby...