Outils en ligne de commande
La bibliothèque PyCTOH permet l’accès rapide et facile en ligne de commande au contenu de la base de données CTOH.
Cette bibliothèque est accessible au utilisateur appartenant au groupe usrcto sur les serveurs du LEGOS (santo et malo) et sur le serveur du CTOH (boto).
Le chargement de cette bibliothèque se fait, comme ci-dessous, à l’aide de la commande module.
> module purge # Remove all loaded module
> module load pyctoh # Load PyCTOH module
Une fois que le module chargé, vous avez accès aux outils PyCTOH grace à la commande : alt
Voici ci dessous les 3 fonctionnalitées de cette commande:
- info:
fourni des informations sur la base de données.
- tracks:
fourni des informations sur les traces des missions.
- extract:
permet d’extraire des données altimètriques de la base de données.
Info
Cette fonctionalité permet d’afficher des informations de la base de données et de son contenu.
Elle est accessible à l’aide de la sous-commande info de la commande alt.
Ci dessous, l’affichage de l’aide (option -h) pour la sous-commande info:
❯ alt info -h
usage: alt info [-h] {env,mission,product} ...
optional arguments:
-h, --help show this help message and exit
info:
information on environment configuration
{env,mission,product}
env environment information
mission information on missions
product information on products
Trois types d’informations sont disponibles:
env : renvoi des informations sur les variables d’environnements de la base de données
❯ alt info env CTOH Database configuration: -------------------------------------------------------------------------------- Catalogue : /ctoh/data/db/catalogue_yml/ctoh_products_base.yml Metadata directory : /ctoh/data/db/catalogue_yml/metadb ALT_CATALOGUE : /ctoh/data/db/catalogue_yml/ctoh_products_base.yml CTOH_SHARED_DATA : /ctoh/data/shared Mode : yml --------------------------------------------------------------------------------
mission : renvoi des informations sur les missions altimètriques disponibles en base
La liste des missions
❯ alt info mission | Mission | Phase | Start | End | --+---------------+-------+------------+------------| 1 | Cryosat-2 | B | 2010-07-16 | 2021-02-25 | 2 | Envisat | A | 2002-05-14 | 2010-10-23 | 3 | Envisat | B | 2010-10-26 | 2012-04-08 | 4 | ERS-2 | A | 1995-05-17 | 2003-11-24 | 5 | Jason-1 | A | 2002-01-15 | 2009-01-26 | 6 | Jason-1 | B | 2009-02-10 | 2012-03-03 | 7 | Jason-1 | C | 2012-05-07 | 2013-06-21 | 8 | Jason-2 | A | 2008-07-04 | 2016-10-02 | 9 | Jason-2 | B | 2016-10-13 | 2017-05-17 | 10| Jason-2 | C | 2017-07-11 | 2018-07-18 | 11| Jason-2 | D | 2018-07-25 | 2019-10-01 | 12| Jason-3 | A | 2016-09-12 | 2020-09-29 | 13| Jason-3 | B | 2022-04-25 | 2022-12-03 | 14| Sentinel-3A | A | 2016-03-01 | 2022-12-30 | 15| Sentinel-3B | A | 2018-05-11 | 2018-11-27 | 16| Sentinel-3B | B | 2018-11-28 | 2023-01-08 | 17| Sentinel-6A | A | 2020-12-17 | 2022-11-11 | 18| Saral | A | 2013-03-14 | 2016-07-04 | 19| Saral | B | 2016-07-04 | 2022-12-05 | 20| Topex | A | 1992-12-21 | 2002-06-22 | -----------------------------------------------------
Détailles des produits dispinibles pour la mission
Jason-1❯ alt info mission jason-1 | Mission | Phase | Start | End | --+---------------+-------+------------+------------| 1 | Jason-1 | A | 2002-01-15 | 2009-01-26 | 2 | Jason-1 | B | 2009-02-10 | 2012-03-03 | 3 | Jason-1 | C | 2012-05-07 | 2013-06-21 | -----------------------------------------------------
Ou encore, la liste des produits pour les missions
jason❯ alt info mission jason | Mission | Phase | Start | End | --+---------------+-------+------------+------------| 1 | Jason-1 | A | 2002-01-15 | 2009-01-26 | 2 | Jason-1 | B | 2009-02-10 | 2012-03-03 | 3 | Jason-1 | C | 2012-05-07 | 2013-06-21 | 4 | Jason-2 | A | 2008-07-04 | 2016-10-02 | 5 | Jason-2 | B | 2016-10-13 | 2017-05-17 | 6 | Jason-2 | C | 2017-07-11 | 2018-07-18 | 7 | Jason-2 | D | 2018-07-25 | 2019-10-01 | 8 | Jason-3 | A | 2016-09-12 | 2020-09-29 | 9 | Jason-3 | B | 2022-04-25 | 2022-12-03 | -----------------------------------------------------
product : renvoi les informations sur les produits disponible en base
Toute la liste des produits
❯ alt info product | Product | Start | End |1srt Cyc. |last Cyc. | --+-------------------------+------------+------------+----------+----------| 1 | cs2_b_gop_c_gdr | 2010-07-16 | 2021-02-25 | 1 | 19 | 2 | cs2_b_ice_d_gdr | 2012-01-01 | 2020-04-09 | 2 | 10 | 3 | env_a_esa_v0300_sgdr | 2002-05-14 | 2010-10-23 | 6 | 94 | 4 | env_b_esa_v0300_sgdr | 2010-10-26 | 2012-04-08 | 95 | 113 | 5 | ers2_a_ctoh_v0100_gdr | 1995-05-17 | 2003-11-24 | 1 | 89 | 6 | ja1_a_cnes_e_gdr | 2002-01-15 | 2009-01-26 | 1 | 259 | 7 | ja1_a_cnes_e_sgdr | 2002-01-15 | 2009-01-26 | 1 | 259 | 8 | ja1_b_cnes_e_sgdr | 2009-02-10 | 2012-03-03 | 262 | 374 | 9 | ja1_c_cnes_e_sgdr | 2012-05-07 | 2013-06-21 | 500 | 537 | 10| ja2_a_cnes_d_gdr | 2008-07-04 | 2016-10-02 | 0 | 303 | 11| ja2_a_cnes_d_sgdr | 2008-07-04 | 2016-10-02 | 0 | 303 | 12| ja2_b_cnes_d_gdr | 2016-10-13 | 2017-05-17 | 305 | 327 | 13| ja2_b_cnes_d_sgdr | 2016-10-13 | 2017-05-17 | 305 | 327 | 14| ja2_c_cnes_d_sgdr | 2017-07-11 | 2018-07-18 | 500 | 537 | 15| ja2_d_cnes_d_sgdr | 2018-07-25 | 2019-10-01 | 600 | 644 | 16| ja3_a_cnes_%_sgdr | 2016-09-12 | 2020-09-29 | 22 | 170 | 17| ja3_a_cnes_f_sgdr | 2016-02-12 | 2022-04-07 | 0 | 227 | 18| ja3_b_cnes_f_sgdr | 2022-04-25 | 2022-12-03 | 300 | 322 | 19| s3a_a_lan_%_sgdr | 2016-03-01 | 2022-12-30 | 1 | 93 | 20| s3a_a_wat_%_sgdr | 2016-03-01 | 2023-01-07 | 1 | 94 | 21| s3b_a_lan_%_sgdr | 2018-05-11 | 2018-11-27 | 3 | 19 | 22| s3b_a_wat_%_sgdr | 2018-05-08 | 2018-11-27 | 2 | 19 | 23| s3b_b_lan_%_sgdr | 2018-11-28 | 2023-01-08 | 19 | 74 | 24| s3b_b_wat_%_sgdr | 2018-11-27 | 2023-01-07 | 19 | 74 | 25| s6a_a_lrm_%_gdr | 2020-12-17 | 2022-11-11 | 4 | 73 | 26| s6a_a_lrm_f06_gdr | 2020-12-17 | 2022-08-15 | 4 | 65 | 27| s6a_a_lrm_f07_gdr | 2022-08-15 | 2023-01-10 | 65 | 79 | 28| s6a_a_sar_%_gdr | 2020-12-17 | 2022-11-11 | 4 | 73 | 29| s6a_a_sar_f06_gdr | 2020-12-17 | 2022-08-15 | 4 | 65 | 30| s6a_a_sar_f07_gdr | 2022-08-15 | 2023-01-10 | 65 | 79 | 31| srl_a_cnes_f_sgdr | 2013-03-14 | 2016-07-04 | 1 | 35 | 32| srl_b_cnes_f_sgdr | 2016-07-04 | 2022-12-05 | 100 | 166 | 33| tpx_a_cash_v0220_gdr | 1992-12-21 | 2002-06-22 | 10 | 359 | -----------------------------------------------------------------------------
Avec plus de détailles : option
-v❯ alt -v info product | Product | Version | Phase | Orbit | Start | End |1srt Cyc. |last Cyc. | GDR type --+-------------------------+-------------------------+-------+------------+------------+------------+----------+----------+------------------------------ 1 | cs2_b_gop_c_gdr | GOP, Baseline C, GDR | B | Repeat | 2010-07-16 | 2021-02-25 | 1 | 19 | ['gdr'] 2 | cs2_b_ice_d_gdr | ICE, Baseline D, GDR | B | Repeat | 2012-01-01 | 2020-04-09 | 2 | 10 | ['gdr'] 3 | env_a_esa_v0300_sgdr | v3.0, SGDR | A | Repeat | 2002-05-14 | 2010-10-23 | 6 | 94 | ['sgdr', 'ctoh2'] 4 | env_b_esa_v0300_sgdr | v3.0, SGDR | B | Drifting | 2010-10-26 | 2012-04-08 | 95 | 113 | ['sgdr', 'ctoh2'] 5 | ers2_a_ctoh_v0100_gdr | v1.0, GDR | A | Repeat | 1995-05-17 | 2003-11-24 | 1 | 89 | ['gdr', 'ctoh1', 'ctoh2', 'ctoh3', 'ctoh_hr', 'ers2.r', 'normpass'] 6 | ja1_a_cnes_e_gdr | GDR-E, GDR | A | Repeat | 2002-01-15 | 2009-01-26 | 1 | 259 | ['gdr', 'ctoh1', 'ctoh2', 'fes14', 'gpd', 'l2p', 'normpass'] 7 | ja1_a_cnes_e_sgdr | GDR-E, GDR | A | Repeat | 2002-01-15 | 2009-01-26 | 1 | 259 | ['sgdr'] 8 | ja1_b_cnes_e_sgdr | GDR-E, GDR | B | Repeat | 2009-02-10 | 2012-03-03 | 262 | 374 | ['sgdr'] 9 | ja1_c_cnes_e_sgdr | GDR-E, GDR | C | Repeat | 2012-05-07 | 2013-06-21 | 500 | 537 | ['sgdr'] 10| ja2_a_cnes_d_gdr | GDR-D, GDR | A | Repeat | 2008-07-04 | 2016-10-02 | 0 | 303 | ['gdr', 'ctoh1', 'ctoh2', 'ctoh_hr', 'gpd', 'normpass'] 11| ja2_a_cnes_d_sgdr | GDR-D, SGDR | A | Repeat | 2008-07-04 | 2016-10-02 | 0 | 303 | ['sgdr', 'ctoh2'] 12| ja2_b_cnes_d_gdr | GDR-D, GDR | B | Drifting | 2016-10-13 | 2017-05-17 | 305 | 327 | ['gdr', 'ctoh2', 'gpd'] 13| ja2_b_cnes_d_sgdr | GDR-D, SGDR | B | Drifting | 2016-10-13 | 2017-05-17 | 305 | 327 | ['sgdr', 'ctoh2'] 14| ja2_c_cnes_d_sgdr | GDR-D, SGDR | C | Drifting | 2017-07-11 | 2018-07-18 | 500 | 537 | ['sgdr', 'ctoh2'] 15| ja2_d_cnes_d_sgdr | GDR-D, SGDR | D | Drifting | 2018-07-25 | 2019-10-01 | 600 | 644 | ['sgdr', 'ctoh2'] 16| ja3_a_cnes_%_sgdr | GDR-T, GDR-D, SGDR | A | Repeat | 2016-09-12 | 2020-09-29 | 22 | 170 | ['gdr', 'ales', 'ctoh2', 'gpd', 'normpass', 'rads'] 17| ja3_a_cnes_f_sgdr | GDR-F, SGDR | A | Repeat | 2016-02-12 | 2022-04-07 | 0 | 227 | ['sgdr'] 18| ja3_b_cnes_f_sgdr | GDR-F, SGDR | B | Repeat | 2022-04-25 | 2022-12-03 | 300 | 322 | ['sgdr'] 19| s3a_a_lan_%_sgdr | Baseline D, LAND | A | Repeat | 2016-03-01 | 2022-12-30 | 1 | 93 | ['sgdr', 'ctoh2'] 20| s3a_a_wat_%_sgdr | Baseline D, WATER | A | Repeat | 2016-03-01 | 2023-01-07 | 1 | 94 | ['sgdr', 'ctoh2'] 21| s3b_a_lan_%_sgdr | Baseline D, LAND | A | Repeat | 2018-05-11 | 2018-11-27 | 3 | 19 | ['sgdr', 'ctoh2'] 22| s3b_a_wat_%_sgdr | Baseline D, WATER | A | Repeat | 2018-05-08 | 2018-11-27 | 2 | 19 | ['sgdr', 'ctoh2'] 23| s3b_b_lan_%_sgdr | Baseline D, LAND | B | Repeat | 2018-11-28 | 2023-01-08 | 19 | 74 | ['sgdr', 'ctoh2'] 24| s3b_b_wat_%_sgdr | Baseline D, WATER, SGDR | B | Repeat | 2018-11-27 | 2023-01-07 | 19 | 74 | ['sgdr', 'ctoh2'] 25| s6a_a_lrm_%_gdr | F06, F07, (LRM) | A | Repeat | 2020-12-17 | 2022-11-11 | 4 | 73 | ['gdr'] 26| s6a_a_lrm_f06_gdr | F06 (LRM) | A | Repeat | 2020-12-17 | 2022-08-15 | 4 | 65 | ['gdr'] 27| s6a_a_lrm_f07_gdr | F07 (LRM) | A | Repeat | 2022-08-15 | 2023-01-10 | 65 | 79 | ['gdr'] 28| s6a_a_sar_%_gdr | F06, F07, (SAR) | A | Repeat | 2020-12-17 | 2022-11-11 | 4 | 73 | ['gdr'] 29| s6a_a_sar_f06_gdr | F06 (SAR) | A | Repeat | 2020-12-17 | 2022-08-15 | 4 | 65 | ['gdr'] 30| s6a_a_sar_f07_gdr | F07 (SAR) | A | Repeat | 2022-08-15 | 2023-01-10 | 65 | 79 | ['gdr'] 31| srl_a_cnes_f_sgdr | GDR-F, SGDR | A | Repeat | 2013-03-14 | 2016-07-04 | 1 | 35 | ['sgdr'] 32| srl_b_cnes_f_sgdr | GDR-F, SGDR | B | Drifting | 2016-07-04 | 2022-12-05 | 100 | 166 | ['sgdr'] 33| tpx_a_cash_v0220_gdr | v2.2, GDR | A | Repeat | 1992-12-21 | 2002-06-22 | 10 | 359 | ['gdr', 'ctoh2'] -----------------------------------------------------------------------------------------------------------------------------------------------------------
Seulement avec les produits
ja1❯ alt -v info product ja1 | Product | Version | Phase | Orbit | Start | End |1srt Cyc. |last Cyc. | GDR type --+-------------------------+-------------------------+-------+------------+------------+------------+----------+----------+------------------------------ 1 | ja1_a_cnes_e_gdr | GDR-E, GDR | A | Repeat | 2002-01-15 | 2009-01-26 | 1 | 259 | ['gdr', 'ctoh1', 'ctoh2', 'fes14', 'gpd', 'l2p', 'normpass'] 2 | ja1_a_cnes_e_sgdr | GDR-E, GDR | A | Repeat | 2002-01-15 | 2009-01-26 | 1 | 259 | ['sgdr'] 3 | ja1_b_cnes_e_sgdr | GDR-E, GDR | B | Repeat | 2009-02-10 | 2012-03-03 | 262 | 374 | ['sgdr'] 4 | ja1_c_cnes_e_sgdr | GDR-E, GDR | C | Repeat | 2012-05-07 | 2013-06-21 | 500 | 537 | ['sgdr'] -----------------------------------------------------------------------------------------------------------------------------------------------------------
Recherche d’information sur des paramètres d’un produit. Exemple du produit
ja1_a_cnes_e_gdret les paramètres derange. La recherche des paramètres se fait avec l’option-pet la chaine de caractère*range*:❯ alt info product s6a_a_sar_%_gdr -pdata_01/ku/range {'gdr': {'data_01/ku/range_cor_doppler': {'comment': 'Doppler correction ' 'computed with respect to ' 'the mean sea surface / ' 'geoid. It is applied to ' 'the altimeter range', 'coordinates': '/data_01/longitude ' '/data_01/latitude', 'long_name': 'Doppler correction on ' 'the altimeter range ' 'computed with respect ' 'to the mean sea ' 'surface', 'scale_factor': 0.0001, 'source': 'xref_orbit + ' 'xref_geoid_slopes', 'units': 'm'}, 'data_01/ku/range_ocean': {'add_offset': 1300000.0, 'comment': 'Range computed from the ocean ' 'retracker. It includes all ' 'instrumental corrections from ' 'net_instr_cor_range_ocean', 'coordinates': '/data_01/longitude ' '/data_01/latitude', 'long_name': 'corrected ocean altimeter ' 'range', 'quality_flag': 'range_ocean_qual', 'scale_factor': 0.0001, 'standard_name': 'altimeter_range', 'units': 'm'},
Tracks
Cette fonctionalité permet trouver pour chaqu’un des produits les numéros de trace dans une région donnée.
Elle est accessible à l’aide de la sous-commande tracks de la commande alt.
Ci dessous, l’affichage de l’aide (option -h) pour la sous-commande tracks:
❯ alt tracks -h
usage: alt tracks [-h] product_name {region,nearest} ...
positional arguments:
product_name product referred to
optional arguments:
-h, --help show this help message and exit
product:
product whose tracks are queried
{region,nearest}
region Tracks crossing the given rectangular region
nearest Nearest track to given point
Deux possibilitées pour la détermination des numéros de trace :
region : renvoi les numéros de trace d’un produit passant dans une région qui est définie par des coordonnées géographique min et max d’un rectangle.
Numéros de trace de la mission Jason-1 à l’interieure du rectangle lon/lat min/max:
❯ alt tracks ja1_a_cnes_e_gdr region -G1.55,1.75 -L42.0,44.0 tracks region ja1_a_cnes_e_gdr #### Jason-1 topex 1.55 1.75 42.0 44.0 /ctoh/data/shared/tracks topex >>>>>>> path : /ctoh/data/shared/tracks/topex 2 tracks crossing the region : {70, 111}
Avec plus de détailles : option
-v❯ alt -v tracks ja1_a_cnes_e_gdr region -G1.55,1.75 -L42.0,44.0 tracks region ja1_a_cnes_e_gdr #### Jason-1 topex 1.55 1.75 42.0 44.0 /ctoh/data/shared/tracks topex >>>>>>> path : /ctoh/data/shared/tracks/topex Segment 1 intersects track 111 at (lat,lon)=(43.372822,1.735552) Segment 1 intersects track 70 at (lat,lon)=(42.547038,-358.235236) Segment 3 intersects track 111 at (lat,lon)=(43.125436,1.532267) Segment 3 intersects track 70 at (lat,lon)=(42.794425,-358.433343) 2 tracks crossing the region : {70, 111}nearest : renvoi le numéro de trace d’un produit passant le plus proche d’un point définit par ces coordonnées géographiques.
Quelle est la trace du produit Jason-1 (ja1_a_cnes_e_gdr) passant la plus près de Toulouse (1.439706 43.607888)?
❯ alt -v tracks ja1_a_cnes_e_gdr nearest 1.439706 43.607888 tracks nearest ja1_a_cnes_e_gdr /ctoh/data/shared/tracks topex >>>>>>> path : /ctoh/data/shared/tracks/topex The nearest track to point lat=43.607888, lon=1.439706 is 111
Quelle est la trace ascendante du produit Jason-1 (ja1_a_cnes_e_gdr) passant la plus près de Toulouse (1.439706 43.607888)?
❯ alt tracks ja1_a_cnes_e_gdr nearest 1.439706 43.607888 --asc tracks nearest ja1_a_cnes_e_gdr /ctoh/data/shared/tracks topex >>>>>>> path : /ctoh/data/shared/tracks/topex 111
Quelle est la trace descendante du produit Jason-1 (ja1_a_cnes_e_gdr) passant la plus près de Toulouse (1.439706 43.607888)?
❯ alt tracks ja1_a_cnes_e_gdr nearest 1.439706 43.607888 --dsc tracks nearest ja1_a_cnes_e_gdr /ctoh/data/shared/tracks topex >>>>>>> path : /ctoh/data/shared/tracks/topex 70
Extract
Cette fonctionalité permet extraire des paramètres altimétriques de la base de données.
Elle est accessible à l’aide de la sous-commande extract de la commande alt.
Ci dessous, l’affichage de l’aide (option -h) pour la sous-commande extract:
❯ alt extract -h
usage: alt extract [-h] [-t TRACKS] [-c CYCLES] [--cfg_file CFG_FILE]
[-p PARAMS] [-o OUTPUT_DIR] [--prefix PREFIX] [--serial]
[--no_groups]
product {region,shapefile} ...
positional arguments:
product extract product
optional arguments:
-h, --help show this help message and exit
-t TRACKS, --tracks TRACKS
Tracks list
-c CYCLES, --cycles CYCLES
Cycles list
--cfg_file CFG_FILE Configuration file (yaml) with parameters list (tag
label : params)
-p PARAMS, --params PARAMS
Parameters list
-o OUTPUT_DIR, --output_dir OUTPUT_DIR
Output directory
--prefix PREFIX Prefix file
--serial Switch off multiprocess extraction.
Area:
Area whose tracks are queried
{region,shapefile}
region Tracks crossing the given rectangular region
shapefile Tracks crossing the given shapefile polygon
L’extraction de paramètres altimétriques de la base de données requière un minimum d’arguments qui peuvent varier en fonction des besions. Ici ci-dessous, voici quelques exemples d’usage…
- Exemple n°1 :
Extraction du produit
ja1_a_cnes_e_gdrdans la région toulousainne (region -G1.55,1.75 -L42.0,44.0)L’option paramètre
-pindique la liste de paramètres à extraire : lon,lat,time,range_20hz_kuL’option cycle
-cindique la liste des cycles à extraire : 50,60-63 (le cycle 50 et les cycles de 60 à 63)L’option trace
-tn’est ici pas necessaire car la selection par coordonnées géographiques calcul les numéros de traces à selectionner.L’option répertoire ``-o`` est ici omit. Les fichiers d’extraction sont généré dans le répertoire courant.
❯ alt extract ja1_a_cnes_e_gdr -plon,lat,time,range_20hz_ku -c50,60-63 region -G1.55,1.75 -L42.0,44.0 extract ja1_a_cnes_e_gdr coord_extract {'lonmin': 1.55, 'lonmax': 1.75, 'latmin': 42.0, 'latmax': 44.0} Selection cycle list is : [50, 60, 61, 62, 63] Getting metadata... Getting mission information... Getting tracks to extract... mission: topex /ctoh/data/shared/tracks topex >>>>>>> path : /ctoh/data/shared/tracks/topex topex nb tracks per cycle: 254 nb turns per cycle : 10 orbit inclination : 66.04° Getting product file... Found 10 files Starting extraction Writing file : /data/tmp7j/Test/JA1_GPN_2PeP050_070_20030518_183730_20030518_193339.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP061_070_20030904_202117_20030904_211726.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP050_111_20030520_090218_20030520_095826.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP063_070_20030924_161819_20030924_171428.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP060_070_20030825_222246_20030825_231855.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP061_111_20030906_104605_20030906_114214.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP065_070_20031014_121521_20031014_131131.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP063_111_20030926_064306_20030926_073909.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP062_070_20030914_181948_20030914_191557.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP060_111_20030827_124733_20030827_134340.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP065_111_20031016_024010_20031016_033614.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP064_070_20031004_141650_20031004_151259.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP062_111_20030916_084436_20030916_094045.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP066_070_20031024_101355_20031024_111004.nc fichier vide Writing file : /data/tmp7j/Test/JA1_GPN_2PeP066_111_20031026_003842_20031026_013444.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP064_111_20031006_044137_20031006_053742.nc Writing file : /data/tmp7j/Test/JA1_GPN_2PeP067_070_20031103_081226_20031103_090837.nc Ending extraction Done processing Empty files removed.Avec les fichiers d’extraction, un fichier de description (files_desc.yml) est également généré. Il décrit le contenu de l’extraction :
❯ more files_desc.yml coordinates: latmax: 44.0 latmin: 42.0 lonmax: 1.75 lonmin: 1.55 cycles: '[50, 60, 61, 62, 63]' date: Thu Aug 5 17:11:19 2021 filenames: 50: 70: JA1_GPN_2PeP050_070_20030518_183730_20030518_193339.nc 111: JA1_GPN_2PeP050_111_20030520_090218_20030520_095826.nc 60: 70: JA1_GPN_2PeP060_070_20030825_222246_20030825_231855.nc 111: JA1_GPN_2PeP060_111_20030827_124733_20030827_134340.nc 61: 70: JA1_GPN_2PeP061_070_20030904_202117_20030904_211726.nc 111: JA1_GPN_2PeP061_111_20030906_104605_20030906_114214.nc 62: 70: JA1_GPN_2PeP062_070_20030914_181948_20030914_191557.nc 111: JA1_GPN_2PeP062_111_20030916_084436_20030916_094045.nc 63: 70: JA1_GPN_2PeP063_070_20030924_161819_20030924_171428.nc 111: JA1_GPN_2PeP063_111_20030926_064306_20030926_073909.nc files_number: 10 institution: CTOH/LEGOS, UMR5566 CNRS-CNES-IRD-Universite de Toulouse III mission: Jason-1 orbit: topex output_directory: /data/tmp7j/Test/ product_name: ja1_a_cnes_e_gdr pyctoh_version: hg698a2d3c4442 shapefile: null source: altimetry radar title: GDR or SGDR dataset supplied from CTOH database
- Exemple n°2 :
Extraction du produit
ja1_a_cnes_e_gdrL’option paramètre
-pindique la liste de paramètres à extraire : lon,lat,time,range_20hz_kuL’option cycle ``-c`` est omit. Tous les cycles sont extrait.
L’option trace
-tindique les numéros de trace à extraire : 100-105,180.L’option répertoire
-oest ici omit. Les fichiers d’extraction sont générer dans le répertoire courant.❯ alt extract ja1_a_cnes_e_gdr -plon,lat,time,range_20hz_ku -t100-105,180
- Exemple n°3 :
Extraction du produit
ja1_a_cnes_e_gdrL’option paramètre
-pindique la liste de paramètres à extraire : lon,lat,time,range_20hz_kuL’option cycle ``-c`` est omit. Tous les cycles sont extrait.
L’option trace
-tindique les numéros de trace à extraire : 100-105,180.L’option répertoire
-oest ici omit. Les fichiers d’extraction sont générer dans le répertoire courant.❯ alt extract ja1_a_cnes_e_gdr -plon,lat,time,range_20hz_ku -t100-105,180
- Exemple n°4 :
Extraction du produit
ja1_a_cnes_e_gdrL’option paramètre
-pindique la liste de paramètres à extraire : lon,lat,time, l2p:range ,wet_tropospheric_correction_modelLa recherche du paramètre se fait de manière prioritaire dans le produit de base (càd gdr, sgdr, sigdr) puis si le paramètre n’est pas trouvé, la racherche s’entend aux autres sous-produits (ctoh1, ctoh2, gdp, etc). Dans cet exemple les paramètres
lon,lat,timeetwet_tropospheric_correction_modelsont recherché dans le produits de base GDR du produitja1_a_cnes_e_gdr. Le paramètrewet_tropospheric_correction_modeln’appartient pas au produit de base. Il est donc recherché dans les autres sous-produits. Le paramètre del2p:rangeest force la selection du paramètrerangedans le sous-produitl2p.L’option cycle
-cindique les cycles de 1 à 10L’option trace
-tindique les numéros de trace à extraire : 100-105,180.L’option répertoire
-oest ici omit. Les fichiers d’extraction sont générer dans le répertoire courant.❯ alt extract ja1_a_cnes_e_gdr -plon,lat,time,l2p:range,wet_tropospheric_correction_model -t109 -c1-10
- Exemple n°5 :
Extraction du produit
ja1_a_cnes_e_gdr
- L’option paramètre
-pindique la liste de paramètres à extrairelon,lat,time, l2p:/*L’expression du paramètre
l2p:*permet l’extraction de tous les paramètre du sous-produit l2pL’option cycle
-cindique les cycles de 1 à 10L’option trace
-tindique les numéros de trace à extraire : 100-105,180.L’option répertoire
-oest ici omit. Les fichiers d’extraction sont générer dans le répertoire courant.❯ alt extract ja1_a_cnes_e_gdr -plon,lat,time,l2p:* -t109 -c1-10
- Exemple n°6 :
Extraction du produit
s6a_a_sar_%_gdrL’option paramètre
-pindique la liste de paramètres à extraire : data_01/longitude,data_01/latitude,data_01/timeL’option cycle
-cindique les cycles de 1 à 10L’option trace
-tindique les numéros de trace à extraire : 100-105,180.L’option répertoire
-oest ici omit. Les fichiers d’extraction sont générer dans le répertoire courant.❯ alt extract ja1_a_cnes_e_gdr -pdata_01/longitude,data_01/latitude,data_01/time -t109 -c1-10
Grid2track
Cette fonctionnalité permet d’interpoler des données en 2 dimensions (grillées) avec une trace altimètrique.
Elle est accessible à l’aide de la commande grid2track de la commande alt. Ci-dessous, l’affichage de
l’aide (option -h) :
❯ alt_grid2track --help
usage: alt_grid2track [-h] [-d] [-v] [--version] [--track_file TRACK_FILE] [--track_vars TRACK_VARS] --grid_file GRID_FILE
[--grid_vars GRID_VARS] -p CTOH_PRODUCT [-c CYCLES] [-t TRACKS] --ctoh_grid_var CTOH_GRID_VAR [--prefix PREFIX]
[-o OUTPUT_DIR] [--serial] [-a] [-f] [--info_ctoh_ext_data]
Interpolate gridded data to altimetry track.
optional arguments:
-h, --help show this help message and exit
-d, --debug_on_exception
invokes pdb on exception
-v, --verbosity increase output verbosity
--version show program's version number and exit
--track_file TRACK_FILE
NetCDF altimetry track file pathname (like GDR file or X-TRACK file), -L and -G options are needed.
--track_vars TRACK_VARS
Variables names of the coordinates (lon,lat,time) of the track file as followed order :
lon_name,lat_name,time_name.
--grid_file GRID_FILE
NetCDF external gridded data file pathname, --grid_vars option is required.
--grid_vars GRID_VARS
Variables names of the external data file as followed order : x_name_coord,y_name_coord,var_name.
-p CTOH_PRODUCT, --ctoh_product CTOH_PRODUCT
Product name of the CTOH altimetry database. The options --cycles and --tracks have to be supplied.
Otherwise, all the product is going to be treated.
-c CYCLES, --cycles CYCLES
Cycles list.
-t TRACKS, --tracks TRACKS
Tracks list.
--ctoh_grid_var CTOH_GRID_VAR
External data variable name defined into the CTOH external data STAC catalog.
--prefix PREFIX Set output filename prefix. Default prefix is external data parameter name (var_name).
-o OUTPUT_DIR, --output_dir OUTPUT_DIR
Output directory. Default current directory.
--serial Switch off multiprocess processing.
-a, --append_mode Add grid2track var into an existing file.
-f, --force_access Force write access to an existing file. This option could be added at -p option if you wish to update
existing files that you are not the owner.
--info_ctoh_ext_data Return information about parameters available in the STAC catalog of CTOH external gridded data.
Hors environnement de la base
Pour faire une interpolation d’un fichier trace (créé par l’utilisateur) avec n’importe quelles données grillées.
❯ # grid2track --> dist2coast
❯ alt_grid2track --track_file test_data/products/ja2_a_cnes_d_gdr/cycle_013/gdr/JA2_GPN_2PdP013_074_20081110_212606_20081110_222219.nc
--track_vars lon,lat,time --grid_file /ctoh/data/shared/external_data/TOPO/DIST_TO_COAST_gshhg_v2.3.7_1mn/dist_to_coast_GSHHG_v2.3.7_1m.nc --grid_var lon,lat,z
❯ # grid2track --> mss
❯ alt_grid2track --track_file test_data/products/ja2_a_cnes_d_gdr/cycle_013/gdr/JA2_GPN_2PdP013_074_20081110_212606_20081110_222219.nc
--track_vars lon,lat,time --grid_file /ctoh/data/shared/external_data/MDT_MSS/MSS_CNES_CLS22/mss_cnes_cls_2022.nc --grid_var longitude,latitude,mssh
Dans l’environnement de la base
Pour faire l’interpolation d’une trace d’un produit de la base de données altimètrique avec des données grillées définies dans la base de données externes (STAC) du CTOH.
Liste des données externes disponible dans le catalogue STAC du CTOH
❯ alt_grid2track --info_ctoh_ext_data
############################### dist2coast_gshhg_v2.3.7_1m ###############################
Dimensions :
{'lon': {'type': 'spatial', 'axis': 'x', 'extent': [0.0, 360.0], 'reference_system': 4326}, 'lat': {'type': 'spatial', 'axis': 'y', 'extent': [-90.0, 90.0], 'reference_system': 4326}}
External data variable :
{'z': {'dimensions': ['lat', 'lon'], 'extent': [-2704.016, 2513.4473], 'type': 'data', 'units': None, 'description': 'z', 'scale_factor': None, 'add_offset': None, 'standard_name': None, 'dtype': 'float32'}}
----------------- Asset : dist2coast_gshhg_v2.3.7_1m -------------------------------
Metadata :
{'href': '../../TOPO/DIST_TO_COAST_gshhg_v2.3.7_1mn/dist_to_GSHHG_v2.3.7_1m.nc', 'type': 'application/x-hdf5', 'title': 'Distance to the nearest coastline', 'description': 'https://www.soest.hawaii.edu/pwessel/gshhg/, Version 2.3.7 Released June 15, 2017, source : GSHHG v2.3.7', 'version': 'v2.3.7_1m', 'release_date': '2017-06-15', 'roles': ['data']}
HREF : /ctoh/data/shared/external_data/TOPO/DIST_TO_COAST_gshhg_v2.3.7_1mn/dist_to_GSHHG_v2.3.7_1m.nc
############################### gebco_2014 ###############################
Dimensions :
{'lon': {'type': 'spatial', 'axis': 'x', 'extent': [-179.99583333333334, 179.99583333332703], 'reference_system': 4326}, 'lat': {'type': 'spatial', 'axis': 'y', 'extent': [-89.99583333333332, 89.99583333333334], 'reference_system': 4326}}
External data variable :
{'elevation': {'dimensions': ['lat', 'lon'], 'extent': [-10977.0, 8685.0], 'type': 'data', 'units': 'm', 'description': 'Elevation relative to sea level', 'scale_factor': '1.0', 'add_offset': '0.0', 'standard_name': 'height_above_reference_ellipsoid', 'dtype': 'int16'}}
----------------- Asset : gebco_2014 -------------------------------
Metadata :
{'href': '../../TOPO/TOPO_GEBCO/gebco_2014/GEBCO_2014_2D.nc', 'type': 'application/x-hdf5', 'title': 'Elevation relative to sea level', 'description': 'The GEBCO_2014 Grid - a continuous terrain model for oceans and land at 30 arc-second intervals. Information on the data set is available from the GEBCO project web pages: http://www.gebco.net/data_and_products/gridded_bathymetry_data/. The data in the GEBCO_2014 Grid should not be used for navigation or any purpose relating to safety at sea.', 'version': '20150318', 'release_date': '2015-03-18', 'roles': ['data']}
HREF : /ctoh/data/shared/external_data/TOPO/TOPO_GEBCO/gebco_2014/GEBCO_2014_2D.nc
############################### mdt_cnes_cls22_global ###############################
Dimensions :
{'longitude': {'type': 'spatial', 'axis': 'x', 'extent': [-179.9375, 179.9375], 'reference_system': 4326}, 'latitude': {'type': 'spatial', 'axis': 'y', 'extent': [-89.9375, 89.9375], 'reference_system': 4326}, 'time': {'type': 'temporal', 'extent': [19358.0, 19358.0]}, 'nv': {'type': 'geometry', 'extent': [0, 1]}}
External data variable :
{'mdt': {'dimensions': ['time', 'latitude', 'longitude'], 'extent': [-2147483647.0, 1.8218], 'type': 'data', 'units': 'm', 'description': 'Mean dynamic topography', 'scale_factor': '0.0001', 'add_offset': None, 'standard_name': 'mean_dynamic_topography', 'dtype': 'int32'}}
Exemple de traitement réalisé avec un produit de la base de données et des données externes disponible dans le catalogue STAC du CTOH
❯ alt_grid2track -p ja2_a_cnes_d_gdr -t10 -c150 --ctoh_grid_var dist2coast_gshhg_v2.3.7_1m
❯ alt_grid2track -p ja2_a_cnes_d_gdr -t10 -c150 --ctoh_grid_var mss_cnes_cls22