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.