Installation
L'installation est ici décrite pour un système de type Unix. Vous avez besoin d'un compilateur de Fortran 95, d'un client SVN et de l'interpréteur Perl, plus éventuellement les éléments nécessaires à l'installation de NetCDF.
Il existe un script capable d'enchaîner l'installation de NetCDF, IOIPSL (la bibliothèque gérant les entrées-sorties de LMDZ) et LMDZ couplé avec Orchidée (un modèle de sol), et de lancer une simulation de test. Ce script peut fonctionner sur un PC sous Linux disposant du compilateur GNU Fortran. Dans la suite de cette documentation, nous expliquons une autre manière d'installer LMDZ, dans laquelle vous prenez le contrôle des différentes étapes.
LMDZ utilise les bibliothèques NetCDF et IOIPSL. Installez d'abord NetCDF, puis IOIPSL, avec le compilateur de Fortran qui sera utilisé pour LMDZ.
Placez-vous où vous voulez installer les fichiers sources du programme LMDZ. Vous pouvez télécharger la version validée scientifiquement (pour le cinquième rapport du GIEC) :
svn checkout http://svn.lmd.jussieu.fr/LMDZ/LMDZ4/branches/LMDZ4_AR5 LMDZ
ou la version validée informatiquement :
svn checkout http://svn.lmd.jussieu.fr/LMDZ/LMDZ5/branches/testing LMDZ
ou la version en cours de développement :
svn checkout http://svn.lmd.jussieu.fr/LMDZ/LMDZ5/trunk LMDZ
(Nous décrivons dans la suite la version testing.) Modifiez éventuellement dans le répertoire arch
les fichiers arch-
compiler.fcm
et arch-
compiler.path
pour le compilateur choisi (ou créez de nouveaux fichiers en prenant modèle sur ceux disponibles). En particulier, vous pouvez modifier le chemin vers NetCDF et IOIPSL dans arch-
compiler.path
. Si IOIPSL a été compilé avec des options contrôlant la précision des types numériques, ces options doivent être reprises à la ligne %FFLAGS
dans arch-
compiler.fcm
.
Modifiez éventuellement la définition de la variable LIBOGCM
dans makelmdz_fcm
. Les archives produites par la compilation seront placées dans le répertoire indiqué. Modifiez éventuellement la ligne :
dir::bin %ROOT_PATH/bin
dans bld.cfg
. Cette ligne indique où seront placés les exécutables. %ROOT_PATH
représente le répertoire contenant makelmdz_fcm
. On peut aussi choisir par exemple :
dir::bin %LIBO
Alors les exécutables seront placés dans le répertoire désigné par la variable LIBOGCM
, définie dans makelmdz_fcm
.
Exécutez makelmdz_fcm
en utilisant l'option -arch
pour spécifier le compilateur, tel qu'il apparaît dans les noms des fichiers arch-
compiler.fcm
et arch-
compiler.path
. Pour voir les autres options de makelmdz_fcm
:
makelmdz_fcm -h
Le texte affiché donne aussi la résolution spatiale par défaut. Mais contrairement à ce qui est indiqué, si vous voulez changer la résolution, vous devez spécifier trois dimensions. Cf. page sur le choix de la résolution spatiale si la résolution par défaut ne vous convient pas. Deux exécutables sont en général nécessaires : ce0l
(abréviation pour "création état 0 limites") et gcm
. On les obtient en exécutant makelmdz_fcm
deux fois, avec le nom d'un exécutable en argument. Par exemple :
makelmdz_fcm -arch X64_ADA -parallel mpi ce0l makelmdz_fcm -arch X64_ADA -parallel mpi gcm
Cf. problèmes connus.
Il existe une configuration de LMDZ dite "sans physique, avec dynamique uniquement", c'est-à-dire sans paramétrisations physiques et sans transfert de rayonnement. Si vous souhaitez utiliser cette configuration, vous pouvez compiler LMDZ avec l'option -p nophys
de makelmdz_fcm
. La compilation est alors beaucoup plus rapide. En outre, dans cette configuration, vous n'aurez pas besoin de l'exécutable ce0l
. Par exemple :
makelmdz_fcm -arch X64_ADA -p nophys -parallel mpi gcm
Pour utiliser la configuration à une dimension (verticale) de LMDZ, indiquez seulement le nombre de niveaux verticaux dans l'option -d
de makelmdz_fcm
et créez l'exécutable lmdz1d
. Par exemple, pour 79 niveaux verticaux, avec le nouveau code de rayonnement RRTM et les options de débogage :
makelmdz_fcm -arch X64_ADA -debug -d 79 -rrtm true lmdz1d
Il existe aussi un script combinant la compilation et l'exécution des différents cas à une dimension : le script run.sh dans le fichier 1Dyyyymmdd.tar.gz
à l'adresse http://www.lmd.jussieu.fr/~lmdz/Distrib. Cf. arborescence associée à ce script.