8  B-Argo profile format additional features

A B-Argo profile/trajectory file contains all the parameters from a float, except the core-Argo parameters temperature, salinity, conductivity (TEMP, PSAL, CNDC). A float that performs only CTD measurements does not have B-Argo data files.

To accommodate non-core parameters, a series of optional additions to core-Argo profile/trajectory formats are listed here.

8.1 Pressure axis management in core-Argo and b-Argo profile files

This section contains information on pressure axis management for core-Argo and b-Argo profile and trajectory files.

The vertical pressure levels PRES is the simple and unambiguous link between the parameters in the core- and b- profiles. The same PRES is recorded in the core-Argo and b-Argo profile files.

PRES is the only parameter in Reference Table 3 (https://vocab.nerc.ac.uk/collection/R03/) duplicated in core-Argo and b-Argo profile files.

The adjusted pressure parameter PRES_ADJUSTED is only available in the core-Argo profile files.
The variables PROFILE_PRES_QC, PRES_QC, PRES_ADJUSTED and PRES_ADJUSTED_ERROR are not duplicated in the b-Argo profile files.

Some single-cycle profile files will contain multiple profiles with different vertical sampling schemes (N_PROF > 1). In these cases, all parameters in the core-Argo and the b-Argo profile files will have the same N_PROF dimension, listed in the same order. The same set of vertical pressure levels (PRES with N_PROF > 1) is duplicated in the core-Argo and b-Argo profile files. Other parameters (e.g. TEMP, PSAL) that are not measured in all vertical sampling schemes will be filled with FillValue in the respective N_PROF dimension.

Users are reminded that the profile with N_PROF = 1 is required to be the Primary sampling profile. Please refer to Table 16 (https://vocab.nerc.ac.uk/collection/R16/) for detailed descriptions of the various vertical sampling schemes.

Example

Suppose a hypothetical float carries a high-resolution CTD sensor and a low-resolution nitrate sensor. In each single-cycle, this hypothetical float is configured to return a 2-dbar bin-averaged CTD profile to 1000 dbar with no corresponding nitrate measurements, and a discrete 250-dbar interval nitrate profile to 1000 dbar with no corresponding temperature and salinity measurements. The parameters in the resulting core-Argo and b-Argo profile files are formatted as follows for the two profiles in each cycle:

In the core-Argo profile file, N_PROF = 2, N_LEVELS = 500.

PRES = [2, 4, 6, …………………………………1000];

= [250, 500, 750, 1000, FillValue, …………].

TEMP = [T2, T4, T6, ……………………….T1000];

= [FillValue, ………………………………..].

PSAL = [S2, S4, S6, ………………………..S1000];

= [FillValue, ………………………………..].

In the b-Argo profile file, N_PROF = 2, N_LEVELS = 500.

PRES = [2, 4, 6, …………………………………1000];

= [250, 500, 750, 1000, FillValue, ………….].

NITRATE = [FillValue, ………………………………..];

= [N250, N500, N750, N1000, FillValue, …].

Other intermediate nitrate variables in the b-file are omitted in this example.

8.2 Management of multi-dimensional parameters

Observations are usually one dimension variables, such as temperature or salinity. However, some sensors provide multi-dimensional variables.
For example, an optical sensor for Nitrate reports a spectrum of up to 41 values for each measurement, one per wavelength.

When needed, an additional dimension is added to report the N sub-levels of spectrum observation performed on each level. The associated PARAM_QC dimension remains as (N_PROF, N_LEVELS).

  • float <PARAM>(N_PROF, N_LEVELS, N_VALUES);

  • char <PARAM>_QC(N_PROF, N_LEVELS);

Example of 60 measurements of “RAW_DOWNWELLING_IRRADIANCE” parameter performed at each 41 wavelengths of an individual profile.

  • NPROF = 1

  • N_LEVELS = 60

  • N_VALUES41 = 41

The N_VALUES## dimension is used only when it is necessary: if there is more than one value for each level (N_VALUES > 1) and the ## equals the number of values present for a given variable. You can add more than one of these, with each variable referencing a different N_VALUES## if required.

N_VALUES41 N_VALUES41 = <int value> ;

Maximum number of parameter measurements sampled at a given pressure level.

This dimension depends on the data set.

Example: N_VALUES41 = 41

To describe wavelengths of the sensor (41 in the example), an attribute of the variable called wave_length_nanometer provides the list

double RAW_DOWNWELLING_IRRADIANCE(N_PROF, N_LEVELS, N_VALUES41) ;

RAW_DOWNWELLING_IRRADIANCE:long_name = “IRRADIANCE COUNTS FROM OCR SENSOR” ;

RAW_DOWNWELLING_IRRADIANCE:standard_name = “TBD” ;

RAW_DOWNWELLING_IRRADIANCE:_FillValue = 99999. ;

RAW_DOWNWELLING_IRRADIANCE:units = “counts” ;

RAW_DOWNWELLING_IRRADIANCE:valid_min = “TBD” ;

RAW_DOWNWELLING_IRRADIANCE:valid_max = “TBD” ;

RAW_DOWNWELLING_IRRADIANCE:C_format = “%10.0f” ;

RAW_DOWNWELLING_IRRADIANCE:FORTRAN_format = “F10.0” ;

RAW_DOWNWELLING_IRRADIANCE:resolution = 1. ;

RAW_DOWNWELLING_IRRADIANCE:wave_length_nanometer = “115 132 149 166 183 200 217 234 251 268 285 302 319 336 353 370 387 404 421 438 455 472 489 506 523 540 557 574 591 608 625 642 659 676 693 710 727 744 761 778 795” ;

8.3 Parameter variable type

Parameter values may be float or double. Some sensors provide values that cannot be stored as float, but have to be stored as double. In that case, a variable with the type “double” needs to be used instead of a “float” variable.

These parameters are precursors to calculated parameters. They will not be adjusted or quality controlled (no record in history or calibration sections).

Concerned variables

Concerned variables can occur in profile and trajectory files are: <PARAM> and HISTORY_PREVIOUS_VALUE.

Example: MTIME: Fractional day of the individual measurement relative to JULD of the station.

8.4 PARAMETER_DATA_MODE

In both the core- and b- profile files, the variable DATA_MODE(N_PROF) is not related to a specific parameter. The value of DATA_MODE(N_PROF) is set to ‘D’ when adjusted values for one or more PARAM in each N_PROF become available.

In b-Argo profile files, there are additional biogeochemical parameters which can receive delayed-mode adjustments at different times. Therefore the variable PARAMETER_DATA_MODE(N_PROF, N_PARAM) is added to b-Argo profile files to indicate the data mode of each PARAM in each N_PROF.

The adjusted section (<PARAM>_ADJUSTED, <PARAM>_ADJUSTED_QC and <PARAM>_ADJUSTED_ERROR) for each PARAM in each N_PROF should then be filled independently according to its PARAMETER_DATA_MODE.

  • For example, in a b-Argo profile file with DOXY and NITRATE, it is possible that PARAMETER_DATA_MODE = ’D’ for DOXY, and

  • PARAMETER_DATA_MODE = ’R’ for NITRATE.

In this case:

  • the adjusted section for DOXY should be filled with their adjusted values;

  • the adjusted section for NITRATE should be filled with FillValues.

PARAMETER_DATA_MODE

char PARAMETER_DATA_MODE(N_ PROF, N_PARAM);

PARAMETER_DATA_MODE:long_name = “Delayed mode or real time data”;

PARAMETER_DATA_MODE:conventions = “R : real time; D : delayed mode; A : real time with adjustment”;

PARAMETER_DATA_MODE:_FillValue = ” “;

Describe the data mode of the individual parameter :

R : real time data

D : delayed mode data

A : real time data with adjusted values

8.5 N_PARAM management in b-Argo profile files

For floats that measure multiple biogeochemical parameters (N_PARAM > 1) with multiple vertical sampling schemes (N_PROF > 1), users are reminded that N_PARAM in the b-Argo profile files does not necessarily equal to the total count of all unique parameters in a single cycle.

The definition of N_PARAM is the “Maximum number of parameters measured or calculated for a pressure sample.”

The same definition applies when N_PROF > 1.

For example, a single-cycle b-Argo profile file has 3 vertical sampling schemes:

  • at N_PROF = 1, STATION_PARAMETERS = [PRES]: N_PARAM1 = 1;

  • at N_PROF = 2, STATION_PARAMETERS = [PRES, DOXY, NITRATE]: N_PARAM2 = 3;

  • at N_PROF = 3, STATION_PARAMETERS = [PRES, CHLA, BBP700, CDOM]: N_PARAM3 = 4.

In this example, there are 6 unique parameters (PRES, DOXY, NITRATE, CHLA, BBP700, CDOM), but:

  • N_PARAM = maximum of (N_PARAM1, N_PARAM2, N_PARAM3) = 4.

8.6 QC and ADJUSTED variables in b-Argo profile files

In core-Argo profile files, where PARAM = PRES, TEMP, PSAL (and sometimes CNDC), each PARAM has 5 associated variables in qc and adjusted variables that are used to record real-time qc test results and delayed-mode adjustment information:

PARAM_QC, PROFILE_PARAM_QC, PARAM_ADJUSTED, PARAM_ADJUSTED_QC, and PARAM_ADJUSTED_ERROR.

In b-Argo profile files, PARAM can be classified into 3 groups:

  • (a). B-Argo PARAM: these are the ocean state biogeochemical variables that will receive real-time qc tests and delayed-mode adjustments. They are stored in both the b-files and the GDAC merged files.

  • (b). I-Argo PARAM: these are the intermediate biogeochemical variables that are only stored in the b-files.

  • (c). PRES: this is the stand-alone vertical index that links the core- and b-files.

The following are some clarification on what qc and adjusted variables to include in the b-files:

  • (a). B-Argo PARAM: All 5 associated qc and adjusted variables are mandatory for B-Argo PARAM in the b-files.

  • (b). I-Argo PARAM: PARAM_QC and PROFILE_PARAM_QC are mandatory for I-Argo PARAM. PARAM_ADJUSTED, PARAM_ADJUSTED_QC and PARAM_ADJUSTED_ERROR are optional as a group; they must either all be present or all be absent.

  • (c). PRES: the b-files do not contain any qc or adjusted variables for PRES. (See Section 2.6.1.)

8.7 PARAMETER and PARAMETER_SENSOR need expansion

In B-Argo files text strings for PARAMETER and PARAMETER_SENSOR are extended from 16 to 64 or 128 characters to allow for more explicit names.

Applicable variables

In profile files: STATION_PARAMETERS, PARAMETER, HISTORY_PARAMETER

In trajectory files: TRAJECTORY_PARAMETERS, HISTORY_PARAMETER

In metadata files: PARAMETER size is set to 64, PARAMETER_SENSOR size is set to 128

8.8 DATA_TYPE dimension extended from 16 to 32 characters

B-Argo and Merged files DATA_TYPE dimension are extended from 16 to 32 characters.

8.9 Predeployment calibration variable dimension

The PREDEPLOYMENT_CALIB_EQUATION, PREDEPLOYMENT_CALIB_COEFFICIENT, PREDEPLOYMENT_CALIB_COMMENT string lengths are by default set to STRING1024.

When necessary (such as for the Nitrate sensor), the string length is set to 4096.