![]()
Documentation 02/04/2002 Puech Dominique Météo-France CNRM/GMAP/OBS![]()
Les informations suivantes concernent l'unite Odbtools, modifiée a météo-France pour Aladin et Canari
Les programmes sont disponibles sous ${pack_gco}/src/main/odb/odbport
Les procédures générales d'exécution sont sur kami ~mrpa660/SRC/CYxx/EX_transf.ksh
Ces procédures effectuent toutes les manipulations initiales nécessaires.
Ces manipulations sont néanmoins expliquées
répertoire des données $WORKDIR/DATAOption TO_ODB_ECMWF=0 a Meteo-France
II. ECMASCR/ECMA - > ECMA (shuffle)
II.1. Eclatement
II.2. Compactage
II.3. RéductionIII. cmafile -> ECMA/ECMASCR (to_odb)
IV. ECMASRC/ECMA-> cmafile (to_ecma)
V. ECMA -> CCMA (shuffle)
V.1. Assimilation
V.2. CanariVI. CCMA -> ECMA (matchup)
VII. Documentation CEP
VII.1. shuffle / matchup
Les formats des bases de donnees ECMASCR ou ECMA sont identiques et de format ECMA (toutes les données)
en opposition au format CCMA qui ne contient pas toutes les tables ni toutes les colonnes.
Les noms des fichiers d'informations sont différences ECMASCR.dd, ECMASCR.sch et ECMA.dd, ECMA.sch
Il suffit de renommer ses fichiers d'informations pour qu'une base s'appelle ECMASCR ou ECMA
L'exécution ne tourne que de ECMASCR -> ECMA. Il faut 2 noms différents pour repérer chaque base.
Si la base initiale est de type ECMA (format ECMA) renommer les fichiers d'informations
ECMA.dd -> ECMASCR.dd ECMA.sch -> ECMASCR.schObjet : augmentation du nombre de pools d'une base
Cette augmentation se fait par coefficient multiplicatif par rapport au nombre de pool(s) initialshuffle -iECMASCR -oECMA -a$na -b$NPOOL -B${dat} -T${nbslot}
$na = nb de pool(s) de la base initiale (ligne 5 de ECMASCR.dd)
$NPOOL = coefficient multiplicatif nb final de pools = $na * $NPOOL
${dat} = date des données yyyymmddhhmnss (ligne 4 de ECMASCR.dd sans le blanc)
${nbslot} = nb de timeslots 7 en 4dvarUtilisation de la procédure base en sortie : $WORKDIR/DATA/ECMA
option = 1
base = nom de la base initiale type ECMASCR ou ECMA
type = 4d ou 3d
NPOOL = valeur > 1Objet : ramener les données d'une base sur un seul pool
shuffle -iECMASCR -oECMA -a$na -b$NPOOL -B${dat} -T${nbslot}
$na = nb de pool(s) de la base initiale (ligne 5 de ECMASCR.dd)
$NPOOL = 0
${dat} = date des données yyyymmddhhmnss (ligne 4 de ECMASCR.dd sans le blanc)
${nbslot} = nb de timeslots 7 en 4dvarUtilisation de la procédure base en sortie : $WORKDIR/DATA/ECMA
option = 1
base = nom de la base initiale type ECMASCR ou ECMA
type = 4d ou 3d
NPOOL = 0Objet : ne garder dans la base finale que les données subtype@hdr=1
TO_ODB_REDUC=1
shuffle -iECMASCR -oECMA -a$na -b$NPOOL -B${dat} -T${nbslot}$na = nb de pool(s) de la base initiale (ligne 5 de ECMASCR.dd)
$NPOOL = 1 on conserve le meme nombre de pool(s)
${dat} = date des données yyyymmddhhmnss (ligne 4 de ECMASCR.dd sans le blanc)
${nbslot} = nb de timeslots 7 en 4dvarUtilisation de la procédure base en sortie : $WORKDIR/DATA/ECMA
option = 1
TO_ODB_REDUC=1
base = nom de la base initiale type ECMASCR ou ECMA
type = 4d ou 3d
NPOOL = 1
La base créée est de type ECMASCR ou ECMA suivant l'initalisation de ODB_CMA en ECMASCR ou ECMA
base de type ECMA en sortie avec la procédure
Il est possible de créer une base CCMA (ODB_CMA=CCMA) a partie d'un cmafile compresse
non implémenté dans la procédureto_odb cmafile(s) -> base avec autant de pools que de fichiers cma
Utilisation de la procédure utilisation avec 1 seul cmafile base en sortie : $WORKDIR/DATA/ECMA
option = 2
cmafile = nom du fichier cmafoc initial
dat = yyyymmddhh -> date inscrite sur ECMA.dd
type = 4d ou 3d
NPOOL >=1 si supérieur a 1 la procédure effectue un éclatement après la création
MXUP_TRAJ=3 utilisé pour agrandir le cmafile si fichier anterieur au 2000061918
cette transformation peut-etre supprimee avec RUN_mandalay=0
RUN_obsort=1 -> mise a jour des tslots
En final, il y aura autant de cmafile que de pools
to_ecma cma -> fichiers cmafiles nommés cma.x x= numéro du pool
Utilisation de la procédure
option = 3
base = nom de la base initiale type ECMASCR ou ECMA
type = 4d ou 3d
Ce passage est effectuée sur des bases ayant "subi" le screening, seul le type ECMA est donc traité
shuffle -iECMA -oCCMA -a$na -b${NPOOL} -B${dat} -T${nbslot}
$na = nb de pool(s) de la base initiale (ligne 5 de ECMA.dd)
${NPOOL} = 1 conservation du nombre de pool(s)
${dat} = date des données yyyymmddhhmnss (ligne 4 de ECMA.dd sans le blanc)
${nbslot} = nb de timeslots 7 en 4dvarUtilisation de la procédure base en sortie : $WORKDIR/DATA/CCMA
option = 4
base = nom de la base initiale type ECMA
type = 4d ou 3dTO_ODB_CANARI=1
shuffle -iECMA -oCCMA -a$na -b${NPOOL} -B${dat} -T${nbslot}$na = nb de pool(s) de la base initiale (ligne 5 de ECMA.dd)
${NPOOL} = 1 conservation du nombre de pool(s)
${dat} = date des données yyyymmddhhmnss (ligne 4 de ECMA.dd sans le blanc)
${nbslot} = nb de timeslots 7 en 4dvarUtilisation de la procédure base en sortie : $WORKDIR/DATA/CCMA
option = 4
base = nom de la base initiale type ECMA
type = 4d ou 3d
TO_ODB_REDUC = 0 toutes données TO_ODB_REDUC = 1 données actives
TO_ODB_CANALT = 0 données sol TO_ODB_CANALT = 1 données sol + altitude
VI. CCMA -> ECMA
PB
Le "matchup" remonte les données de la base CCMA - assimilation sur la base ECMA initial -> "ECMA cpl"
shuffle -iCCMA -oECMA -a$na -b1 -T$nbslot -F${base}
$na = nb de pool(s) de la base initiale (ligne 5 de ECMA.dd ou CCMA.dd)
${nbslot} = nb de timeslots 7 en 4dvar
${base} base dans laquelle est inclue la dernière trajectoire
CCMA -> remontée de la valeur de an_deparUtilisation de la procédure
option = 4
base = nom de la base initiale format et type ECMA
base_ccma = nom de la base assimilation format CCMADonnées remontées : (données actives)
hdr = status, event1
body = status, event1, anflag
update = tout sauf fg_depar et les RMDI
rtovs/atovs = predictor[14] (ts)
Usage: odbshuffle
-i input_db
-o output_db
-a no. of (virtual) procs in A-dir (default=no. of pools in input database)
-b no. of (virtual) procs in B-dir (default=1)
-T no. of timeslots (default=7 as in 6h 4DVar)
-L date for left margin in YYYYMMDDHH (default=basetime - 3h)
-R date for right margin in YYYYMMDDHH (default=basetime + 3h)
-F ECMA or CCMA (final traj performed with ECMA=default or CCMA ?)
-B analysis basetime in YYYYMMDDHH