This page documents the quality control protocols for ATN observation in the IOOS ATN Data Assembly Center
Edit me

Quality Control Protocols

ATN DAC quality control (QC) protocols handle animal trajectory and dive profile data and use the ioos_qc Python package (see docs) to implement multiple QARTOD tests and an aggregate rollup flag.

The following ioos_qc tests are applied:

The Location and Speed tests are applied to trajectory data only, while the Gross Range Test is applied to temperature and salinity profile observations. Data are not removed during the QC step, but the results are included in the processed datasets. The Valid Range Test is the only QC test used on both trajectory and profile data that actually truncates the raw data based on deployment dates provided in the metadata, since telemetry tags often begin pinging their locations before and after they are attached to the animal.

Please see the ATN DAC Flow Overview for more details on where the processed data with QC flags can be accessed.

Trajectory QC Tests

The table below summarizes the tests and thresholds that are set for each ATN trajectory parameter:

Module Test Parameter Suspect Fail
ioos_qc.argo speed_test Speed If over 8.0 m/s If over 10.0 m/s
ioos_qc.argo location_test Latitude / Longitude n/a If falls outside of [-180, -90, 180, 90]
ioos_qc.axds valid_range_test Deployment Start Time n/a Varies
ioos_qc.axds valid_range_test Deployment End Time n/a Varies

Profile QC Tests

The table below summarizes the tests and thresholds that are set for each ATN profile parameter:

Module Test Parameter Suspect Fail
ioos_qc.qartod gross_range_test Temperature (C) n/a If falls outside of [-2.5, 40]
ioos_qc.qartod gross_range_test Salinity (psu) n/a If falls outside of [0.0, 41.0]
ioos_qc.axds valid_range_test Deployment Start Time n/a Varies
ioos_qc.axds valid_range_test Deployment End Time n/a Varies

The min and max temperature thresholds and salinity upper bound threshold are taken from the Argo Quality Control Manual for CTD and Trajectory Data and are physical sensor bounds.

While the Argo Quality Control Manual suggests a gross range lower bound of 2 psu for salinity, modern conductivity-based salinity sensors can measure near 0 psu conditions with reasonable accuracy and without signal degradation (Menn & Nair 2022). NOAA’s Manual for Real-Time Quality Control defines the Gross Range Test to flag measurements outside of a sensor’s operational limits. Therefore, the lower bound we use here is 0 psu.

Deployment Duration: Valid Range Test

The ioos_qc.axds.valid_range_test() is applied by checking the ingested data against provider-supplied start and end deployment dates, if available.

Valid start and end deployment dates are either accessed from manually submitted deployment information saved in the ATN Data Registration portal (ADR) or directly from the upstream data source (ATN manufacturer API or server). For the latter, this information is typically stored in the XML metadata file packaged alongside the data files. When both are available, the ADR deployment dates are used as the source of truth, since there is currently no good way of automatically including actual start/end deployment dates in the upstream data source.

The provided deployment date ranges are converted to datetime and used to truncate the data on both ends, to account for time on land before deployment and after retrieval.

Currently, only auto-ingested Wildlife Computer tag data include start and end date metadata (epoch time) in the corresponding XML file, which might look something like this:

<deployment>
    <start>
        <date>1464789420</date>
        <latitude>34.2178</latitude>
        <longitude>-120.5634</longitude>
    </start>
    <end>
        <date>1465776000</date>
    </end>
</deployment>
Tags: