The One Argo Float
notebook demonstrates various functionalities of the ArgoData.jl
package, which are further documented below.
👉 One Argo Float 👈 (code)
Download From Argo Data Center
Downloading and accessing an Argo file (wmo=13857
from folder="aoml"
) is done like this.
using ArgoData
input_file=GDAC.download_file("aoml",13857)
"/tmp/Argo_DAC_files/aoml/13857/13857_prof.nc"
You can then simply access the file content using NCDatasets.jl.
using NCDatasets
ds=Dataset(input_file)
keys(ds)
58-element Vector{String}:
"DATA_TYPE"
"FORMAT_VERSION"
"HANDBOOK_VERSION"
"REFERENCE_DATE_TIME"
"DATE_CREATION"
"DATE_UPDATE"
"PLATFORM_NUMBER"
"PROJECT_NAME"
"PI_NAME"
"STATION_PARAMETERS"
⋮
"HISTORY_SOFTWARE_RELEASE"
"HISTORY_REFERENCE"
"HISTORY_DATE"
"HISTORY_ACTION"
"HISTORY_PARAMETER"
"HISTORY_START_PRES"
"HISTORY_STOP_PRES"
"HISTORY_PREVIOUS_VALUE"
"HISTORY_QCTEST"
A list of all folder,wmo
pairs can be obtained using files_list=GDAC.files_list()
. And a method to download files in bulk & parallel is presented in examples/Argo_distributed_download.jl.
Argo on Standard Depth Levels
A more complete version of the workflow presented below is in this notebook:
👉 from Argo to MITprof 👈 (code)
The MITprof
Format
The MITprof format is a simple to use version of Argo where profiles have been converted to potential temperature and interpolated to standard depth levels.
Turning an Argo file (input_file
) into an MITprof file (output_file
) proceeds as follows.
- gridded fields are retrieved. These climatologies enable quality control of the data and scientific applications in step 2.
- read the Argo file and process it. The observed profiles are interpolated to standard depth levels, converted to potential temperature, quality controled, and appended climatological profiles.
For more detail on the use of climatologies, representation error estimation, and model-data cost functions
, see Forget et al 2015, Forget 2011, Forget and Wunsch 2007.
gridded_fields=GriddedFields.load()
output_file=MITprof.format(gridded_fields,input_file)
ds2=Dataset(output_file)
keys(ds2)
13-element Vector{String}:
"prof_depth"
"prof_ID"
"prof_lon"
"prof_lat"
"prof_date"
"prof_YYYYMMDD"
"prof_HHMMSS"
"prof_T"
"prof_Tweight"
"prof_Testim"
"prof_S"
"prof_Sweight"
"prof_Sestim"
Associated Data Structure
The generated file can be accessed normally as a NetCDF file (e.g., Dataset(output_file)
) or using the convenient MITprofStandard
data structure.
mp=MITprofStandard(output_file)
File name is 13857_MITprof.nc
List of variables :
lon is (140,)
lat is (140,)
date is (140,)
depth is (55,)
ID is (140,)
T is (140, 55)
Te is (140, 55)
Tw is (140, 55)
S is (140, 55)
Se is (140, 55)
Sw is (140, 55)
Sample MITprof
Files
The full set of MITprof profiles processed in 2023 from the Argo data base is available in this Dataverse. This dataset can be explored and retrieved using Dataverse.jl.
using Dataverse
doi="https://doi.org/10.7910/DVN/7HLV09"
lst=Dataverse.file_list(doi)
Dataverse.file_download(lst,lst.filename[2],tempdir())
Downloading file : /tmp/MITprof_Argo_1999.nc
Another example is the original collection of MITprof files from Forget, et al 2015 is archived in this Dataverse. This contains an earlier versio of Argo along with complementary datasets.
using Dataverse
doi="https://doi.org/10.7910/DVN/EE3C40"
lst=Dataverse.file_list(doi)
Row | filename | filesize | id | url |
---|---|---|---|---|
String | Int64 | Int64 | String | |
1 | MITprof_mar2016_argo0708.nc | 815848760 | 2845790 | https://dataverse.harvard.edu/api/access/datafile/2845790 |
2 | MITprof_mar2016_argo0910.nc | 880816932 | 2845789 | https://dataverse.harvard.edu/api/access/datafile/2845789 |
3 | MITprof_mar2016_argo1112.nc | 964198352 | 2845791 | https://dataverse.harvard.edu/api/access/datafile/2845791 |
4 | MITprof_mar2016_argo1314.nc | 1097483536 | 2845793 | https://dataverse.harvard.edu/api/access/datafile/2845793 |
5 | MITprof_mar2016_argo1515.nc | 638674860 | 2845788 | https://dataverse.harvard.edu/api/access/datafile/2845788 |
6 | MITprof_mar2016_argo9506.nc | 981153408 | 2845792 | https://dataverse.harvard.edu/api/access/datafile/2845792 |
7 | MITprof_mar2016_climode.nc | 37788892 | 2845786 | https://dataverse.harvard.edu/api/access/datafile/2845786 |
8 | MITprof_mar2016_ctd.nc | 1337162264 | 2845794 | https://dataverse.harvard.edu/api/access/datafile/2845794 |
9 | MITprof_mar2016_itp.nc | 48296856 | 2845787 | https://dataverse.harvard.edu/api/access/datafile/2845787 |
10 | MITprof_mar2016_seals.nc | 372054428 | 2845785 | https://dataverse.harvard.edu/api/access/datafile/2845785 |
11 | MITprof_mar2016_xbt.nc | 395252264 | 2845783 | https://dataverse.harvard.edu/api/access/datafile/2845783 |
12 | README.pdf | 56137 | 2863426 | https://dataverse.harvard.edu/api/access/datafile/2863426 |
Argo via Python API
The python library called argopy provides more ways to access, manipulate, and visualize Argo data. The notebook below demonstrates how you can :