{{{ #!docbook
Projet GEOMAG Détection du champ magnétique océanique dans les sorties de ORCA Œ ° Françoise Pinsard LOCEAN INCAS fiche projet 2006 GEOMAG OPA Introduction Le projet GEOMAG a démarré mi-février 2006. La durée de ce projet a été chiffrée à une semaine pour un ingénieur maîtrissant les sorties de OPA et l'outil SAXO/IDL. Je n'ai pas les connaissances pré-requises mais je souhaitais les acquérir et Charles n'a plus de créneau disponible dans son plan de charge. Il est piloté scientifiquement par Frédéric Vivier.
Frédéric Vivier Je souhaiterais calculer le champ magnetique genere par la circulation oceanique a partir du dernier run global d'OPA. Concretement, le travail consiste a calculer des champs derives des champs de vitesse et de temperature (integrale sur la verticale de la divergence de la vitesse mulitplie par la composante verticale du champ magnetique terrestre et par la conductivite de l'ocean). J'utilise ces champs ensuite comme forcage. J'ai les codes IDL pour le faire, qu'il faut ajuster a la marge. Je pense que pour quelqu'un qui connait bien OPA et IDL, il n'y en a vraiment pas pour longtemps (~1 semaine)
Historique Frédéric a réalisé en 2003 une étude similaire sur les sorties de trois modÚles dont ORCA 2 ° en 2003. cf. Il souhaite refaire ce même travail sur les sorties récentes (++date) de ORCA Œ ° ProblÚmes à résoudre adaptation de ORCA 2° à ORCA Œ ° (nouvelle grille, grosse quantité de données, homogénéité des sorties, granularité) nouvelle version de SAXO. Frédéric utilise deux versions de SAXO sans utilisation de IDL_STARTUP. cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/IDL_RDD/. cerbere.locean-ipsl.upmc.fr:/usr/home/smasson/IDL_RD/. Liens avec d'autres projets Drakkar Les runs climatiques d'ORCA Œ ° faits dans le cadre de Drakkar seront la source des paramÚtres T S U V . D'aprÚs Gurvan (le 9 mars 2006), c'est le run G22 qui conviendrait le mieux. Jean-Marc Molines est contacté par Gurvan pour nous indiquer la localisation des fichiers de sorties de ce run.
Jean-Marc Molines le 9 mars 2006 Les sorties sont sur gaya ~rcli002/ORCA025/ORCA025-Gxx-S/, dans des sous répertoires 'annee' (0001 0002 
 ou 1949 
 1965) Il y a accÚs pour tout le monde en lecture. Pour mémoire, les runs climatiques sont : le run G22 avec forçages journaliers "drakkar set #1" (sans rappel en sel ) le run G32 avec forçages journaliers "drakkar set #1" (avec rappel en sel, mais avec le aplus, aminus 
 ) le run G42 avec forçages climatiques CORE (journaliers), rappel en sel, runoff cotiers le run G45b (même chose que G42 mais avec des retouches de topo sur les région overflow ( DS, FBC, Gib, BabElMandeb) + des coefficients de frottement de fond x 50 localement + torres ouvert avec 3 iles au milieu ) le run G50 (climatique de 1949 a 1958 avec forçages core 6 h de l'année 1958, + TKE modifié + param glace modifié + runoff Mercator ) Dans tous les runs CORE on a la MOC qui diminue fortement pendant les 10 premiÚres années. Pour G22 et G32, on maintient une MOC dans l'Atlantique à des valeurs trÚs hautes (22-24 Sv).
Terminologie des fichiers gaya.idris.fr:/u/rech/cli/rcli002/ORCA025/ORCA025-G22-S/0010/ORCA025-G22_y0010m01d03_gridT.nc idem pour gridU, gridV gridW et icemod soit /u/rech/cli/rcli002/ORCA025/ORCA025-expérience_drakkar-S/année_drakkar/ORCA025-expérience_drakkar-yannée_drakkarnmoisdjour.nc PiÚge <filename moreinfo="none">~</filename> Sur gaya.idris.fr, ~rcli002/ désigne /u/rech/cli/rcli002/ alors que sur rhodes.idris.fr ~rcli002/ désigne /home/rech/cli/rcli002/
Anne-Marie Tréguier le 10 mars 2006 En complement des infos de Jean Marc, je rappelle que ORCA025-G22 et G32 (en fait, tous les runs avec le forcing set 1) ont une convection profonde enorme en mer de Weddell avec des vitesses verticales telles que la MOC est "unplottable" au sud de 60S. Pour l'ACC, je conseille donc *tres fortement* G42 ou G45B avec forcages CORE, meme si l'ACC est plus faible dans ce cas a cause de la tension du vent plus faible. Je joins le rapport de Guillaume d'Encausse (stage avec Sabrina et moi) qui a quelques infos sur la comparaison G32-G42 dans l'ACC.
À lire donc Ces remarques de Anne-Marie Tréguier remettent donc peut-être en cause les recommandations de Gurvan. C'est bien sûr à Frédéric de choisir avec des critÚres à connaître comme par exemple le calcul du transport vers l'est et vers l'ouest, au passage de Drake (65 ° Ouest), entre l'afrique et l'antarctique (20 ° Est) et entre l'australie et l'antarctique (147 ° Est)
CHAMP satellite dont les données devraient permettre de voir les variations de champ magnétique SAXO sous forge SAXO est sous forge.ipsl.jussieu.fr depuis mars 2006 soit 6 mois au 20061006. On a suffisament de recul maintenant pour exploiter le savoir-faire acquis sur ce 1er déploiement de projet avec les outils trac et svn pour GEOMAG. C'est peut-être aussi l'occasion de voir comment on peut partager des sources entre plusieurs projets puisque GEOMAG utilise SAXO et que je ne vais pas réinventé la roue pour la doc (idldoc), etc. Je vais en tout cas essayer de détailler ici le plus possible le travail à faire faciliter la mise en œuvre de nouveaux projets sous forge.ipsl.jussieu.fr.
Vie du projet Participants Frédéric Vivier Sébastien Masson Gurvan Madec Jean-Marc Molines Olivier Thauvin Calendrier février 2006 conception, naissance 21 février 2006 1er topo de Frédéric, création de cette doc. 22 février 2006 lecture de 9 mars 2006 entrevue avec Gurvan à propos des sorties ORCA ÂŒ ° ; Gurvan envoie un mail à Jean-Marc Molines pour savoir où sont ces données sur gaya et savoir si on peut les récupérer avec un compte reeexxx. 20 mars 2006 point rapide sur les entrées du systÚme. J'ai compris pour condmag.nc. il me manque le meshmask de ORCA025. 6 avril 2006 J'annonce à Frédéric - en mission sur le Vagabon - que je pourrais pas finaliser tout d'ici le 11 avril 2006. redaction du shell script interp2_param.sh pour éviter les éditions de fichiers. je suis en vacances du 8 avril au 11 avril inclus 18 avril 2006 : J'ai réussi à produire des *_reg.nc avec les softs de Frédéric déplacés dans /usr/home/fplod/incas/geomag/src/INTERP2/ sur aedon et ajax (parce que souci de nfs sur aedon) et Frédéric qui piaffe devrait me dire si je suis dans les choux. Les diagnostics de différence de cdo sont plus simples à utiliser que le méchant outil que j'avais commençé à rédiger mais quand il y a une différence il faut vraiment faire un fichier contenant cette différence 
 24 avril 2006 début de reprise pour revoir si la procédure est ok sur les machines du LOCEAN avec paramétrisation des répertoires d'entrée/sortie 9 mai 2006 j'ai fait une pose car Frédéric m'avait dit qu'il avait de quoi travailler avec les nouveaux fichiers de transport 2 °. En rentrant du congrÚs début mai, Frédéric revient un peu sur ce qu'il me disait fin avril à savoir qu'il n'est pas certain que les satellites voient mieux que 2 ° donc pas sûr que ce qui pourrait sortir de l'étude ÂŒ ° soit trÚs utile. Il est ok que GEOMAG soit cobaye sur migration de INTERP, REVINTERP avec cdo et l'utilisation du nouveau saxo. 26 septembre 2006 Je n'ai pas touché à GEOMAG depuis une éternité. Pour repartir sur un base seine, je propose à Frédéric de mettre les softs dans un projet géré par trace et svn sous comme SAXO. Frédéric est d'accord. Je demande donc à Olivier de créer le projet. 27 septembre 2006 Olivier a créé le projet GEOMAG sur forge.ipsl.jussieu.fr. Il me reste à tout configurer. 6 octobre 2006 travail sur forge et trac : gestion du projet sous forge, ajout de fvi, trac.ini et gestion des permissions avec rédaction détaillée dans . 9 octobre 2006 travail sur forge et trac : WikiStart, milestones et préparation importation 10 octobre 2006 travail sur svn : création de base (trunk, tags, branches) et importation Bonne coïncidence pour Xavier qui en était à l'importartion pour son projet model_iw. 15 novembre 2006 Je présente l'infrastructure forge à Frédéric. Il a l'air convaincu ! Nous convenons de nous revoir demain pour faire un tp d'ajout de code. 16 novembre 2006 Contrairement à ce que j'avais prévu, il n'est pas évident de réexploiter la doc getsaxo pour en faire un getgeomag ou c'est un peu prématuré 
 à cause en particulier de l'environnement.++ En attendant, pour donner à Frédéric des indications précises pour ajouter des fichiers, j'ouvre un ticket dans lequel j'écris ce qu'il faut faire à partir de scratch. 20 novembre 2006 J'ai repris l'étape 1 (condmag_cond_sed_on_orca.pro) pour que cela fonctionne avec la version courante de SAXO mais attention je n'obtiens pas le meme résultat sans doute à cause des différences entre SAXO derniÚre mouture et les modules équivalents de Frédéric. 22 novembre 2006 J'améliore le log de condmag_cond_sed_on_orca.pro et j'utilise mon isafile.pro en attendant que Seb réagisse sur ma demande de non-interactivité en travaillant avec ma version (working space) de SAXO. J'ajoute la création de ${GEOMAG_OD}/Br_orcares dans condmag_cond_sed_on_orca.pro. ++ trouver une organisation pour l'aborescence des fichiers de référence Je n'arrive pas à dessiner des cartes à partir de condmag.nc avec xxx parce qu'il ne trouve pas xaxis. J'ouvre le ticket 61 sur SAXO. Je relance Jean-Marc Molines pour récupérer un meshmask de ORCA025 (pas de réponses à la question posée le 20060320). Jean-Marc me répond.
Jean-Marc Molines 22 novembre 2006 On trouve tous les mesh_mask (en fait mesh_hgr, mesh_zgr et mask (3 fichiers) ) pour les differentes experiences DRAKKAR dans le répertoire ~rcli002/ORCA025/ORCA025-I/ C'est un peu le vrac, mais en cherchant les *mesh* et les *mask* c'est pas trop dur 
 PS: il y a autant de mesh_mask car on a un peu bidouille la bathy entre les differentes experiences et comme on tourne en partial steps 
 Le fichier ORCA025_PS_mesh_hgr.nc se refere a tous les runs de la serie G20 (G2x) -rw-r--r-- 1 rcli002 cli 212011416 Jan 15 2005 ORCA025-G03_mesh_hgr.nc ==> G03 -rw-r--r-- 1 rcli002 cli 212011416 Jan 4 2005 ORCA025-G30_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 May 9 2005 ORCA025-G33_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 Jul 5 2005 ORCA025-G42_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 Oct 28 2005 ORCA025-G44_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 Nov 12 2005 ORCA025-G45_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 Nov 27 2005 ORCA025-G45b_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 Dec 22 2005 ORCA025-G50_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 Jul 23 08:27 ORCA025-G70_mesh_hgr.nc -rw-r--r-- 1 rcli002 cli 212011416 Dec 7 2004 ORCA025_PS_mesh_hgr.nc
Pour commencer concrÚtement le travail d'adaption à ORCA025, je décide de travailler avec G42.
23 novembre 2006 Je transforme condmag_cond_sed_on_orca en condmag_on_orca puisque que je m'occupe aussi de Br. Je fais les qqes commits de modif et de ménage avant de passer à l'IDRIS avant d'attaquer trÚs sérieusement ORCA025. Je regarde ceux que je peux faire avoir les 3 types de mesh_mash dont parle Jean-Marc. Bon le 1er est bizarre, j'ai un message d'erreur : % NCDF_CONTROL: Attempt to take the file out of define mode (ENDEF) failed. (NC_ERROR=-31) % Execution halted at: CONDMAG_ON_ORCA 387 /home/rech/eee/reee522/incas/geomag_ws/condmag_on_orca.pro % $MAIN$ et le fichier Br_ORCA025.nc n'est pas bon (32 octets) et le fichier cond_sed_ORCA025.nc a des valeurs min et max super louches cond_sed:valid_min = nan0x7ffffffff ; cond_sed:valid_max = nan0x7ffffffff ; je fais quand même un commit de ce que j'ai sur rhodes et un update sur aedon. 24 novembre 2006 Je diffuse - sur une suggestion de Marie-Alice - les sections et par le biais d'un attachement retour_exp_fp.html à AdminProjet - Forge - Trac. Encore un exemple de puissance de xi:include. 28 novembre 2006 J'isole l'écriture des output dans un module. C'est plus propre en terme de softs mais c'est pas encore ça car 4 octets de différence en taille entre la version précédement créée et la nouvelle. je ne fais pas encore de commit 30 novembre 2006 Frédéric me prévient que Gurvan pense qu'on devrait plutÃŽt travailler avec les sorties de l'expérience G70. je ne trouve pas d'info sur cette expérience. aller voir Gurvan pour savoir pourquoi. Rapidement, Gurvan me dit que le choix de l'expérience dépend du fait de savoir si on s'intéresse à la variabilité saisonniÚre ou à la variabililté inter-annuelle. Je n'en sais rien !++ 1er décembre 2006 Sébastien a mis la bonne protection à rhodes.idris.fr:/home/rech/eee/reee217/SAXO_DIR/SRC/buildinit.pro. cf #60 (protection of buildinit.pro) - Saxo - Trac. Je crée mon propre init.pro. ++ configuration de mon compte rhodes.idris.fr pour avoir la complémentation des noms de fichiers. Sébastien me donne la solution pour utiliser xxx avec condmag.nc. cf #61 (trouble with xxx) - - Saxo - Trac. En prévision j'ajoute aujourd'hui. J'ajoute aussi une section de validation à toutes les étapes même si je ne sais pas encore quoi mettre dedans. ++ nveau pb maintenant sur scanfile appelée par xxx : IDL> xxx,'./condmag.nc', XAXISNAME = 'lo', YAXISNAME = 'la' % L.112 /home/rech/eee/reee217/SAXO_DIR/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/scanfile.pro: none of the dimensions name matches one of the following regular expression: % L.112 /home/rech/eee/reee217/SAXO_DIR/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/scanfile.pro: 'longitude', 'lon', 'x', 'longitude*', 'lon*', 'x*', '*longitude*', '*lon*', '*x*' % L.112 /home/rech/eee/reee217/SAXO_DIR/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/scanfile.pro: => we cannot find the x dimension % Stop encountered: SCANFILE 115 /home/rech/eee/reee217/SAXO_DIR/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/scanfile.pro Sébastien me donne un programme idl rseries_ncdf.pro de lecture de netcdf en série pour que je ne parte pas de scratch sur la lecture des sorties ORCA ÂŒ. y a plus qu'à ! 5 décembre 2006 J'étudie rseries_ncdf.pro. La syntaxe suivante semble fonctionner pour lire la variable votemper dans les sorties de ORCA2 présentes sur cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/geomag/ : aedon$ idl IDL> iodir='/usr/work/sur/fvi/OPA/ORCA2/' IDL> res= rseries_ncdf('votemper',010101,061231,'ESS','5d') IDL> help,res,/structure ** Structure <310ebc0>, 5 tags, length=1800, data length=1800, refs=1: ARR FLOAT Array[1, 1, 1, 438] GRID STRING 'T' UNITS STRING 'C' EXPERIMENT STRING 'ESS_5d_060101_061231_grid_T.nc' NAME STRING 'votemper' et 438 = 73 * 6 car 73 pas de temps dans chacun des 6 fichiers grid_T. ++ sauf que je ne comprends pas où sont passées les 3 autres dimensions x,y, deptht++ Donc rseries_ncdf.pro semble être un excellent point de départ. Je me prépare tout de même à un travail d'adaptation pour prendre en compteune terminologie différente de expérience_5d_datedébut_datefin_grille. 11 décembre 2006 J'ai déposé rseries_ndcf.pro dans le dépÃŽt svn. J'essaye de comprendre pourquoi je ne retrouve pas toutes les dimensions attendues de votemper. Pour mémoire, pour savoir en IDL où se trouvent les sources des procédures et des fonctions utilisées : $ idl IDL> help, /SOURCE_FILES En disctuant avec Frédéric, on conclut qu'il vaut mieux garder la granularité temporelle annuelle même si avec rseries_ndcf.pro on peut traiter plusieurs années d'un coup. il faut que je donne des cartes à Frédéric pour lui montrer les différences entre son travail et le mien sur l'étape 1 ORCA2. 12 décembre 2006 Je travaille sur la validation de l'étape 1. J'ai un souci de visualisation de ${GEOMAG_OD}/cond_sed_ORCA2.nc : IDL> xxx,'cond_sed_ORCA2.nc' % L.236 /home/rech/eee/reee217/SAXO_DIR/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/scanfile.pro: the variable time has no attribut. % L.236 /home/rech/eee/reee217/SAXO_DIR/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/scanfile.pro: we create a fake calendar 
 ça peut se comprendre parce que effectivement la variable time n'a aucun attribut. La solution est soit d'en ajouter soit de compléter l'appel de xxx.je galÚre ! Je finalise sur rhodes.idris.fr la transformation de condmag_on_orca.pro avec condmag_output.pro en ajoutant paramÚtres et un mot clé pour l'expérience DRAKKAR et en faisant du ménage. il faut faire le diagnostic de différences 19 décembre 2006 Je continue à travailler sur la validation de l'étape 1 avec la rédaction de step1_diff.pro. Je fais le commit à partir de rhodes et j'ai mis à jour cerbere. ++ montrer les plots à Frédéric. 11 janvier 2007 Frédéric me relance et il a raison !! Je fais mon premier schéma avec graphviz dont j'intégre le résultat dans la présente documentation. Je transfÚre les sorties de ORCA2 de /usr/work/sur/fvi/OPA/ORCA2/ sur rhodes. bunzip2 n'a pas l'air d'exister sous rhodes ! 17 janvier 2007 J'ai commencé la reprise de forcagequimarche.pro. Je renonce pour l'instant à le faire tourner sans compatibilité avec l'ancien saxo 
 trop de modif. 13 mars 2007 enfin, reprise post-cirene. amélioration de geomag_profile.sh sur aedon. je peux maintenant utiliser systématiquement les variables d'environnement au lieu de chemin en dur. reprise de la doc à partir de étape 1. relance seb pour pb xxx condmag.nc. je n'arrive pas à dessiner les sorties de l'étape 1 et les résultats de différences. demande rv à Seb pour une heure/jour jusqu'à la fin du mois. ok tp sur zeus pour environnement 
 des surprises mais ça avance. 14 mars 2007 rv Seb. constat de souci sur xxx avec ?axisname. Seb corrige. étudier la solution ncdiff dans la famille NCO pour faire les différences entre deux fichiers netCDF. pas ok pour visu des résultats. Pour visualiser correctement tous les fichiers netCDF qui sont sur une grille ORCA, il faut associer le meshmask (++ la grille ou le masque) , sinon on a droit aux cellules déformées qui se superposent aux cellules normales. Donc il faut developper l'équivalent de tst_initorca2.pro dans le cadre de geomag. et le mettre en argument de xxx. Seb me dit que si je fais l'interpolation inverse je vais cumuler les erreurs dans les deux sens (interpolation sur grille irréguliÚre puis suur interploation sur grille irréguliÚre). Si la différence n'est pas plus grande que la précision de la machine on peu considérer que c'est OK. On parle aussi d'améliorations possibles de SAXO : homogénéisation des noms de variables comme par exemple filename et introduction de la notion de avec niveau de verbosité et fichier associé. 21 mars 2007 Gros travail ses derniers jours sur SAXO pour améliorer la doc et les headers et surtout comprendre pourquoi je n'arrivais pas à utiliser xxx. Le diagnostic n'était pas évident : idl> % Keyword parameters not allowed in call. et en plus Seb en faisant des essais dans son environnement en copiant seulement mes fichiers de données n'avait aucun souci ! La premiÚre embrouille venait du fait que mon init.pro ou l'équivalent pointé par IDL_STARTUP n'est pas dans mon répertoire courant. Ensuite j'ai soupçonnée des soucis de version d'IDL (je travaille en 6.2 et Seb travaille en 6.3). Ce n'est pas la bonne piste. On a fini par comprendre que parce que j'avais un for_create.pro dans mon répertoire courant, xxx essayait de l'exécuter alors qu'il aurait dû travailler avec celui créé dans le répertoire pointé par la variable myuniquetmpdir. Mais ça ne marchait tjs pas. Aujourd'hui aprÚs avoir exécuté la séquence suivante qui permet de tester xxx avec des fichiers disponibles sous la distribution de SAXO, j'ai compris que j'avais aussi un xxx_oneplot.pro en trop ! idl> myfile=file_dirname((find('buildinit.pro'))[0], /mark_directory) + '../DATA/TestsData/Levitus98_1m_01_12_Temperature_Pot_ORCA2.nc' idl> xxx, myfile ; sans init particulier idl> xxx, myfile, 'tst_initorca2' Je me suis rendue compte du souci en me trompant ! j'avais cliqué sur Save As IDL procedure pour voir la séquence de commandes IDL qui est par défaut sauvée dans xxx_figure.pro et j'ai regardé xxx_oneplot.pro. J'ai trouvé assez louche que dans ce fichier on fasse appel à /usr/work/sur/fvi/OPA/geomag/INTERP2/initorca_reg.pro et ÃŽ joie au bonheur qaund on le supprime du répertoire, le test de base de xxx fonctionne trÚs bien ! Je commence à préparer l'interpolation inverse de l'étape 1 dans cette doc et dans condmag_from_orca.pro. Encore une bonne occasion d'apprendre plein de choses 
 en particulier l'utilisation de fromirr et donc fromreg qu'il faudra utiliser dans condmag_on_orca.pro 22 mars 2007 Hier je n'ai pas réussi à finaliser l'interpolation inverse. On a travaillé avec Seb sur ce sujet ce matin : punition car plantage lors de l'interpolation sans mask. Seb regarde le cas particulier des cellules bizarres d'OPA vers 32 ° Nord. Avec le mask, ça va mieux ! cf. On discute aussi de angle.pro car Frédéric en a une version qui n'est pas la même que celle de SAXO. ++ Il faudra tester les deux options mais attention les paramÚtres ne sont pas les mêmes. tuyau IDL idl> -1 > (out - org) < 1 est équivalent à idl> a=WHERE(((out - org) LE -1) AND ((out - org) GT 1))) en plus rapide. L'interpolation inverse est assez lente. On revient donc sur le problÚmes de l'analyse de performances sous IDL. Pour l'instant Seb a utilisé un simple systime(1) dans qqes routines (cf par exemple dans quadrilateral2square.pro. ++ Il faudrait voir du coté de PROFILER. Tjs dans le cadre de l'interpolation inverse, si il n'y avait pas ces pb de mask (++ mais seront résolus un jour), on aurait pu se contenter d'un fichier de coordonnées plutÃŽt que d'un fichier meshmask (la grille ou le mask++) . ++ à l'occasion récupérer le ichier de coordonnée de DRAKKAR qui ne doit pas changer d'une expÚrience à l'autre. ++J'ai dans l'idée d'intégrer une partie de cette doc à titre de manuel utilisateur. un peu comme ce que j'ai fait pour le retour d'expérience de la création d'un projet sous forge. 15 mai 2007 souci avec xxx,'file', 'procedure',arg1. j'envoie un mail à saxo-dev ie Seb. 1er juin 2007 Seb me suggÚre d'essayer la forme xxx,'file', 'procedure','''arg'''. ça ne fonctionne pas mieux. Je lui donne mon source pour qu'il puisse faire des tests. 4 juin 2007 Seb a compris le souci : il faut ajouter un _extra = ex dans la déclaration de la procédure et pour bien faire il faudrait aussi le rajouter dans l'appel de ncdf_meshread() et remplacer meshlec par meshread: ncdf_meshlec, fullfilename_oce[0], glamboundary = [20, 380], _extra = ex, mais là je ne sais pas si c'est à moi de tout faire ++. Le 29 mai, Frédéric me demandait des nouvelles par mail et j'ai tardé à répondre : au téléphone aujourd'hui je m'avance sur une version à la rentrée et il n'est pas contre le fait que si j'allais plus vite ce serait mieux ! moi aussi !! 5 juin 2007 L'ajout de _extra = ex semble réparé le souci. Je corrige ma doc puisque je n'ai plus besoin que d'une procédure d'initialisation. Je renomme initorca2_bad.pro et je change le nom de la procédure en initocemesh.pro. Je n'utilise pas initorca.pro car il y a déjà un fichier nommé ainsi. AprÚs le commit, je passe sur rhodes. Comme ça fait longtemps que je n'ai pas travaillé sur cette machine, je fais du ménage et je reprends ma doc pou bien décrire le travail sur cette machine. Ceci dit, il serait sans doute maintenant plus pertinent de travailler sur brodie ++. 6 juin 2007 Anne-Marie Tréguier demande des nouvelles de l'utilisation des sorties de DRAKKAR pour entre autres mettre à jour sa biblio. Je lui réponds que je n'ai pas fini, que nous la tiendrons au courant et en substance si elle veut superbib ++ lien pour DRAKKAR il n'y a pas de souci. Retour du travail de map ORCA025 sur rhodes. correction pour mieux diagnostiquer l'absence de DRAKKAR_EXP. J'ai un vrai souci : pas de tmask dans les fichiers meshmask de DRAKKAR. ça ne plaît pas du tout à ndcdf_meshlec. j'ai déposé un ticket (c'est en fait le vrai 1er ticket de l'histoire) sur Geomag -Trac. à voir avec Seb pour le principe (mesh vs mask) + les qqes bizareries de diagnostics SAXO (quand on demande la lecture d'un répetoire ou à voir le source d'un fichier) 7 juin 2007 Seb m'apprend donc qu'il y a un fichier à part contenant tmask et qu'il a développé des outils pour combiner la grille (dans les fichiers *hgr ou *zgr*) et le masque (dans les fichiers ORCA025-experience_drakkar_byte_mask.nc que j'ai trouvé sur gaya. Il faut que j'utilise minimask.pro et non micromask.pro. et que je change ma doc et mes softs 
 Seb ne connaît pas de doc décrivant la différence entre les fichiers *hgr et *zgr*. Il faudrait regarder le code ... ben voyons ! je préfére paramétrer le systÚme pour pouvoir travailler avec les deux et faire des différences. Pour l'instant je code en dur le travail avec les *hgr parce qu'ils sont plus petits. Ce n'est pas mini mais smallmeshmask.pro que je dois utiliser. dans ORCA025. 8 juin 2007 On peut se demander si ça ne voudrait pas mieux de produire un fichier groupé (grille+masque) une fois pour toute en début de procédure plutÃŽt que de faire l'opération à chque fois qu'on a besoin de l'un ou de l'autre soit dans les étapes de production soit dans les éapes de validation. ++ pour l'instant je le code partout - et j'aurais donc ainsi un soft modulaire - plutÃŽt qu'une doc à tiroir - et si les performances sont cata, j'aviserai. Je renomme initocemesh.pro et je change le nom de la procédure en initocemeshmask.pro. Et je change les appels à cetteprocédure. 11 juin 2007 Je demande à Seb de lire le ticket:5 de GEOMAG pour voir comment faire évoluer smallmeshmask.pro. En attendant je change ma doc (changement de nom lors du lien) pour que ça marche. Ben ça marche pas. cf suite dans ticket:5. On commence à voir trÚs nettement les interactions SAXO-GEOMAG et donc les blocages 
 J'apprends des choses sur les espaces disques de l'Idris dans mais pas de TMPDIR sur rhodes ++. Le plus simple serait sans doute de mettre les données sur gaya (car ainsi pas de conséquences du ménage systÚme sur WORKDIR), possibilité d'enchainement du travail d'une session à l'autre (ce qui ne semble pas possible sur TMPDIR puisque cet espace n'existe qu'en batch). La commande cpt (cf. ) ne fonctionne pas sur mon compte.++ Il faut que je créé un ticket SAXO à propos des attribut globaux du fichier produit par smallmeshmask.pro et à propos de la nom prise en compte du répertoire dans le paramÚtre fileout. 12 juin 2007 Il semblerait que le pb ENDEF soit lié au pb de quota. Cela confirme donc la pertinence de mettre les données sur gaya. 13 juin 2007 Cela confirme aussi l'intêret d'isoler les données du code dans le dépÃŽt svn. ++ décrire comment prendre le code, les données ORCA2 ou ORCA025
Formation Quelles sont les grandeurs géophysiques manipulées ? nom (anglais , français ) unité (s), formule magique (bulk), symbole, terminologie IDN , terminologie CF σ sea_water_electrical_conductivity Σ La conductivité est une conductance par unité de longueur, ou autrement dit, la conductance (en Siemens) est ici l'intégrale sur la verticale de la conductivité (en Siemens/m) Seines lectures Travail à effectuer Pour moi Date butoire le tout doit être terminé avant début mai 2006; Frédéric veut présenter qqe chose de nouveau à ++ à confirmer First Swarm International Science Meeting reproduire et comprendre le travail de Frédéric en 2003 pour comprendre voir si ça marche pareil avec SAXO actuel récupérér les sorties de ORCA ÂŒ ° comprendre comment l'équipe DYCOS communique ses informations sur le run producteur (quand, où, quel forçage, quelle physique, combien de niveaux, quelle quantité de données, quelle convention d'écriture des sorties, etc). adataption de travail de Frédéric à ORCA ÂŒ ° faire tourner la nouvelle version mettre en place le projet GEOMAG sous forge en exploitant au maximun ce qui a été fait pour SAXO. pour Frédéric validation sortie ORCA ÂŒ ° (ACC volume transport par exemple) validation de mon travail Machines Comme dans tout projet, on s'attachera à faire des outils les plus portables possibles. Il convient cependant de convenir d'une machine de référence et de connâitre certaines contraintes ou limites. Portable de Frédéric Frédéric travaille sur son portable avec une version 6 de pour cause de coup de changement de license hors jeton IPSL. <systemitem class="systemname" moreinfo="none">cerbere.locean-ipsl.upmc.fr</systemitem> machine commune à tous les utilisateurs du LOCEAN mais pas machine de calcul <systemitem class="systemname" moreinfo="none">zeus.locean-ipsl.upmc.fr</systemitem> machine de calcul commune à tous les utilisateurs du LOCEAN <systemitem class="systemname" moreinfo="none">aedon.locean-ipsl.upmc.fr</systemitem> mon poste de travail <systemitem class="systemname" moreinfo="none">forge.ipsl.jussieu.fr</systemitem> machine trac et svn sur laquelle est gérée le projet GEOMAG. Machines de l'IDRIS Les sorties ORCA ÂŒ ° sont disponibles sur le serveur de stockage de l'IDRIS gaya.idris.fr. L'accÚs à ces données est autorisé aux comptes reeexxx. Compte de Frédéric Frédéric n'a plus actuellement (20061201) de compte sur l'IDRIS. On travaillera sur rhodes.idris.fr pour produire les champs intégrés verticalement à partir de ces données car elles sont trop grosses pour être transférées localement (surtout sur le poste de travail de Frédéric). La commande ncdump n'existe pas sur gaya.idris.fr. C'est sans doute normal puisque c'est le serveur de fichiers de l'IDRIS. La ligne de commande set -o posix ne passe pas sur rhodes.idris.fr.
Thierry Goldmann le 23 novembre 2006 Pour moi sh est 'posix compliant' sur rhodes, ce qui expliquerait que l'option ne soit pas disponible. A la fin du man sh on a ceci : The Bourne shell (bsh) has been modified to allow fullpath calls of Bourne shell builtins using the builtin name POSIX links to /sbin/builtin_exec.
Pour mémoire, il faut passer la commande suivante pour connaître son quota : rhodes$ quota_u install svnclient
Outils logiciel, briques, a posteriori, interne fait maison, commerciaux, externe, fédératif localisation, récupération, développement, utilisation, assistance, évolution, documentation traçabilité, portabilité, standardisation, opérabilité, coût de maintenance Outils extérieurs Graphviz Pour cette doc. les dessins des étapes. Version ++sur les machines du LOCEAN et aedon. pb fontes sur mac pour l'instant il faut faire tourner le makefile sur cerbere pour créer des beaux dessins png. Matlab Version 7.1.2 sur les machines du LOCEAN et à l'IDRIS Version 6 sur le . <productname class="trade">IDL</productname> IDL fournit un certain nombre de fonctionnalité d'interpolation. ex. smooth tuyaux dans IDL Progamming Tips IDL est la base de développement de . Tous les utilisateurs des ressources informatiques du LOCEAN ont accÚs à ce logiciel payant grâce aux jetons IPSL. La version utilisée est 6.2 au début du projet. On pourra faire des essais avec le logiciel gdl. Shell scripts On ne va pas définir ici les shell scripts. Juste qqes mots pour dire que : il existe aussi des problÚmes de portabilité en sh il existe une norme POSIX cf +++. il existe une superbe doc décrivant bash dont on peut s'inspirer largement il y a un chapitre sur les problÚmes de portabilité dans les doc des outils de la famille Autoconf/Automake Vérificateur de fichier NetCDF convention CF Avant de manipuler des fichiers à interpoler et aprÚs avoir produit des fichiers contenant des champs interpolés, il peut être de bon ton de vérifier si la convention Climate and Forecasts (CF) est bien respectée. Cet outil n'est pas en ligne sur les machine du LOCEAN mais il pourrait le devenir 
 Pour l'instant cf CF-Convention compliance checker for NetCDF format. <application moreinfo="none">trac</application> wiki ticket milestones gestion d'utilisateurs version 0.9.5 au 20061006 <application moreinfo="none">svn</application> dépot de sources, versionnement serveur disponible sous forge.ipsl.jussieu.fr version 1.2.3 au 20061006 client disponible sur MacOS X en installant svnclient avec fink $ fink install svnclient client disponible sur Mandriva ++ en installant subversion $ urpmi subversion client disponible sur rhodes.idris.fr en ajoutant à son PATH les lignes suivantes $ PATH=${PATH}:/usr/local/pub/svn/svn-1.3.1/bin/ $ export PATH NCO 3.1.9 est sorti le 20070310 cf. NCO Home Page installé sur aedon avec fink. version 3.1.8 installé sur zeus. version 3.1.4 installé sur rhodes. version 2.9.9 (alors que 3.1.9 est sorti le 20070310). <application moreinfo="none">mailman</application> gestionnaire de listes de diffusion ++ pas encore utilisé pour GEOMAG Outils internes <application class="software" moreinfo="none">SAXO</application> SAXO Simplified Access to X Outputs de Sébastien Masson est un ensemble de programme IDL permettant de visualiser et d'explorer des jeux de données grillées y compris sur la grille OPA. On s'intéresse au cours de ce projet GEOMAG à la compatibilité de SAXO nouvelle version et aux adaptations que Frédéric a jugées utile de faire en 2003 (divergence, gardient, etc). Outils spécifiques Héritage Tous les outils de Frédéric sont sous cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/geomag/. La procédure suivie pour les travail avec ORCA2 est décrite dans cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/geomag/README. Nouvelle version Pour l'instant sous cerbere.locean-ipsl.upmc.fr:/usr/home/fplod/incas/geomag/. Il faudra déplacer la partie "intégration verticale" sur rhodes.idris.fr. Visualisation Pour visualiser les champs de cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/geomag/condmag.nc. ++ Données Sorties OPA ORCA 2° Pour mémoire ORCA 2° est sur une grille 182 x 149 x 31. Les données d'entrée (les sorties de ORCA 2°) que Frédéric a utilisé lors de son travail initial sont dans cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/ORCA2/ contient entre autres : ESS_5d_010101_011231_grid_T.nc. La grille et le masque La grille et le masque associés sont dans un seul fichier pour cette résolution. Le fichier que Frédéric a utilisé lors de son travail initial est dans cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/ORCA2/meshmask_bab.nc ORCA ÂŒ ° Les sorties Les données d'entrée (les sorties de ORCA ÂŒ °) sont dans gaya.idris.fr:/u/rech/cli/rcli002/ORCA025/ORCA025-Gexperience_drakkar/. Elles ont été produites dans le cadre du run G22 sur zahir.idris.fr par Jean-Marc Molines (LEGI) : c'est un run climatologique partial step. On s'intéresse principalement aux paramÚtres suivants : T S U V On utilisera aussi les informations de surface pour ++ Pour info ORCA ÂŒ ° est sur une grille 1442 x 1021 x 46. La taille de ces sorties est 210 Go. Il est donc hors de question de copier ces fichiers. On travaillera sur l'IDRIS pour produire les champs intégrés verticalement. La grille et le masque On ne peut pas utiliser les données sans la grille et le masque associés. La grille et le masque associés sont dans deux fichiers pour cette résolution dans les runs de DRAKAR et il y a deux grilles par expérience ORAC025-experience_drakkar_mesh_zgr.nc et ORAC025-experience_drakkar_mesh_hgr.nc. (++ lequel choisir pour GEOMAG++). Le masque est dans un fichier ORCA025-experience_drakkar_byte_mask.nc. Ils sont dans gaya.idris.fr:/u/rech/cli/rcli002/ORCA025/ORCA025-I/. On utilisera dans la suite gaya.idris.fr:/u/rech/cli/rcli002/ORCA025/ORCA025-I/ORCA025-G42_mesh_hgr.nc. Champ magnétique terrestre 1° x 1° cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/geomag/condmag.nc contient entre autres : Br le champ magnétique terrestre B définition 1° x 1° symbole unité convention valeur manquante Conductivité des sédiments 1° x 1° cerbere.locean-ipsl.upmc.fr:/usr/work/sur/fvi/OPA/geomag/condmag.nc contient les conductivités (++ conductances) : cond_sed définition 1° x 1° symbole unité convention cond_oc définition résolution ++ symbole unité convention cond_tot définition résolution ++ symbole unité convention Ce fichier a été produit par Frédéric en 2003 à partir de ++ avec l'application ++/M_lib4/geomag/MOED2D/ORCA_writenetcdf.m écrite en Matlab. est-ce que la résolution est suffisante pour l'étude ÂŒ ° ? Procédure Prérequis Prérequis en données Prérequis en outils Étape 0 Fabrication du fichier condmag.nc cf. Frédéric application Matlab sur des fichiers récupérés à l'extérieur. Validation Visualisation Pour visualiser le champ cond_sed du fichier condmag.nc produit, on peut utiliser la commande IDL/SAXO suivante : $ idl IDL> xxx, 'condmag.nc', XAXISNAME='lo', YAXISNAME='la', format='(i5)' Étape 1 Conductances et champ magnétique sur les points grille ORCA.
étape 1 [geomag_etape1.png]
Le meshmask (++ La grille ou le masque ou les deux ?) est différent pour chaque grille modÚle, penser à pointer vers le bon fichier (idem pour l'étape 3)
Prérequis Avoir un fichier ${GEOMAG_ID}/condmag.nc contenant les conductances et le champ magnétique terrestre avec une résolution de 1° x 1° un fichier meshmask pour chaque grille de modÚle : ${GEOMAG_ID}/meshmask_bab.nc pour ORCA2, ${GEOMAG_ID}/ORCA025-G42_mesh_hgr.nc pour ORCA025 Ne pas avoir de fichier ${GEOMAG_OD}/cond_sed_orcares.nc ni de ${GEOMAG_OD}/Br_orcares.nc. Objectif Cette étape consiste à interpoler sur la grille ORCA (aux points T) les champs B, SIGMAsed, qui ont été créés dans un même fichier NetCDF lors de l'étape 0 (fichier condmag.nc). Actions On se positionne dans le working spaceLe répertoire en question dépend de la commande svn checkout. : Pour fplod sur <systemitem class="systemname" moreinfo="none">zeus</systemitem> $ cd ${HOME}/incas/geomag/geomag_ws/ Pour fplod sur <systemitem class="systemname" moreinfo="none">aedon</systemitem> $ cd /usr/home/fplod/incas/geomag/geomag_ws/ Pour reee522 sur <systemitem class="systemname" moreinfo="none">rhodes.idris.fr</systemitem> $ cd /home/rech/eee/reee522/incas/geomag/geomag_ws/ On définit l'environnement de travail GEOMAG : $ . ./geomag_profile.sh $(pwd) L'environnement SAXO peut être défini ainsi pour travailler avec une version de SAXO compatible avec l'ancienne la plus proche de la version officielle et modifiable pour pouvoir tester des évolutions : $ export IDL_STARTUP=/usr/home/fplod/My_IDL_ws/init.pro Si on veut travailler avec la version officielle de SAXO, on peut configurer son environnement ainsi : $ export IDL_STARTUP=/usr/home/fplod/My_IDL/init.pro On peut généraliser ce mode de fonctionnement si init.pro est dans son ${HOME} : $ export IDL_STARTUP=${HOME}/My_IDL/init.pro On pose les fichiers d'entrée là où il faut : condmag.nc $ ln ${GEOMAG}/condmag.nc ${GEOMAG_ID}/condmag.nc La grille, le masque et les sorties de ORCA2 $ ln ${GEOMAG}/meshmask_bab.nc ${GEOMAG_ID}/meshmask_bab.nc La grille, le masque et les sorties de ORCA025 Ces fichiers n'existent que sur rhodes.idris.fr. ++ comment faire une copie sur une autre machine ie aedon rhodes$ ln /u/rech/cli/rcli002/ORCA025/ORCA025-I/ORCA025-G42_mesh_hgr.nc ${GEOMAG_ID}/ORCA025-G42_.mesh_hgr.nc rhodes$ ln /u/rech/cli/rcli002/ORCA025/ORCA025-I/ORCA025-G42_mesh_zgr.nc ${GEOMAG_ID}/ORCA025-G42_.mesh_zgr.nc rhodes$ ln /u/rech/cli/rcli002/ORCA025/ORCA025-I/ORCA025-G42_byte_mask.nc ${GEOMAG_ID}/ORCA025-G42_.mask.nc On peut aussi faire le ménage des fichiers de sortie produits précédement : Pour ORCA2 $ rm ${GEOMAG_OD}/cond_sed_ORCA2.nc $ rm ${GEOMAG_OD}/Br_ORCA2.nc Pour ORCA025 $ rm ${GEOMAG_OD}/cond_sed_ORCA025.nc $ rm ${GEOMAG_OD}/Br_ORCA025.nc On lance le programme : Pour ORCA2 $ idl IDL> condmag_on_orca, 'ORCA2', 'bilinear', 'T' Aux répertoires prêts, la sortie doit ressembler à : iii : valid orcares parameter = ORCA2 iii : valid method parameter = bilinear iii : valid gridtype parameter = T iii : ${GEOMAG_ID} is /Users/fplod/geomag_d/ iii : ${GEOMAG_OD} is /Users/fplod/geomag_d/ iii : /home/rech/eee/reee522/geomag_d/meshmask_bab.nc opened for read iii : /Users/fplod/geomag_d/condmag.nc opened for read iii : /Users/fplod/geomag_d/condmag.nc reopened for read iii : /Users/fplod/geomag_d/cond_sed_ORCA2.nc created iii : /Users/fplod/geomag_d/Br_ORCA2.nc created Les fichiers ${GEOMAG_OD}/cond_sed_ORCA2.nc et ${GEOMAG_OD}/Br_ORCA2.nc sont créés. Pour ORCA025 $ idl IDL> condmag_on_orca, 'ORCA025', 'bilinear', 'T', DRAKKAR_EXP = 'G42' Aux répertoires prêts, la sortie doit ressembler à : iii : valid orcares parameter = ORCA025 iii : DRAKKAR_EXP keyword set iii : DRAKKAR_EXP = G42 iii : valid DRAKKAR_EXP keyword = G42 iii : valid method parameter = bilinear iii : valid gridtype parameter = T iii : ${GEOMAG_ID} is /Users/fplod/geomag_d/ iii : ${GEOMAG_OD} is /Users/fplod/geomag_d/ iii : /home/rech/eee/reee522/geomag_d/++meshmask_bab.nc opened for read iii : /Users/fplod/geomag_d/condmag.nc opened for read iii : /Users/fplod/geomag_d/condmag.nc reopened for read iii : /Users/fplod/geomag_d/cond_sed_ORCA025.nc created iii : /Users/fplod/geomag_d/Br_ORCA025.nc created Les fichiers ${GEOMAG_OD}/cond_sed_ORCA025.nc et ${GEOMAG_OD}/Br_ORCA025.nc sont créés. Validation Interpolation inverse Calcul IMOMS3 Cette validation n'est pas possible si on a utilisé la méthode d'interpolation IMOMS3
étape 1 inverse [geomag_etape1_inverse.png]
++ faire l'interpolation inverse ie de ORCA2 ou ORCA025 sur grille réguliÚre condmag. Pour ORCA2 $ idl IDL> condmag_from_orca, 'ORCA2', 'bilinear', 'T' Pour ORCA025 $ idl IDL> condmag_from_orca, 'ORCA025', 'bilinear', 'T', DRAKKAR_EXP = 'G42' et comparer ++ +++
Différence avec référence dépÎt svn Cette étape devrait permettre de quaifier les évolutions logicielles. On peut faire aussi la différence entre les sorties produites par la nouvelle version du soft et par l'originale de Frédéric (uniquement pour ORCA2 bien sûr) : $ cd ${GEOMAG}/ $ rm cond_sed_ORCA2_diff.nc $ rm Br_ORCA2_diff.nc $ idl IDL> file1=getenv('GEOMAG') + '/cond_sed_ORCA2.nc' IDL> file2=getenv('GEOMAG_OD') + '/cond_sed_ORCA2.nc' IDL> step1_diff, file1, file2, 'cond_sed_ORCA2_diff.nc' IDL> file1=getenv('GEOMAG') + '/Br_ORCA2.nc' IDL> file2=getenv('GEOMAG_OD') + '/Br_ORCA2.nc' IDL> step1_diff, file1, file2, 'Br_ORCA2_diff.nc' Les fichiers cond_sed_ORCA2_diff.nc et Br_ORCA2_diff.nc sont exploitables comme n'importe quel fichier netCDF. On aurait pu utiliser ncdiff de NCO mais le résultat n'est guÚre exploitable. $ ncdiff ${GEOMAG}/cond_sed_ORCA2.nc ${GEOMAG_OD}/cond_sed_ORCA2.nc ginette.nc Dans ce cas lo et la sont nuls. $ ncdiff cond_sed ${GEOMAG}/cond_sed_ORCA2.nc ${GEOMAG_OD}/cond_sed_ORCA2.nc ginette.nc Dans ce cas lo et la disparaissent.
Visualisation Pour visualiser les fichiers produits lors de cette étape 1 utiliser la commande xxx de IDL/SAXO : ${GEOMAG_OD}/cond_sed_ORCA2.nc $ idl IDL> myfile=getenv('GEOMAG_OD') + 'cond_sed_ORCA2.nc' IDL> xxx, myfile, 'initocemeshmask', '''ORCA2''', format='(i5)' ${GEOMAG_OD}/Br_ORCA2.nc $ idl IDL> myfile=getenv('GEOMAG_OD') + 'Br_ORCA2.nc' IDL> xxx, myfile, 'initocemeshmask', '''ORCA2''', /CONT_NOFILL, format='(E10.2)' ${GEOMAG_OD}/cond_sed_ORCA025.nc $ idl IDL> myfile=getenv('GEOMAG_OD') + 'cond_sed_ORCA025.nc' IDL> xxx, myfile, 'initocemeshmask', '''ORCA025''', DRAKKAR_EXP='G42', format='(I5)' ${GEOMAG_OD}/Br_ORCA025.nc $ idl IDL> myfile=getenv('GEOMAG_OD') + 'Br_ORCA025.nc' IDL> xxx, myfile, 'initocemeshmask', '''ORCA025''', DRAKKAR_EXP='G42', /CONT_NOFILL, format='(E10.2)' ./cond_sed_ORCA2_diff.nc $ idl IDL> xxx, 'cond_sed_ORCA2_diff.nc', 'initocemeshmask', '''ORCA2''', format='(f5.2)' ./Br_ORCA2_diff.nc $ idl IDL> xxx, 'Br_ORCA2_diff.nc', 'initocemeshmask', '''ORCA2''', format='(e15.3)' ./cond_sed_ORCA025_diff.nc $ idl IDL> xxx, 'cond_sed_ORCA025_diff.nc', 'initocemeshmask', '''ORCA025''', DRAKKAR_EXP='G42', format='(f5.2)' ./Br_ORCA025_diff.nc $ idl IDL> xxx, 'Br_ORCA025_diff.nc', 'initocemeshmask', '''ORCA025''', DRAKKAR_EXP='G42', format='(e15.3)'
Étape 2
étape 2 [geomag_etape2.png]
C'est l'étape de calcul des forçages géomagnétiques à partir des sorties ORCA et des fichiers contenant Br et conductance. Le calcul est fait sur la grille modÚle pour que le calcul de divergence soit aussi précis que possible. Ce point est vraiment critique.
Objectif ++MAUVAIS LOOK MATHML sur browser html calcul d'une matrice 3D de conductivité sigma=f(T,S) en fonction de T et S de ORCA2, sur la grille T. Formule assez empirique, en siemens/m que j'ai pondu aprÚs régression: sigma(T,S) = 0.02047780622061 + 0.00273147624197*T + 0.00035133182334*T2 + 0.09139808809909*S + 0.00241425798890*S*T - 0.00023998958774*S22 sigma(T,S)=0.02047780622061 + 0.00273147624197*T + 0.00035133182334*T^2 + 0.0913 9808809909*S + 0.00241425798890*S*T -0.00023998958774*S^2 Calcul du champ 2D de conductance de l'océan par intégration verticale SIGMAoc = ∫ sigma dz définir SIGMA = SIGMAsed + SIGMAoc calculer Bustar = B * ∫ sigma * u SIGMA dz 12 calculer div(Bustar,Bvstar) ---> utilise les routines SAXO (trÚs légÚrement modifiées ici pour certaines d'entre elles (divfred, gradfred) Actions sans nouveau <application moreinfo="none">SAXO</application> Pour l'instant il faut travailler avec la vieille version de SAXO donc il faut débrancher IDL_STARTUP : $ unset IDL_STARTUP Pour éviter de saturer des espaces et aller plus vite, on copie les sorties du run ORCA (ORCA2 ou autre résolution) dans un espace de travail (que l'on retrouve dans ++.pro) Pour copier les sorties de ORCA2 de <filename class="directory" moreinfo="none">/usr/work/sur/fvi/OPA/ORCA2/</filename> sur <filename class="directory" moreinfo="none">/tmp/</filename> de la machine qui va travailler $ cp /usr/work/sur/fvi/OPA/ORCA2/ESS_5d_??0101_??1231_grid_[TUV].nc /tmp/ $ cp /usr/work/sur/fvi/OPA/ORCA2/ESS_5d_??0101_??1231_grid_[TUV].nc.bz2 /tmp/ $ bunzip2 /tmp/ESS_5d_??0101_??1231_grid_[TUV].nc.bz2 Pour copier les sorties de ORCA2 de <filename class="directory" moreinfo="none">/usr/work/sur/fvi/OPA/ORCA2/</filename> sur <systemitem class="systemname" moreinfo="none">rhodes.idris.fr</systemitem>:<filename class="directory" moreinfo="none">${WORKDIR}</filename> cerbere$ mkdir /usr/temp/fplod/pour_rhodes/ cerbere$ cp /usr/work/sur/fvi/OPA/ORCA2/ESS_5d_??0101_??1231_grid_[TUV].nc.bz2 /usr/temp/fplod/pour_rhodes/ cerbere$ bunzip2 /usr/temp/fplod/pour_rhodes/ESS_5d_??0101_??1231_grid_[TUV].nc.bz2 rhodes$ scp fplod@cerbere.locean-ipsl.upmc.fr:"/usr/work/sur/fvi/OPA/ORCA2/ESS_5d_??0101_??1231_grid_[TUV].nc" ${WORKDIR} rhodes$ scp fplod@cerbere.locean-ipsl.upmc.fr:"/usr/temp/fplod/pour_rhodes/ESS_5d_??0101_??1231_grid_[TUV].nc" ${WORKDIR} Pour lancer, aller dans le répertoire ad hoc : pour Frédéric $ cd /usr/work/sur/fvi/OPA/geomag/ pour moi pour l'instant $ cd /usr/home/fplod/incas/geomag/src/FORCAGE/ $ idl IDL> @init2 IDL> .run forcagequimarche IDL> forcagequimarche, '1993', '01' et idem pour les autres années: IDL> forcagequimarche, '1994', '02' IDL> forcagequimarche, '1995', '03' IDL> forcagequimarche, '1996', '04' IDL> forcagequimarche, '1997', '05' IDL> forcagequimarche, '1998', '06' Les fichiers DivBustar_5d_yyyy_grid_T.nc Sigma_5d_yyyy_grid_T.nc T_u_5d_yyyy_grid_T.nc T_v_5d_yyyy_grid_T.nc u_cond_u_5d_yyyy_grid_T.nc v_cond_v_5d_yyyy_grid_T.nc ont été créés dans /usr/work/sur/fvi/OPA/ORCA2/++ f(machine,utilisateur). Validation Calcul Visualisation Conclusion Si vous avez copié des fichiers dans un espace temporaire, pensez à les effacer Ménage des sorties de ORCA2 sur <filename class="directory" moreinfo="none">/tmp/</filename> de la machine qui a travaillé $ rm /tmp/ESS_5d_??0101_??1231_grid_[TUV].nc
Étape 3 On fait une interpolation inverse de la grille modÚle vers la grille géographique des fichiers crées à l'étape précédente année par année. Objectif interpolation inverse de la grille modÚle vers la grille géographique création de fichiers complémentaires error_wT et ++poids Actions sans nouveau <application moreinfo="none">SAXO</application> Pour l'instant il faut travailler avec la vieille version de SAXO donc il faut débrancher IDL_STARTUP : $ unset IDL_STARTUP Pour lancer, aller dans le répertoire ah hoc : pour Frédéric $ cd /usr/work/sur/fvi/OPA/geomag/INTERP2/ pour moi pour l'instant $ cd /usr/home/fplod/incas/geomag/src/INTERP2/ Il faut penser à : éditer naminterp2.pro et verifier le nom de la variable que l'on veut interpoler: p. ex name_input_field='Sigma' 2- editer init_path2.pro changer les datafile (sortie de l'etape 2), outputfile et le cas échéant input_dir, output_dir inputmesh weightfile $ idl IDL> @init IDL> interp2 et idem pour les autres variables et les autres années. Pour automatiser un peu ces modifications de variables et d'années, j'ai créé des *.proto que le shell script interp2_param.sh transforme en autant de fichiers *.pro que nécessaire et interp2_all.pro qui regroupent tous les interp2_variable_yyyy.pro Pour lancer ce shell : $ ./interp2_param.sh Et pour exécuter les transformations : $ idl IDL> @init puis pour chaque variable et chaque année IDL> interp2_variable_yyyy Plus simplement on peut tout lancer ainsi : $ idl IDL> @init IDL> interp2_all IDL> exit Validation Calcul Visualisation Conclusion
Documentation Documentation IDL Pour faire une documentation des sources IDL développés spécifiquement pour ce projet le plus simple semble d'utiliser idldoc disponible avec SAXO. ++ variable d'environnement pour pointer sur /usr/home/fplod/incas/geomag/ IDL> idldoc,$ ROOT="/usr/home/fplod/incas/geomag/src/",$ ,$ OUTPUT="/usr/home/fplod/incas/geomag/help/online_help/",$ ,$ TITLE="geomag",$ LOG_FILE="idldoc_geomag.log" ++ examiner le log ++ quels sont les fichiers crées (html et adp) où sont les fichiers créés ++ pas beau pour l'instant invalid comment syntax in tous !! Pour accÚder à cet aide en ligne, il suffit de lancer la commande suivante : ++PATH IDL> online_help, book='/usr/home/fplod/incas/geomag/help/online_help/idldoc-lib.adp', /FULL_PATH Documentation GEOMAG ++ manuel opérateur. ilfaut le produire à partir de ce document de travail Travail réalisé Travail sur <systemitem class="systemname" moreinfo="none">forge.ipsl.jussieu.fr</systemitem> Création du projet Olivier Thauvin a crée le projet GEOMAG avec moi comme contact et administrateur sous le compte pinsard Mon compte pinsard@forge.ipsl.jussieu.fr a été créé à l'occasion de la création du projet SAXO.. Je modifie le mot de passe du compe geomag@forge.ipsl.jussieu.fr associé à ce projet aprÚs avoir sélectionné le projet geomag dans la colonne de gauche de la page . mot de passe <systemitem class="username" moreinfo="none">geomag@forge.ipsl.jussieu.fr</systemitem> Le changement de mot de passe du compe geomag@forge.ipsl.jussieu.fr associé à ce projet aprÚs avoir sélectionné le projet geomag dans la colonne de gauche de la page doit être accompagné par la modification dans /ipsl/forge/projet/geomag/trac/conf/trac.ini de la ligne de connection à la base de données database = postgres://projet:motdepasse@forge.ipsl.jussieu.fr/projet_trac sous peine de problÚme d'accÚs à la page . Toujours dans cette page de gestion de projet, je complÚte cette création en remplissant les champs Url: et Description. On constate que la description apparaît dans la page d'accueil . Création et association d'utilisateurs Olivier Thauvin a créé des comptes pour chaque administrateur de projet. Les administrateurs peuvent à leur tour créer des comptes pour les les personnes qu'ils souhaitent via le bouton créer un utilisateur en se connectant à . En tant qu'administrateur du projet GEOMAG, je crée ainsi le compte de Frédéric fvi. Les administrateurs peuvent associer des utilisateurs à leur projet via le bouton projet dans la colonne de gauche de la page puis en choisissant un utilisateur dans la partie Ajouter un utilisateur. J'associe ainsi fvi au projet geomag. Travail sur <application moreinfo="none">trac</application> Configuration de <application moreinfo="none">trac</application> Lors de la création du projet un fichier /ipsl/forge/projets/projet/trac/conf/trac.ini donnant au projet une configuration par défaut choisie par Olivier est créé. On doit modifier les lignes suivantes : link = http://trac.edgewall.com/ descr = My example project en mettant la même chose que dans l'url et la description du projet sous (cf. ). On pourra aussi associer un logo, une mailing list, des notification sur les tickets, etc, mais ++ pas d'urgence Copie avant modification Il peut être prudent de copier la version courante du fichier de configuration avant de faire une modification. On peut procéder ainsi $ cd trac/conf/ $ fileorig=trac.ini $ cp ${fileorig} ${fileorig}_$(date -u +"%Y%m%d%H%M%S") Voir l'avertissement concernant le changement de . Autorisations Des permissions sont accordées par défaut lors de la création du projet. Il faut les modifier pour éviter en particuliers des spams sur les tickets. On commence par créer un groupe developper en tapant la commande suivante pour chaque contributeur (utilisateur déclaré dans ) au projet : geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission add utilisateur developper Puis on supprime les accÚs aux actions sensibles aux inconnus et on n'autorise ces mêmes actions qu'aux contributeurs : geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission remove anonymous WIKI_CREATE geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission remove authenticated WIKI_CREATE geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission remove anonymous WIKI_MODIFY geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission remove authenticated WIKI_MODIFY geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission remove anonymous TICKET_MODIFY geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission remove anonymous TICKET_CREATE geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission add developper WIKI_CREATE geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission add developper WIKI_MODIFY geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission add developper WIKI_DELETE geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission add authenticated TICKET_CREATE geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission add authenticated TICKET_MODIFY geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission add developper MILESTONE_ADMIN Cette organisation facilite l'ajout d'un utilisateur. Il n'y a que son adhésion au groupe developper à faire. On peut vérifier que la sortie de la commande suivante : geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac permission list donne bien User Action ------------------------------ anonymous BROWSER_VIEW anonymous CHANGESET_VIEW anonymous FILE_VIEW anonymous LOG_VIEW anonymous MILESTONE_VIEW anonymous REPORT_SQL_VIEW anonymous REPORT_VIEW anonymous ROADMAP_VIEW anonymous SEARCH_VIEW anonymous TICKET_VIEW anonymous TIMELINE_VIEW anonymous WIKI_VIEW authenticated TICKET_CREATE authenticated TICKET_MODIFY developer MILESTONE_ADMIN developer WIKI_CREATE developer WIKI_DELETE developer WIKI_MODIFY utilisateur developer Wiki La page WikiStart à la création du projet renseigne sur trac. On doit remplacer cette page avec les informations concernant le projet. Ce remplacement peut se faire dans un premier temps par la modification clicodromique en étant loggué sous avec le menu loggin. Roadmap La roadmap est l'ensemble des étapes d'un projet. Quatre étapes nommées milestonex sont définies à la création du projet. Il faut définir et renseigner les étapes du projet geomag soit par clicodrome sur la page soit avec la commande trac-admin. Ordre des étapes On ne maîtrise pas l'ordre des étapes avec trac-admin path milestone. Elles apparaissent dans l'ordre alphanumérique. geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac milestone rename milestone1 "GEOMAG sur trac" geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac milestone rename milestone2 "sources fvi sous svn" geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac milestone rename milestone3 "code indépendant utilisateur et machine" geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac milestone rename milestone4 "adaptation 1/4 de degré" On peut ajouter des étapes tout de suite : geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac milestone add "Belles documentations" geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac milestone add "utilisation de la version de référence de SAXO" On pourra vérifier l'ensemble de étapes du projet avec la commande suivante : geomag@forge$ trac-admin /ipsl/forge/projets/geomag/trac milestone list Description d'une milestone La création des milestones via le clicodrome sur la page permet d'ajouter une description ce que je ne sais pas faire avec trac-admin. Travail sur <application moreinfo="none">svn</application> Organisation de l'arborescence de base de <application moreinfo="none">svn</application> Le dépÃŽt svn à la création est vide. Il faut créer les répertoires conventionnels trunk, branches et tags : fplod@aedon$ cd /tmp/ fplod@aedon$ mkdir /tmp/pour_geomag_svn/ fplod@aedon$ cd /tmp/pour_geomag_svn/ fplod@aedon$ svn svn+ssh://pinsard@forge.ipsl.jussieu.fr/ipsl/forge/projets/geomag/svn/ geomag_ws Checked out revision 0. fplod@aedon$ cd /tmp/pour_geomag_svn/geomag_ws/ fplod@aedon$ svn trunk A trunk fplod@aedon$ svn branches A branches fplod@aedon$ svn tags A tags fplod@aedon$ svn \ "create tags, branches and trunk directories" Adding branches Adding tags Adding trunk Committed revision 1. On peut vouloir choisir de continuer à travailler dans ce working space mais comme il est dans /tmp/, je préfÚre le détruire : fplod@aedon$ cd fplod@aedon$ rm /tmp/pour_geomag_svn/ Importation du travail original de Frédéric Pour mémoire le travail de Frédéric sur ORCA 2 ° est sous cerbere:/usr/work/sur/fvi/OPA/geomag/. Cette arborescence n'est pas entiÚrement à importer dans le dépot svn car elle contient un cadavre CVS de SAXO et de INTERP2. Elle contient aussi des fichiers qui n'ont pas grand chose à faire là comme un répertoire vide interp, toto, .Xdefaults, un fichier Br_ORCA2.nc.bz2 version compressée de Br_ORCA2.nc, etc. Je passe donc par une arborescence intermédiaire : fplod@aedon$ mkdir /tmp/pour_geomag_svn/src/ fplod@aedon$ cp /usr/work/sur/fvi/OPA/geomag/ /tmp/pour_geomag_svn/src/ fplod@aedon$ find /tmp/pour_geomag_svn/src/ CVS -exec rm -r {} \; fplod@aedon$ cd /tmp/pour_geomag_svn/src/ fplod@aedon$ rm interp toto .Xdefaults README~ Br_ORCA2.nc.bz2 Je passe donc par une arborescence intermédiaire : fplod@aedon$ svn import \ "initial import from /usr/work/fvi/OPA/geomag/" \ /tmp/pour_geomag_svn/src/ \ svn+ssh://pinsard@forge.ipsl.jussieu.fr/ipsl/forge/projets/geomag/svn/trunk L'importation est terminée. On peut vérifier si on a bien tout dans le dépÃŽt svn : fplod@aedon$ svn list http://forge.ipsl.jussieu.fr/geomag/svn/trunk On peut donc détruire le répertoire intermédiaire puisque ce n'est pas un working space : fplod@aedon$ cd fplod@aedon$ rm /tmp/pour_geomag_svn/src/ Organisation pour contribution Le dépÃŽt svn étant maintenant en place, on peut le récupérer sur son poste de travail sous forme de working space en tant que contributeur. Je choisis de travailler sous mon ${HOME} du LOCEAN pour que la sauvagarde CCR prenne en compte mon working space : fplod@aedon$ cd /usr/home/fplod/incas/geomag/ fplod@aedon$ svn svn+ssh://pinsard@forge.ipsl.jussieu.fr/ipsl/forge/projets/geomag/svn/trunk/ geomag_ws Le travail de mise à jour peut commencer 
 Travail non réalisé Travail non réalisé sur <systemitem class="systemname" moreinfo="none">forge.ipsl.jussieu.fr</systemitem> Liste de diffusion Pour l'instant nous n'avons pas juger utile de créer une ou plusieurs listes de diffusion associées à ce projet. En conséquence, il n'y a pas de configuration spécifique de svn pour recevoir des mails aprÚs un commit ni de configuration spécifique de trac pour recevoir des mails aprÚs la création ou la modification d'un ticket. Description des milestones Pour l'instant on se contente du titre pour donner une idée du pb mais on pourrait être plus précis en ajoutant une description (pourquoi, comment, priorité, etc.) Advanced Bash-Scripting Guide MendelCooper 15 december 2006 version HTML version PDF Simulations of magnetic fields generated by Antartic Circumpolar Current at satellite altitude : Can geomagnetic measurements bu used to monitor the flow? Geophysical Research Letters 31 L10306 10.1029/2004GL019804 Frédéric Vivier Ernst Maier-Reimer Robert H. Taylor 2004 Recent progress in modelling the global ocean sea-ice circulation at eddy permitting resolution Bernard Barnier A. Beckmann A. Biastoch C. Böning J. Dengg C. Derval E. Durand S. Gulev C. Le Provost Gurvan Madec Jean-Marc Molines J. Orr Thierry Penduff A. Renner E. Remy Sébastien Theetten V. Thierry Anne-Marie Treguier 2005 Étude de variabilité des fronts et du transport total de l'ACC dans un modÚle global au ÂŒ de degré GuillaumeDencausse juin 2005 fourni par Anne-Marie Tréguier ACC Antartic Circumpolar Current barotrope cf. Glossaire de Météo-France CF convention de fichier NetCDF généralisation et extention de la convention COARDS successeur de la convention GDT 1.3 CF Standard name table CF-metadata -- Discussion of CF NetCDF metadata conventions. pas grand chose pour décrire les champs magnétiques dans CF Standard name table DRAKKAR Multiscale Ocean Modelling Project MEOM - DRAKKAR Main IDRIS Institut du Développement et des Ressources en Informatique Scientifique OGCM Ocean General Circulation Model OPA l'un de modÚles OGCM en z Alphabet grec juste histoire de savoir prononcer tous les symboles de l' alphabet grec et de connaître le codage isogrk3. même genre pour les symboles comme par exemple tiret (hypen) doit être écrit &hypen; .
}}}