Sections below: Float counts | Meta Files | Tech files | Plots & listings | Surface Pressure | TNPD


Argo file format and Surface Pressure correction compliance Audit


Argo Technical and Meta file compliance Audit

This page is automatically created by code which scans all files in the Argo GDAC.

Previous versions can be accessed via the CSIRO DMQC page

The audit purpose and method is described here

Compliance summary of this audit



Specific comments on this audit, based on Coriolis GDAC at 9 March 2013

Surface Pressue Correction

Small improvements generally, except something apparently gone astray with some MEDS floats. These may just relate to a batch of DM or tech files just at the time of the audit?

SP parameter names

  • 2 deprecated names have now completely gone from the dataset.
  • Deprecated name "PRES_OffsetAdjustment_dBAR" - up from 101 up to 107 floats at AOML ?

PCOR varies throughout profile

Gone from 1 to 166 floats at AOML. Maybe only lies in recent R files. See http://www.cmar.csiro.au/argo/dmqc/audits_2013_03_09/sp_plots/aoml_padj.txt and search for "Non-constant". The few cases I examined probably came from rounding or truncation - the variation of PRES-PRES_ADJUSTED has a range of only about 0.1 dBar. It therefore does not affect data quality but is a minor nuisance because it triggers this test which can sometimes detect processing problems.

CSIRO

Apparently 12 tech files without SP parameters, but these are all floats yet to transmit profiles.

MEDS

Quite a few D-files with problems, some which previously did not have those problems. Faults in PRES_ADJUSTED have risen from 468 to 1207. An example is 4900535 where at least some of the problem is space-character (ASCII 32) in the PRES_ADJUSTED_QC vector and corresponding NaN in the PRES_ADJUSTED field.

281 profiles from 2 floats (2900236,2900237) where SP is apparently atmospheric pressure.

Apparently bad SP cor in RT up from 45 to 100, and in DM from 3869 to 4154. This increase might be entirely due to updating of tech files so that surface pressure parameter names are correct for that float type, but the PRES_ADJUSTED is not yet updated to match. See 4900406 for example.


This analysis was based on GDAC as at 9 March 2013


Float counts in DACs

DAC details [explanations]
DAC nameAOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDI
# floats45214111473558191173343131273161119
# Projects13658122212222
# PIs19773121752363
# Models15456312064643

Floats in multiple DACS
DACAOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDI
# floats45214111473558191173343131273161119
other dups-----------



Meta files

Meta files [explanations]
DAC nameAOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDI
# floats45214111473558191173343131273161119
# meta files45214111473558191173343131273152119
broken A-----------
broken B-12--------
Bad launch info1--------10-

PLATFORM_MODEL
The strings found in the PLATFORM_MODEL fields
Strings have been converted to lower case and blanks removed to assist match-ups
field contentsAOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
Empty Field-----1---9-10
apex------2--9991192
provor--518----19-2668
palace_n/a17----------17
solo_sbe1566----------1566
apex_sbe1890------904--1984
soloof_fsi28----------28
solo_fsi272----------272
apexir_sbe346------21---367
soloir_sbe150----------150
solo2ir_sbe197----------197
apex_seascan10----------10
navisir_sbe34----------34
apex_n/a2----------2
solo_sbe41cp1----------1
provor_seascan1----------1
provor_n/a6----------6
provor_sbe1------12---13
apex-sbe-381-530-877279-2233922331
martec-fsi-21---------21
-sbe-4---------4
martec-sbe-5---------5
provor ctf2--61--------61
apex sbe apf7--91--------91
provor ctf3--38--------38
provor cts2--160--------160
apex sbe apf8--204--------204
nemo--94--------94
nemo 2.5--4--------4
provor cts3--192-19---5--216
apex sbe 41 apf8--7--------7
arvor iridium--15--------15
provor cts3-do--40--------40
arvor--87----82014-129
apex apf8c--8--------8
nemo with sbe 41--13--------13
apex-apf9a--109--------109
apex sbe41 apf8--45--------45
apex apf9a f/w w--6--------6
apex apf9a f/w--55--------55
nova--2--------2
provor cts3-do 9--15--------15
apex apf8 rev da--4--------4
apex-apf8c--12--------12
apex apf8 rey da--2--------2
provor t--30--------30
apex sbe apf8b s--3--------3
apex sbe apf8b--14--------14
apex sbe apf8 s--10--------10
apex sbe apf8 sn--11--------11
apex sbe apf8 2--1--------1
apex sbe apf8--1--------1
apex sbe-43f apf--3--------3
apex apf9a f/w s--3--------3
apex-apf9--19--------19
apex-sbe-apf8c--5--------5
provor bioargo--13--------13
apex-apf9a f/w--9--------9
apex-sbe-apf9a--9--------9
apex-sbe-apf9i--1--------1
apex-apf9i--5--------5
provor cts3-bt--3--------3
arvor-a3--5--------5
arvor-l--8--------8
apex apf9a--19--------19
provor cts3-do b--1--------1
arvor deep--3--------3
provor cts3-doir--4--------4
apex sbe-41-alac--3--------3
apex sbe-1-alace--1--------1
apex sbe -41-ala--2--------2
apex sbe-41 ap--2--------2
apex sbe-41 apf--8--------8
apex sbe-41 a--1--------1
provor ct--5--------5
apex sbe -41 apf--1--------1
nemo awi_0092--1--------1
r1-sbe---10-2-----12
palace-----3-----3
alace_r1-fsi-----2-----2
r1-sbe profiler-----1-----1
r1-td-----9-----9
provor-sbe-----14931----180
ninja-tsk-----3-----3
ninja-sbe-----15-----15
tem. profiler-----1-----1
apex-sbe-aandera-----7-----7
provor-sbe cts-3-----14-----14
nemo-sbe-----13-----13
arvor-sbe-----64-----64
apex-fsi-----3-----3
pops-sbe-----3-----3
nova-sbe-----127----28
apex-td profiler-----4-----4
pops-provor-sbe-----1-----1
p-alace------3----3
apex-sbe/optode------1----1
provor_fsi--------2--2

Basic MODEL
Grouping PLATFORM_MODEL fields by standard float types
Basic typeAOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
Unknown-42--83--9-54
apex2248381674530-891282111227138935575
solo2214----------2214
provor8-5671819163311226-26870
nemo--112--13-----125
ninja-----18-----18
martec-26---------26
palace17----3-----20
arvor--118--64-82014-224
r1---10-12-----22
navisir34----------34
nova-----127----34

PLATFORM_MODEL field - APF9 Status [explanations]
AOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
Not APEX227330799281928261204623263607
APEX not APF9--418--------418
APEX unknown224838121530-891282111227138934922
APEX APF9--235--------235
Manual list*303--12-------315

SENSOR pressure field
* Sensor names converted to lower case and blanks removed to assist match-ups
*AOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
Empty Field-3855--5343---51211
druck67--479------2548
mp40-c-2000-g14----------14
n/a1615-87--------1702
sbe41465-3--622-2641-1121
sbe1----------1
2900psia1897-92----97---2086
sbe41cp450-30--157-825--670
sstd10----------10
2000dbar1----------1
1500psia1----------1
sbe-41-362---------362
ectp202mar-21---------21
sbe-41v3.0-8---------8
sbe-41cp-16---------16
sbe41cp-2900psia--58--------58
sbe41cp?2900psia--170-19------189
sbe41cp2900psia--6--------6
xxxx--112--------112
none--6--------6
3000psia--8--------8
41--29--------29
41do--1--------1
sbe41do--3--------3
sbbe41v3.0--8--------8
1600psia--3--------3
paine---38-------38
kistler---21-------21
amatek---20-------20
straingauge_sbe41-----268-----268
straingauge-----26-----26
straingauge_sbe41cp-----88-----88
straingauge_ctd-f01-----3-----3
sbe41,2900psias/n4867-----1-----1
sbe41,3000psias/n2657701518-----1-----1
sbe37-----2-----2
endrow--------238--238
fsi41--------2--2
paine3000psia--------4--4
sbecp41---------124112236
sbe41v3.0---------27-27

SENSOR pressure Maker field
* names converted to lower case and blanks removed to assist match-ups
*AOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
Empty Field-3856--9----5873
micron14----------14
paines92----------92
sbe1042-37---3432691521121721
n/a96-81--------177
druck3174-328-19--8320--3624
2900psia67----------67
kistler13-5----22---40
seascan11----------11
ametec12----------12
seabird-38610558----242-21198
fsi-21---1--2--24
sea-birdelectronics--16--------16
xxxx--114--------114
martec--4--------4
manufacturerdruck--6--------6
ametek--7--------7
none--1--------1
nke--1--------1
kiesler--1--------1
paine--4--------4
sea-birdelectronics,inc._druck-----665-----665
sea-birdelectronics,inc.-----155-----155
sea-birdelectronics,inc.(druck)-----58-----58
sea-birdelectronics,inc._kistler-----200-----200
falmouthscientific,inc.-----4-----4
sea-birdelectronics,inc._paine-----13-----13
sea-birdelectronics,inc._ametek-----62-----62
thetsurumi-seikico.,ltd.-----3-----3
notspecified-----1-----1
sea-birdelectronics,inc-----1-----1
sea-birdelectronics,inc._-----1-----1

SENSOR pressure Serial Number field
S/NAOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
# floats45214111473558191173343131273161119
No decodable number433101276-1920412419121818


tech files

Tech files [explanations]
FormatAOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
No profiles1631816121206661730295
Missing------------
Old-------7---7
Old - Bad------------
New43583931457546181153337118267144898880
New, no Surf Pres4-258-213----61
New, Bad format------------
V 2.3435839358954681153337110238144897965
V 2.4--868-10--829--915

Surface Pressure Offset parameter name
AOMLBODCCORIOLISCSIRONMDISJMAMEDSCSIOINCOISKMAKORDITOTAL
Old format
Other2--2-6-31-2539
surface_pressure-1---------1
surface_offset------------
pressure_sensor_offset------------
start_surface_pressure------------
pressure_offset_(counts)1----------1
pressure_offset_(dbar)-------7---7
pres_offsetadjustment_dbar------------
pressure_offset_dbar------------
pres_surfacecomplement_dbar------------
New format
Missing32-31121293----108
pres_surfaceoffsettruncatedplus5dbar_dbar1051245416227-67521544139104893205
pres_surfaceoffsettruncated_dbar-----2-----2
pres_surfaceoffsetnottruncated_dbar1292120338304-24111966992612606
pres_surfaceoffsetnottruncatedplus5dbar_dbar------------
pres_surfaceoffsetcorrectednotreset_1dbarresolution_dbar-19---8-----27
pres_surfaceoffsetcorrectednotreset_1cbarresolution_dbar724----129-----853
pres_surfaceoffsetbeforereset_dbar1157----------1157
pres_surfaceoffsetbeforeresettruncated_dbar------------
pres_surfaceoffsetafterreset_dbar------------
pres_surfaceoffsetbeforereset_1dbarresolution_dbar-41-813-----26
pres_surfaceoffsetbeforereset_1cbarresolution_dbar---7-65---14-86
pres_surfaceoffsetafterreset_1cbarresolution_dbar------------
pres_surfaceoffsetbeforereset_5cbarresolution_dbar------------
pres_surfaceoffsetafterreset_5cbarresolution_dbar------------
pres_surfaceoffsetbeforereset_4mbarresolution_dbar------------
pres_surfaceoffsetafterreset_4mbarresolution_dbar------------
pres_descentstart_dbar29----------29
pres_offsetadjustment_dbar107----------107
pres_surfaceoffsetcorrectednotresetnegative_1cbarresolution_dbar-4227----825--264
pres_surfaceoffsetcorrectednotresetnegative_1dbarresolution_dbar-1450-10---4--465
pres_surfaceoffsettruncatedplus3dbar_dbar-----1-----1
Multiple SP names per profile [probably intentional and correct]1170----------1170
SP name changes thru float lifetime------------
% ok SP values [explanation]97969899999798999910094-

Surface Pressure Offset parameter name vs model
apexsoloprovornemoninjamartecpalacearvorr1navisirUnknownAll models
Other7131--------39
surface_pressure1----------1
surface_offset------------
pressure_sensor_offset------------
start_surface_pressure------------
pressure_offset_(counts)-1---------1
pressure_offset_(dbar)--7--------7
pres_offsetadjustment_dbar------------
pressure_offset_dbar------------
pres_surfacecomplement_dbar------------
Missing2115232115--5-17101
PRES_SurfaceOffsetTruncatedplus5dbar_dBAR3193-------12--3205
PRES_SurfaceOffsetTruncated_dBAR----------2-
PRES_SurfaceOffsetNotTruncated_dBAR225612747104--3-933272579
PRES_SurfaceOffsetNotTruncatedplus5dbar_dBAR------------
PRES_SurfaceOffsetCorrectedNotReset_1dBarResolution_dBAR--8--19-----27
PRES_SurfaceOffsetCorrectedNotReset_1cBarResolution_dBAR-716134-3------853
PRES_SurfaceOffsetBeforeReset_dBAR-1157---------1157
PRES_SurfaceOffsetBeforeResetTruncated_dBAR------------
PRES_SurfaceOffsetAfterReset_dBAR------------
PRES_SurfaceOffsetBeforeReset_1dBarResolution_dBAR--22--4-----26
PRES_SurfaceOffsetBeforeReset_1cBarResolution_dBAR--13----73---86
PRES_SurfaceOffsetAfterReset_1cBarResolution_dBAR------------
PRES_SurfaceOffsetBeforeReset_5cBarResolution_dBAR------------
PRES_SurfaceOffsetAfterReset_5cBarResolution_dBAR------------
PRES_SurfaceOffsetBeforeReset_4mBarResolution_dBAR------------
PRES_SurfaceOffsetAfterReset_4mBarResolution_dBAR------------
pres_descentstart_dbar12-----17----29
pres_offsetadjustment_dbar-107---------107
PRES_SurfaceOffsetCorrectedNotResetNegative_1cBarResolution_dBAR--120----140--4260
PRES_SurfaceOffsetCorrectedNotResetNegative_1dBarResolution_dBAR--458--1-4--2463
PRES_SurfaceOffsetTruncatedplus3dbar_dBAR--------1--1


Plots and listings analysing the Surface Pressure Offset correction for all floats for each DAC are accessed through the Plots Index Tables. Separate tables link to all floats, or only floats with apparent SP correction anomalies, or only floats with apparent TNPD.


Note: The following analyses were based on assumptions about behaviour of different types of floats, where "type" was here primarily defined by the Surface Pressure Offset parameter name. Some of these assumptions will be wrong, and some types are not analysed at all because I am unsure of their behaviour. It is probably necessary to also take basic float model (eg Apex or SOLO) into account to fully determine the pressure correction treatment required for a float, but it would be better if this could be fully determined by just the parameter name. My assumptions are recorded in this table.

Surface Pressure Offset

We have attempted to test for correct Surface Pressure (SP) correction of profile pressure.

The difference between PRES and PRES_ADJUSTED is the DAC-applied pressure correction (assuming PRES is the raw P as reported by the float.)

Correct application of this test depends on being able to deduce the correct float type and P adjustment from the meta and tech files. However this is not always possible due to missing or non-standard entries in these files.

Our computed pressure correction is

     p_calc = PRES - (SP - adjustment)
where adjustment is the known SP adjustment for a given float type (usually 5dbar). For Apex floats the SP reported with a profile actually relates to the previous profile, because it was recorded just as the float begins to descend. RT profile pressure can only be adjusted with the SP reported with the same profile, but in DM profiles the correct SP is used (ie for profile N,
     p_calc(N) = PRES(N) - (SP(N+1) - adjustment)
So, in the provided plots , for floats which do not auto-correct, the "Calculated Correction" (CC) is
     For DM profiles:     CC = SP(N+1) - adjustment
     For RT profiles:     CC = SP(N) - adjustment
For this reason, CC will differ from Raw Surface Pressure by the "offset", and will be displaced by one profile for DM profiles. The "DAC adjustment" should however agree with the CC.

Interpretting the plots: For complete agreement in pressure correction, the "DAC Adjustment" (blue squares), should agree with the CC (red stars). Missing "DAC Adjustment" symbols can occur where there is no PRES_ADJUSTED profile (eg if QC=4). Missing CC symbols can occur where the DAC has provided an SP estimate (possibly by interpolation) but the automated process has not [due to different processing or because the tech files are not quite up-to-date.]

Disagreement is likewise visible where "MPP minus CC" (cyan diamond) does not overlay "Min Corrected Pressure" (magenta square). The latter quantity is just the near-surface PRES_ADJUSTED value.

Note that the raw SP symbols (blue diamond) are shown exactly as found in the tech files. That is, their x-coordinate is the cycle number corresponding to that value in the tech files.

A light gray background is used where disagreement is between 0.1 and 1.0 dbar. This occurs frequently due to DAC smoothing of the SP series, or for other reasons.

A dark gray background indicates disagreement greater than 1.0 dbar. Some of these cases are due to deficiencies in our automatic procedures, but some others appear to be related to processing faults at the DACs.

An olive green background behind the CC value indicates an alternative correction method (such as allowed for SOLO floats) gives better agreement with the DAC value than the primary method. The CC value shown is then as derived by the alternative method. For example, SOLO floats are auto-correcting, so the primary method is "no correction". However, a secondary method - the normal SP(n+1) correction - may be applied in DM if there is evidence of strong drift.

A very pale green background indicates that the DAC has explained how their adjustment is correct, or pointed out that the CSIRO audit software has made a mistake. Any disagreement in these profile is ignored when collating statistics.

Extra information in upper frame on plots
Name Colour/Where Meaning
P Adj QCtop halfprofile minimum PRES_ADJUSTED_QC for each DM profile, value indicated by scale on left of frame
DMLower middleDM processed profiles
No P ADJLower middlePRES_ADJUSTED or PRES_ADJUSTED_QC profiles not fully populated
TNPD CommentNear bottom Has correct pressure SCIENTIFIC_CALIB_COMMENT for a TNPD profile
P ERR 2.4bottomprofile min PRES_ADJUSTED_ERROR==2.4
P ERR 20bottomprofile min PRES_ADJUSTED_ERROR==20

See the table which summarizes the results of this pressure correction audit for all DACs.

Lists: for each DAC a text file (accessable through the Plots Index Tables) lists the result of checking the surface pressure correction for every float. The floats are grouped by PI. The lists give the number of DM profiles, total number of profiles, assumed surface pressure offset, and counts of profiles which agree exactly or disagree with my automated correction. Please note that in many cases the disagreement is because your DAC correction is a better choice than my automated one.

Format example:

     5900033 DM 264/295 SPoffs=5 Diffs(dbar) =0[271] <1 [0] >1 [ 1 *]  

Of 295 profiles for this float, 264 have been DM processed. 271 profiles exactly agree with my automated correction, 0 disagree by a small amount, but 1 disagrees by more than 1 dbar.


TNPD

Truncated Negative Drifting Pressure (TNPD) is a term used to describe Apex floats which truncate negative surface pressure values (all firmware prior to APF9) and the pressure sensor develops a strong negative drift. The usual cause of strong negative drift in these sensors is the "microleak" fault associated with Druck sensors. The pressure in profiles affected by TNPD cannot be corrected for surface pressure offset.

The first step in detecting TNPD is to determine if a float is of the type where such an fault might occur. We have attempted to do this using the tech and meta files alone, but this is not always possible.

The next step is to find where the reported SP (corrected for 5dbar adjustment if necessary) has "flat spots" on zero, indicating that negative values are being truncated. Previously a float with 80% SP=0 was declared to be TNPD. We now say that any susceptible float is in a TNPD state after the last believable positive SP value. This is because the strong negative drift condition is typically monotonic, so if such a condition has commenced then typical variability will not give rise to small positive SP values.

The main difficulty of this approach [assuming the basic assumptions are correct] is determining when isolated positive values are natural perturbations about a small negative value, or when they are just sensor error spikes. In the present analysis I have used (for the first time) the crude test that a positive value > 1dbar which has 2 zero values immediately either side of it, is a spike that can be ignored. [This differs to the standard despiking process used to prepare the SP series for pressure correction because here we just want a simple way of assessing where an SP series is devoid of true +ve values.] Obviously this is very imperfect - there is no substitute for skilled DM analysis, and in very many cases the DAC will be right and our algorithm will be wrong.

Another deficiency of our algorithm is that is [apparently] extremely unlikely that microleaking will start after years of correct operation. For example, if SP is 0 for the last 5 of 200 profiles then the algorithm says TNPD commenced at profile 196. The time of onset of TNPD is examined in this set of TNPD plots. That page also includes plots which examining whether, for different sensor types, a large negative drift can be followed by recovery to plausible positive SP values.

"Start of TNPD" in the surface pressure plots provided indicates where TNPD appears to commences, according to the above algorithm, if that is at least 6 months before the last DM profile. If the condition is met with less than 6 months of subsequent DM profiles, then 'Potential TNPD' is displayed. Where some of the float series has been DM processed, extra information is provided for the DM profiles in an extra frame at the top of the figure.

See the table which summarizes the results of this TNPD treatment audit for all DACs.

Lists: for each DAC two text files (accessable through the Plots Index Tables) list the result of checking for TNPD. The floats are grouped by PI. The "short" list gives the cycle number ("pn") where TNPD appears to start, and counts of profiles which appear to require the TNPD comment string and do not have it ("missed"), or do have the comment string ("good"), or have a comment string which is not precisely the standard string ("imperfect"). The list also notes where we have NOT detected TNPD but have found the TNPD comment string.

 

Legal Notice and Disclaimer | Copyright | Privacy | Page author: Jeff Dunn | Contact: Jeff.Dunn@csiro.au