Index: /BOL/script_install/Install_PC_Ubuntu22_Howto
===================================================================
--- /BOL/script_install/Install_PC_Ubuntu22_Howto	(revision 4405)
+++ /BOL/script_install/Install_PC_Ubuntu22_Howto	(revision 4405)
@@ -0,0 +1,58 @@
+Récapitulatif de l'installation d'un PC pour pouvoir travailler confortablement
+avec LMDZ.
+
+Installation ubuntu 22, Howto
+=============================
+récupérer une image iso
+puis exécuter usb-creator-gtk pour créer une clé live usb
+
+
+Installation des paquets pour LMDZ
+==================================
+lancer le script
+http://lmdz.lmd.jussieu.fr/pub/env/install_ubuntu22_packages.sh
+qui va installer tous les pacquets nécessaires et aussi pas mal de
+bureautique et paquets graphiques.
+Seule subtilité : l'installation d'acroread, non distribuée en standard.
+
+
+Installation d'un espace de travail en matrice
+==============================================
+(optionnel)
+Pour cela, il faut  commencer par une désinstallation/réinstallation
+des versions firefox (snap/apt).
+Cette dernière étape est nécessaire pour activer une matrice de bureaux
+sous gnome. C'est un peu subtile et optionnel.
+script :
+http://lmdz.lmd.jussieu.fr/pub/env/install_workspace_matrix.sh
+
+
+Installation conda/ferret
+=========================
+Installation de miniconda et de ferret par miniconda.
+A cause de problèmes sur certains PCs, il faut activer un pyferret de 202003.
+En plus, avec le conda récent qui utilise par défaut phython3.9,
+il faut lui préciser que c'est python=3.7 qu'il faut utiliser.
+Le script inclus l'installation de basemap, qu'Etienne utilise pour les
+mini projets LMDZ du cours de M2 de modélisation.
+script :
+http://lmdz.lmd.jussieu.fr/pub/env/install_conda_ferret.sh
+
+
+LMDZ
+====
+testé avec succès la version 20221028.trunk
+* une installation install_lmdz.sh séquentielle avec -SCM
+* une installation parallèle en récupérant directement
+   http://lmdz.lmd.jussieu.fr/pub/Training/tutorial.tar
+ sur ~/
+Un seul souci via tutorial :
+dans ecrad lié à la version récente de gfortran sur la ubuntu22.
+la ligne 
+random_numbers_mix.F90:  INTEGER(KIND=JPIM), PARAMETER :: IVAR=Z"3FFFFFFF"
+ne compile pas.
+Corriger d'ici la formation
+
+à vous,
+
+Frédéric
Index: L/script_install/LISMOI
===================================================================
--- /BOL/script_install/LISMOI	(revision 4404)
+++ 	(revision )
@@ -1,1 +1,0 @@
-link LISMOI.testing
Index: L/script_install/LISMOI.testing
===================================================================
--- /BOL/script_install/LISMOI.testing	(revision 4404)
+++ 	(revision )
@@ -1,156 +1,0 @@
-Ce répertoire contient :
-=========================
-
-Un script d'installation de LMDZ pour plateformes Linux G95.
-Des versions successives du modèle LMDZ sous forme de fichiers tar.
-
-Utilisation :
-> wget http://www.lmd.jussieu.fr/~lmdz/DistribG95/install.sh
-> chmod +x install.sh
-
-Editer install.sh pour modifier eventuellement le chemin sur lequel vous
-voulez  installer le modele (par defaut MODEL=~/LMDZ4V4) et la version du 
-modele (version=...).
-
-> ./install.sh
-
-
-Les versions disponibles :
-==========================
-
-Les versions disponibles.
-Elles correspondent à des modifications un peu importantes.
-
-Par exemple modipsl.20080612.v4.tar.gz correspond à la version V4 du
-2008/06/12.
-
-
-
-A PARTIR DE FEVRIER 2009, DEUX BRANCHES SONT DISPONIBLES :
-==========================================================
-
-une branche .dev. de développement
-une branche .trunk. de production.
-
-2010/06/08: Nouveaux schema de nuages d'Arnaud Jam
-
-2010/04/28 : Nouveaux thermiques corriges et utilisables en 3D
-             correspondant aux articles Rio et al., 2010
-
-2010/03/22 : thermique optimises, convection corrigee, inclusion d'un
-             offset sur Alp en option
-
-2010/02/19 : apres un petit manque de documentation ...
-             Nouvelle version des thermiques en option.
-
-2009/06/24 : Nouvelle version de top_bound + corrections //
-             Version non convergente sequentiel / OpenMP. Depuis quand ?
-
-2009/06/18 : Pas mal de corrections un peu partout
-             Nettoyage de l'activation de IOIPSL par clefs CPP
-
-2009/06/11 : Corrections dans phys_output_mod
-             CFL en diag pour l'advection
-             Controle de la distribution verticale de la dissip en 39 niv
-
-2009/06/08 : Nouvelle version du guidage
-             Correction bug sur le filtre
-             Nouveau controle des fichiers hist par les .def (pour les regions
-                   notamment)
-             parametres de controle des drag
-             parametre de controle pour rugoros
-
-2009/05/29 : version compatible pgf90 + correction bug guidage parallèle
-
-2009/05/28 : Nouvelle grille verticale dans le cas ok_strato=y llm=19
-
-2009/05/20 : optimisation clouds_gno et add_phys_tend
-
-2009/05/15 : 
-
-2009/05/05 : inclusion de la lecture de l'ozone et de nouvelles routines
-             d'encapsulage de netcdf dans bibio
-
-2009/05/04 : version intermédiaire
-
-2009/04/09 trunk : Premiere version trunk
-------------------
-
-2009/04/09 : inclusion de q2m et T2m dans l'interface d'orchidee
-             bascule sur la version trunk
-
-2009/04/08 : portage vargas + recupération des modifs "V3_patch"
-
-2009/04/07 : version de transition (converge avec 2009/03/11)
-
-2009/03/11 : correction d'un gros byg sur le guidage
-
-2009/03/04 : gestion dynamique des dimensions des champs de traceurs.
-
-2009/03/03 : reprise des versions
-             possibilité de filtre par FFT
-             possibilité de controle des noms et flags de variables dans les
-                fichiers de sorties a partir des .def
-
-
-2008/11/13 : Modification de la routine bidon
-             ORCHIDEE/src_sechiba/init_intersurf.f90 pour compilation idris.
-
-2008/11/06 : Bug fix (en particulier cv3_routines), sorties grads, guidage
-
-2008/10/28 : Nouvelles options pour le schéma du thermique.
-             Quelques corrections liées au parallélisme.
-
-2008/10/21 : bugfix pour tourner avec INCA et Tiedtke + changement
-             de version de IOIPSL (correction d'un bug et utilisation d'une
-             version plus récente).
-
-2008/10/09 : modifications MPI/OpenMP, routines pour "cacher" le côté parallèle
-             notamment pour l'écriture et la lecture des start.
-
-2008/09/25 : Préparation au nouveau rayonnement (Marie-Pierre Lefebvre)
-
-2008/09/10 : nouvelle interface surfaces (Josefine Ghattas)
-
-2008/09/08 : mises à jour des versions MPI/OPENMP (Yann Meurdessoif)
-             A nécessité l'introduction d'une routine bidon Init_intersuf
-             dans orchidee_beton, pendant d'une nouvelle routine de orchidee9...
-
-2008/06/25 : nouvelle physique tournant avec les options de debug (nan, n'co)
-             wake vectorisees
-             bornes (max) sur ALE et ALP
-
-2008/03/12 : nouvelle version de modipsl compatible avec brodie.
-             nouvelle version de LMDZ avec des debug sur yamada4 et
-             thermcell_main
-
-
-
-Les versions successives de modipsl :
-=====================================
-le "N" dans modipsl.vN.tar.gz
-correspond à des modifications de modipsl, ioipsl ou orchidee
-Les modifications de modipsl.200.. correspondent à des versions successives 
-de LMDZ4.
-La version 3 correspond à l'ajout d'une routine bidon (Init_interfsurf) dans 
-ORCHIDEE/src_sechiba et la version 4 au fait de déclarer comme module cette
-routine pour la compatibilité avec le makefile d'orchidee
-
-version 5, modification dans ORCHIDEE/src_sechiba/intersurf.f90 pour pouvoir
-tourner avec ou sans q2m et T2m dans l'interface
-
-
-Tableau des correspondances avec les "releases" SVN
-===================================================
-
-
-install version        		SVN     Bench   Conv.   1+1=2   Init
-                                run     Nnum.
-                                        /prev.
-
-20121009.testing		1664	OK	- 	-	noc
-20121009.testing		1665	OK	OK 	OK	OK
-20121016.testing		1669	OK	OK 	OK	OK
-20121016.testing		1669	OK	OK 	OK	OK
-20130111.testing		1707	OK	OK 	OK	OK
-
Index: L/script_install/LISMOI.trunk
===================================================================
--- /BOL/script_install/LISMOI.trunk	(revision 4404)
+++ 	(revision )
@@ -1,297 +1,0 @@
-Ce répertoire contient :
-=========================
-
-Un script d'installation de LMDZ pour plateformes Linux G95.
-Des versions successives du modèle LMDZ sous forme de fichiers tar.
-
-Utilisation :
-> wget http://www.lmd.jussieu.fr/~lmdz/DistribG95/install.sh
-> chmod +x install.sh
-
-Editer install.sh pour modifier eventuellement le chemin sur lequel vous
-voulez  installer le modele (par defaut MODEL=~/LMDZ4V4) et la version du 
-modele (version=...).
-
-> ./install.sh
-
-
-Les versions disponibles :
-==========================
-
-Les versions disponibles.
-Elles correspondent à des modifications un peu importantes.
-
-Par exemple modipsl.20080612.v4.tar.gz correspond à la version V4 du
-2008/06/12.
-
-
-
-A PARTIR DE FEVRIER 2009, DEUX BRANCHES SONT DISPONIBLES :
-==========================================================
-
-une branche .dev. de développement
-une branche .trunk. de production.
-
-2010/06/08: Nouveaux schema de nuages d'Arnaud Jam
-
-2010/04/28 : Nouveaux thermiques corriges et utilisables en 3D
-             correspondant aux articles Rio et al., 2010
-
-2010/03/22 : thermique optimises, convection corrigee, inclusion d'un
-             offset sur Alp en option
-
-2010/02/19 : apres un petit manque de documentation ...
-             Nouvelle version des thermiques en option.
-
-2009/06/24 : Nouvelle version de top_bound + corrections //
-             Version non convergente sequentiel / OpenMP. Depuis quand ?
-
-2009/06/18 : Pas mal de corrections un peu partout
-             Nettoyage de l'activation de IOIPSL par clefs CPP
-
-2009/06/11 : Corrections dans phys_output_mod
-             CFL en diag pour l'advection
-             Controle de la distribution verticale de la dissip en 39 niv
-
-2009/06/08 : Nouvelle version du guidage
-             Correction bug sur le filtre
-             Nouveau controle des fichiers hist par les .def (pour les regions
-                   notamment)
-             parametres de controle des drag
-             parametre de controle pour rugoros
-
-2009/05/29 : version compatible pgf90 + correction bug guidage parallèle
-
-2009/05/28 : Nouvelle grille verticale dans le cas ok_strato=y llm=19
-
-2009/05/20 : optimisation clouds_gno et add_phys_tend
-
-2009/05/15 : 
-
-2009/05/05 : inclusion de la lecture de l'ozone et de nouvelles routines
-             d'encapsulage de netcdf dans bibio
-
-2009/05/04 : version intermédiaire
-
-2009/04/09 trunk : Premiere version trunk
-------------------
-
-2009/04/09 : inclusion de q2m et T2m dans l'interface d'orchidee
-             bascule sur la version trunk
-
-2009/04/08 : portage vargas + recupération des modifs "V3_patch"
-
-2009/04/07 : version de transition (converge avec 2009/03/11)
-
-2009/03/11 : correction d'un gros byg sur le guidage
-
-2009/03/04 : gestion dynamique des dimensions des champs de traceurs.
-
-2009/03/03 : reprise des versions
-             possibilité de filtre par FFT
-             possibilité de controle des noms et flags de variables dans les
-                fichiers de sorties a partir des .def
-
-
-2008/11/13 : Modification de la routine bidon
-             ORCHIDEE/src_sechiba/init_intersurf.f90 pour compilation idris.
-
-2008/11/06 : Bug fix (en particulier cv3_routines), sorties grads, guidage
-
-2008/10/28 : Nouvelles options pour le schéma du thermique.
-             Quelques corrections liées au parallélisme.
-
-2008/10/21 : bugfix pour tourner avec INCA et Tiedtke + changement
-             de version de IOIPSL (correction d'un bug et utilisation d'une
-             version plus récente).
-
-2008/10/09 : modifications MPI/OpenMP, routines pour "cacher" le côté parallèle
-             notamment pour l'écriture et la lecture des start.
-
-2008/09/25 : Préparation au nouveau rayonnement (Marie-Pierre Lefebvre)
-
-2008/09/10 : nouvelle interface surfaces (Josefine Ghattas)
-
-2008/09/08 : mises à jour des versions MPI/OPENMP (Yann Meurdessoif)
-             A nécessité l'introduction d'une routine bidon Init_intersuf
-             dans orchidee_beton, pendant d'une nouvelle routine de orchidee9...
-
-2008/06/25 : nouvelle physique tournant avec les options de debug (nan, n'co)
-             wake vectorisees
-             bornes (max) sur ALE et ALP
-
-2008/03/12 : nouvelle version de modipsl compatible avec brodie.
-             nouvelle version de LMDZ avec des debug sur yamada4 et
-             thermcell_main
-
-
-
-Les versions successives de modipsl :
-=====================================
-le "N" dans modipsl.vN.tar.gz
-correspond à des modifications de modipsl, ioipsl ou orchidee
-Les modifications de modipsl.200.. correspondent à des versions successives 
-de LMDZ4.
-La version 3 correspond à l'ajout d'une routine bidon (Init_interfsurf) dans 
-ORCHIDEE/src_sechiba et la version 4 au fait de déclarer comme module cette
-routine pour la compatibilité avec le makefile d'orchidee
-
-version 5, modification dans ORCHIDEE/src_sechiba/intersurf.f90 pour pouvoir
-tourner avec ou sans q2m et T2m dans l'interface
-
-
-Tableau des correspondances avec les "releases" SVN
-===================================================
-
-20090623.dev -> Revision SVN 1190
-20090624.dev -> Revision SVN 1191
-20090627.dev -> Revision SVN 1196
-20090707.dev -> Revision SVN 1204
-20090707.dev -> Revision SVN 1205
-20090709.dev -> Revision SVN 1207
-20090718.dev -> Revision SVN 1211
-20090727.dev -> Revision SVN 1215
-20090824.dev -> Revision SVN 1229
-20090828.dev -> Revision SVN 1234
-20090909.dev -> Revision SVN 1242
-20090909.dev -> Revision SVN 1242
-20090917.dev -> Revision SVN 1244
-20090929.dev -> Revision SVN 1247
-20091021.dev -> Revision SVN 1249
-20091023.dev -> Revision SVN 1249
-20091029.dev -> Revision SVN 1250
-20091030.dev -> Revision SVN 1254
-20091102.dev -> Revision SVN 1255
-20091105.dev -> Revision SVN 1257
-20091110.dev -> Revision SVN 1258
-20091123.dev -> Revision SVN 1266
-20091124.dev -> Revision SVN 1269
-20091129.dev -> Revision SVN 1271
-20091207.dev -> Revision SVN 1275
-20091210.dev -> Revision SVN 1279
-20091210.trunk -> Revision SVN 1279
-20100106.dev -> Revision SVN 1293
-20100114.dev -> Revision SVN 1297
-20100115.dev -> Revision SVN 1298
-20100201.dev -> Revision SVN 1308
-20100201.dev -> Revision SVN 1308
-20100219.dev -> Revision SVN 1312
-20100223.dev -> Revision SVN 1317
-20100225.dev -> Revision SVN 1320
-20100322.dev -> Revision SVN 1329
-20100428.dev -> Revision SVN 1373
-20100507.dev -> Revision SVN 1386
-20100511.dev -> Revision SVN 1388
-20100520.dev -> Revision SVN 1392
-20100604.dev -> Revision SVN 1397
-20100608.dev -> Revision SVN 1399
-20100621.dev -> Revision SVN 1399
-20100713.trunk -> Revision SVN 1413
-20100902.trunk -> Revision SVN 
-20100928.trunk -> Revision SVN 1436
-20101021.dev -> Revision SVN 1444
-20101110.dev -> Revision SVN 1450
-20101118.trunk -> Revision SVN 1455
-20101213.dev -> Revision SVN 1463
-20110103.dev -> Revision SVN 1472
-20110112.dev -> Revision SVN 1473
-20110112.dev -> Revision SVN 1473
-20110112.dev -> Revision SVN 1473
-20110127.dev -> Revision SVN de
-20110218.dev -> Revision SVN 1490
-20110222.dev -> Revision SVN 1490
-20110223.dev -> Revision SVN 1491
-20110310.trunk -> Revision SVN 1495
-20110311.trunk -> Revision SVN 1498
-20110313.trunk -> Revision SVN 1499
-20110322.trunk -> Revision SVN 1502
-20110323.trunk -> Revision SVN 1504
-20110411.trunk -> Revision SVN 1506
-20110415.trunk -> Revision SVN 1507
-20110426.trunk -> Revision SVN 1510
-20110506a.trunk -> Revision SVN 1515
-20110506.trunk -> Revision SVN 1516
-20110512.trunk -> Revision SVN 1517
-20110513.trunk -> Revision SVN 1518
-20110516.trunk -> Revision SVN 1519
-20110524a.trunk -> Revision SVN 1521
-20110524.trunk -> Revision SVN 1523
-20110525A.trunk -> Revision SVN 1524
-20110525.trunk -> Revision SVN 1525
-20110526.trunk -> Revision SVN 1529
-20110530.trunk -> Revision SVN 1530
-20110609.trunk -> Revision SVN 1540
-20110622.trunk -> Revision SVN 1545
-20110713.trunk -> Revision SVN 1555
-20110921.trunk -> Revision SVN 1575 testing, NPv3
-20111007.trunk -> Revision SVN 1576
-20111103.trunk -> Revision SVN 1578 first version including FCM
-20111126.trunk -> Revision SVN 1592
-20120203.trunk -> Revision SVN 1614
-20120327.trunk -> Revision SVN 1619
-20120417.trunk -> Revision SVN 1623
-20120504.trunk -> Revision SVN 1624
-20120516.trunk -> Revision SVN 1628
-
-
-install version     SVN                BENCH   CONVERGE  1+1=2
-                                       RUNNING NUM. WITH
-                                               PREVIOUS
-20110921.trunk  -> Revision SVN 1575 	 OK 	 - 	 -
-20111007.trunk  -> Revision SVN 1576 	 OK 	 OK 	 -
-20111103.trunk  -> Revision SVN 1578 	 OK 	 OK 	 -
-20111126.trunk  -> Revision SVN 1592 	 OK 	 OK 	 -
-20120203.trunk  -> Revision SVN 1614 	 OK 	 - 	 -
-20120327.trunk  -> Revision SVN 1619 	 OK 	 OK 	 -
-20120417.trunk  -> Revision SVN 1623 	 OK 	 OK 	 -
-
-
-install version         SVN     Bench   Conv.   1+1=2   Init
-                                run     Nnum.
-                                        /prev.
-
-20120504.trunk		1624    OK      OK      -       OK
-20120515.trunk          1626    OK      -       OK      OK
-20120516.trunk		1628	OK	OK 	OK	OK
-20120625.trunk		1634	OK	OK 	OK	OK
-20120712.trunk		1636	OK	OK 	OK	OK  supprimee 
-20120718.trunk		1637	OK	OK 	OK	OK
-20120723.trunk		1638	-	 		    supprimee
-20120724.trunk		1641	OK	OK 	OK	OK
-20120730.trunk		1645	OK	OK 	OK	OK
-20120809.trunk		1648	OK	OK 	OK	OK
-20120822.trunk		1649	OK	OK 	OK	OK
-20120906.trunk		1650	OK	OK 	OK	-   supprimee
-20120907.trunk		1651	OK	OK 	OK	OK  supprimee (pb cv3)
-20120912.trunk		1652	OK	OK 	OK	OK
-20120917.trunk		1653	OK	- 	OK	OK bug swaero, supprime
-20121001.trunk		1655	OK	OK 	OK	OK
-20121002.trunk		1657	OK	OK 	OK	OK
-20121005.trunk		1659	OK	OK 	OK	OK
-20121012.trunk		1668	-	 		
-20121012.trunk		1668	OK	OK 	OK	OK
-20121017.trunk		1670	OK	OK 	OK	OK
-20121024.trunk		1672	OK	OK 	OK	OK
-20121029.trunk		1674	OK	OK 	OK	OK
-20121112.trunk          1678    OK      OK      OK      OK
-20121112.trunk          1678    OK      OK      OK      OK
-20121115.trunk		1680	OK	OK 	OK	OK
-20121116.trunk		1682	OK	OK 	OK	OK
-20121121.trunk		1685	OK	OK 	OK	OK
-20121206.trunk		1689	OK	OK 	OK	-
-20121212.trunk		1692	OK	OK 	OK	-
-20121212.trunk		1693	OK	OK 	OK	-
-20121212.trunk		1693	OK	OK 	OK	-
-
-20121219.trunk		1696	OK	OK 	OK	noc
-20121219.trunk		1698	OK	OK 	OK	OK
-20121220.trunk		1700	OK	OK 	OK	OK
-20121221.trunk		1704	OK	OK 	OK	OK
-20130109.trunk		1706	OK	OK 	OK	OK
-20130118.trunk		1714	OK	OK 	OK	OK
-20130125.trunk		1719	-	 		
-20130125.trunk		1720	OK	OK 	OK	OK
-20130129.trunk		1722	OK	OK 	OK	OK
-20130207.trunk		1724	OK	OK 	OK	OK
-20130227.trunk		1727	OK	OK 	OK	OK
-
Index: /BOL/script_install/Readme.md
===================================================================
--- /BOL/script_install/Readme.md	(revision 4405)
+++ /BOL/script_install/Readme.md	(revision 4405)
@@ -0,0 +1,8 @@
+Contenu du répertoire
+
+scripts d'installation netcdf :  `install_netcdf4_hdf5.bash`  `install_netcdf4_hdf5_seq.bash`
+      Devraient être fusionnés
+
+script d'installation lmdz : `install_lmdz.sh`
+    
+scripts de creation et de tests des archives .tar de LMDZ : `check_version.sh`  `creation_modipsl.sh`
Index: /BOL/script_install/install_conda_ferret.sh
===================================================================
--- /BOL/script_install/install_conda_ferret.sh	(revision 4405)
+++ /BOL/script_install/install_conda_ferret.sh	(revision 4405)
@@ -0,0 +1,50 @@
+#!/bin/bash
+
+cat <<eod
+Ce script installe miniconda puis la version conda de ferret.
+
+Rm :
+1) Il faut répondre aux questions de l'installation conda.
+2) Tout à la fin, il commente les lignes rajoutées automatiquement dans
+le .bashrc pour éviter que conda soit actif par défaut.
+3) On fait une rétroinstallation de ferret qui sans ça ne marche pas
+sur certains ordis.
+eod
+sleep 12
+
+# Installation de miniconda (notamment pour ferret)
+=======================================
+
+wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
+bash Miniconda3-latest-Linux-x86_64.sh
+# desactiver conda par defaut
+cd $HOME/miniconda3/bin
+./conda config --set auto_activate_base false
+
+./conda create --name python2 python=2.7
+./conda create --name python3 python=3.7
+./conda install -y netcdf4 h5py jinja2 pip sqlalchemy basemap matplotlib numpy scipy
+
+
+# Installation de ferret via conda
+=========================
+
+# Il faut installer une ancienne version d’abord à cause d’un bug
+# cf. https://www.pmel.noaa.gov/maillists/tmap/ferret_users/fu_2019/msg01061.html
+./conda install -y -c "conda-forge/label/cf202003" pyferret
+./conda create -n FERRET -c conda-forge/label/cf202003 pyferret ferret_datasets --yes
+
+
+# Installation basemap
+=================
+https://github.com/conda-forge/basemap-feedstock/issues/45
+#suggère pour un des problèmes rencontrés de faire une install comme suit
+conda create -n basemap python=3.7 basemap proj4=5.2.0
+conda activate basemap
+python -c "from mpl_toolkits.basemap import Basemap"
+
+#PB identifiés avec le nouveau compilateur
+#  INTEGER(KIND=JPIM), PARAMETER :: IVAR=0 !Z"3FFFFFFF"
+
+
+
Index: /BOL/script_install/install_lmdz.sh
===================================================================
--- /BOL/script_install/install_lmdz.sh	(revision 4404)
+++ /BOL/script_install/install_lmdz.sh	(revision 4405)
@@ -49,14 +49,14 @@
     # Path on local computer where to look for the datafile
     if [ -f /u/lmdz/WWW/LMDZ/pub/$1 ] ; then
-	\cp -f -p /u/lmdz/WWW/LMDZ/pub/$1 .
+        \cp -f -p /u/lmdz/WWW/LMDZ/pub/$1 .
     elif [ -f ~/LMDZ/pub/$1 ] ; then
-	\cp -f -p ~/LMDZ/pub/$1 .
+        \cp -f -p ~/LMDZ/pub/$1 .
     else
-	wget --no-check-certificate -nv http://lmdz.lmd.jussieu.fr/pub/$1
-	save_pub_locally=0
-	if [ $save_pub_locally = 1 ] ; then # saving wget files on ~/LMDZ/pub
-	    dir=~/LMDZ/pub/`dirname $1` ; mkdir -p $dir
-	    cp -r `basename $1` $dir
-	fi
+        wget --no-check-certificate -nv http://lmdz.lmd.jussieu.fr/pub/$1
+        save_pub_locally=0
+        if [ $save_pub_locally = 1 ] ; then # saving wget files on ~/LMDZ/pub
+            dir=~/LMDZ/pub/`dirname $1` ; mkdir -p $dir
+            cp -r `basename $1` $dir
+        fi
     fi
 }
@@ -141,5 +141,5 @@
 do
     case $1 in
-	"-h") cat <<........fin
+        "-h") cat <<........fin
     $0 [ -v version ] [ -r svn_release ]
            [ -parallel PARA ] [ -d GRID_RESOLUTION ] [ -bench 0/1 ]
@@ -165,7 +165,7 @@
 
     -netcdf    0, 1 or PATH
-    	       0: do not download NetCDF, look for it in standard locations
-	       1: download and compile NetCDF
-    	       PATH: full path to an existing installed NetCDF library
+                   0: do not download NetCDF, look for it in standard locations
+               1: download and compile NetCDF
+                   PATH: full path to an existing installed NetCDF library
 
     -xios      also download and compile the XIOS library
@@ -194,58 +194,58 @@
 
 ........fin
-	      exit ;;
-	"-v") version=$2 ; shift ; shift ;;
-	"-r") svn=$2 ; shift ; shift ;;
-	"-compiler") compiler=$2
+              exit ;;
+        "-v") version=$2 ; shift ; shift ;;
+        "-r") svn=$2 ; shift ; shift ;;
+        "-compiler") compiler=$2
                      case $compiler in
-			 "gfortran"|"ifort"|"pgf90") compiler=$2 ; shift
-						     shift ;;
-			 *) echo "Only gfortran , ifort or pgf90 for the " \
-				 "compiler option"
-			    exit
+                         "gfortran"|"ifort"|"pgf90") compiler=$2 ; shift
+                                                     shift ;;
+                         *) echo "Only gfortran , ifort or pgf90 for the " \
+                                 "compiler option"
+                            exit
                      esac ;;
-	"-d") grid_resolution=$2 ; shift ; shift ;;
-	"-gprof") OPT_GPROF="-pg" ; shift ;;
-	"-cosp") cosp=$2
-		 case $cosp in
+        "-d") grid_resolution=$2 ; shift ; shift ;;
+        "-gprof") OPT_GPROF="-pg" ; shift ;;
+        "-cosp") cosp=$2
+                 case $cosp in
                      "none"|"v1"|"v2") cosp=$2 ; shift ; shift ;;
                      *) echo Only none v1 v2 for cosp option ; exit
-		 esac ;;
-	"-nofcm") compile_with_fcm=0 ; echo This option will be reactivated soon '(promesse du 8dec2022)' ; exit 1 ;  shift ;;
-	"-SCM") SCM=1 ; shift ;;
-	"-opt_makelmdz") OPT_MAKELMDZ="$2" ; shift ; shift ;;
-	"-rrtm") rrtm="$2"
-		 if [ "$2" = "false" ] ; then
-		     rad="oldrad"
-		 else
-		     rad="rrtm"
-		 fi
-		 shift ; shift ;;
-	"-rad") rad=$2
-		case $rad in
+                 esac ;;
+        "-nofcm") compile_with_fcm=0 ; echo This option will be reactivated soon '(promesse du 8dec2022)' ; exit 1 ;  shift ;;
+        "-SCM") SCM=1 ; shift ;;
+        "-opt_makelmdz") OPT_MAKELMDZ="$2" ; shift ; shift ;;
+        "-rrtm") rrtm="$2"
+                 if [ "$2" = "false" ] ; then
+                     rad="oldrad"
+                 else
+                     rad="rrtm"
+                 fi
+                 shift ; shift ;;
+        "-rad") rad=$2
+                case $rad in
                     "oldrad"|"rrtm"|"ecrad") rad=$2 ; shift ; shift ;;
                     *) echo Only oldrad rrtm ecrad for rad option ; exit
-		esac ;;
-	"-parallel") parallel=$2
+                esac ;;
+        "-parallel") parallel=$2
                      case $parallel in
-			 "none"|"mpi"|"omp"|"mpi_omp") parallel=$2 ; shift
-						       shift ;;
-			 *) echo Only none mpi omp mpi_omp for the parallel \
-				 option
-			    exit
+                         "none"|"mpi"|"omp"|"mpi_omp") parallel=$2 ; shift
+                                                       shift ;;
+                         *) echo Only none mpi omp mpi_omp for the parallel \
+                                 option
+                            exit
                      esac ;;
-	"-bench") bench=$2 ; shift ; shift ;;
-	"-debug") optim=-debug ; shift ;;
-	"-name") MODEL=$2 ; shift ; shift ;;
-	"-netcdf") case $2 in
+        "-bench") bench=$2 ; shift ; shift ;;
+        "-debug") optim=-debug ; shift ;;
+        "-name") MODEL=$2 ; shift ; shift ;;
+        "-netcdf") case $2 in
                        0|1) netcdf=$2 ;;
                        *) netcdf=`ls -d $2` ; if [ $? != 0 ] ; then echo No directory $2 ; exit 1 ; fi
                    esac
                    shift ; shift ;;
-	"-physiq") physiq=$2 ; shift ; shift ;;
-	"-xios") with_xios="y" ; shift ;;
-	"-env_file") env_file=$2 ; shift ; shift ;;
-	"-veget") veget=$2 ; shift ; shift ;;
-	*) ./install_lmdz.sh -h ; exit
+        "-physiq") physiq=$2 ; shift ; shift ;;
+        "-xios") with_xios="y" ; shift ;;
+        "-env_file") env_file=$2 ; shift ; shift ;;
+        "-veget") veget=$2 ; shift ; shift ;;
+        *) ./install_lmdz.sh -h ; exit
     esac
 done
@@ -273,6 +273,6 @@
     re='^[0-9]+$'
     if ! [[ $veget =~ $re ]] ; then
-	echo 'Valeur de l option veget non valable'
-	exit
+        echo 'Valeur de l option veget non valable'
+        exit
     fi
 fi
@@ -331,22 +331,22 @@
 
     cicla|camel)   compiler="gfortran" ;
-		   module purge
-		   module load gnu/10.2.0
-		   module load openmpi/4.0.5
-		   module load hdf5/1.10.7-mpi
-		   module load netcdf-c/4.7.4-mpi
-		   module load netcdf-fortran/4.5.3-mpi
-		   netcdf=/net/nfs/tools/PrgEnv/linux-scientific6-x86_64/gcc-10.2.0/netcdf-fortran-4.5.3-k3drgfqok3lip62hnm3tsyof4cjen5sk
-		   module load svn/1.14.0
-
-		   if [ $parallel != none ] ; then
-		       root_mpi=/net/nfs/tools/meso-sl6/openmpi/4.0.5-gcc-10.2.0
-		       path_mpi=$root_mpi/bin ;
-		       par_comp=${path_mpi}/mpif90 ;
-		       mpirun=${path_mpi}/mpirun ;
-		   fi ;
-		   arch=local  ;
-		   make=make ;
-		   o_ins_make="-t g95" ;;
+                   module purge
+                   module load gnu/10.2.0
+                   module load openmpi/4.0.5
+                   module load hdf5/1.10.7-mpi
+                   module load netcdf-c/4.7.4-mpi
+                   module load netcdf-fortran/4.5.3-mpi
+                   netcdf=/net/nfs/tools/PrgEnv/linux-scientific6-x86_64/gcc-10.2.0/netcdf-fortran-4.5.3-k3drgfqok3lip62hnm3tsyof4cjen5sk
+                   module load svn/1.14.0
+
+                   if [ $parallel != none ] ; then
+                       root_mpi=/net/nfs/tools/meso-sl6/openmpi/4.0.5-gcc-10.2.0
+                       path_mpi=$root_mpi/bin ;
+                       par_comp=${path_mpi}/mpif90 ;
+                       mpirun=${path_mpi}/mpirun ;
+                   fi ;
+                   arch=local  ;
+                   make=make ;
+                   o_ins_make="-t g95" ;;
 
     *)       if [ $parallel = none -o -f /usr/bin/mpif90 ] ; then
@@ -358,11 +358,11 @@
                  fi
              else
-		 echo "Cannot find mpif90" ;
-		 if [ $parallel = none ] ; then exit ; fi ;
+                 echo "Cannot find mpif90" ;
+                 if [ $parallel = none ] ; then exit ; fi ;
              fi ;
              if [ $parallel != none ] ; then
-		 root_mpi=$(which mpif90 | sed -e s:/bin/mpif90::)
-		 path_mpi=$(which mpif90 | sed -e s:/mpif90::)
-		 export LD_LIBRARY_PATH=${root_mpi}/lib:$LD_LIBRARY_PATH
+                 root_mpi=$(which mpif90 | sed -e s:/bin/mpif90::)
+                 path_mpi=$(which mpif90 | sed -e s:/mpif90::)
+                 export LD_LIBRARY_PATH=${root_mpi}/lib:$LD_LIBRARY_PATH
              fi
              par_comp=${path_mpi}/mpif90 ;
@@ -378,18 +378,18 @@
     MPI_LD="-L${root_mpi}/lib -lmpi"
     if [ "$compiler" = "gfortran" ] ; then
-	# MPI_FLAGS are the flags needed for compilation with MPI
-	MPI_FLAGS="-fcray-pointer"
-	# OMP_FLAGS are the flags needed for compilation with OpenMP
-	OMP_FLAGS="-fopenmp -fcray-pointer"
-	# OMP_LD are the flags needed for linking with OpenMP
-	OMP_LD="-fopenmp"
+        # MPI_FLAGS are the flags needed for compilation with MPI
+        MPI_FLAGS="-fcray-pointer"
+        # OMP_FLAGS are the flags needed for compilation with OpenMP
+        OMP_FLAGS="-fopenmp -fcray-pointer"
+        # OMP_LD are the flags needed for linking with OpenMP
+        OMP_LD="-fopenmp"
     elif [ "$compiler" = "ifort" ] ; then
-	MPI_FLAGS=""
-	OMP_FLAGS="-openmp"
-	OMP_LD="-openmp"
+        MPI_FLAGS=""
+        OMP_FLAGS="-openmp"
+        OMP_LD="-openmp"
     else # pgf90
-	MPI_FLAGS=""
-	OMP_FLAGS="-mp"
-	OMP_LD="-mp"
+        MPI_FLAGS=""
+        OMP_FLAGS="-mp"
+        OMP_LD="-mp"
     fi
 fi
@@ -408,13 +408,13 @@
    head -1 | awk ' { print $NF } ' | awk -F. ' { print $1 * 10 + $2 } '`
     if [ $gfortranv -le 43 ] ; then
-	echo ERROR : Your gfortran compiler is too old
-	echo 'Please choose a new one (ifort) and change the line'
-	echo compiler=xxx
-	echo in the install_lmdz.sh script and rerun it
-	if [ `which gfortran44 | wc -w` -ne 0 ] ; then
+        echo ERROR : Your gfortran compiler is too old
+        echo 'Please choose a new one (ifort) and change the line'
+        echo compiler=xxx
+        echo in the install_lmdz.sh script and rerun it
+        if [ `which gfortran44 | wc -w` -ne 0 ] ; then
             gfortran=gfortran44
-	else
+        else
             echo gfotran trop vieux ; exit
-	fi
+        fi
     fi
     compiler=$gfortran
@@ -475,5 +475,5 @@
     fmod='I '
     if [ $real = r8 ] ; then
-	OPTPREC="$OPTPREC -fdefault-real-8 -DNC_DOUBLE -fcray-pointer"
+        OPTPREC="$OPTPREC -fdefault-real-8 -DNC_DOUBLE -fcray-pointer"
     fi
     export F90FLAGS=" -ffree-form $OPTIMNC"
@@ -553,30 +553,30 @@
     use_shell="bash" # default
     if [ "`which bash`" = "" ] ; then
-	echo "no bash ; we will use ksh"
-	use_shell="ksh"
-	if [ "`which ksh`" = "" ] ; then
-	    echo "bash (or ksh) needed!! Install it!"
-	    exit
-	fi
+        echo "no bash ; we will use ksh"
+        use_shell="ksh"
+        if [ "`which ksh`" = "" ] ; then
+            echo "bash (or ksh) needed!! Install it!"
+            exit
+        fi
     fi
 
     for logiciel in wget tar gzip make $compiler gcc cmake m4 c++ ; do
-	if [ "`which $logiciel`" = "" ] ; then
-	    echo You must first install $logiciel on your system
-	    exit
-	fi
+        if [ "`which $logiciel`" = "" ] ; then
+            echo You must first install $logiciel on your system
+            exit
+        fi
     done
 
     if [ $pclinux = 1 ] ; then
-	cd $MODEL
-	cat <<eod > tt.f90
+        cd $MODEL
+        cat <<eod > tt.f90
 print*,'coucou'
 end
 eod
-	$compiler tt.f90 -o a.out
-	./a.out >| tt
-	if [ "`cat tt | sed -e 's/ //g' `" != "coucou" ] ; then
-	    echo problem installing with compiler $compiler ; exit ; fi
-	\rm tt a.out tt.f90
+        $compiler tt.f90 -o a.out
+        ./a.out >| tt
+        if [ "`cat tt | sed -e 's/ //g' `" != "coucou" ] ; then
+            echo problem installing with compiler $compiler ; exit ; fi
+        \rm tt a.out tt.f90
     fi
 fi
@@ -600,62 +600,45 @@
 ###########################################################################
 if [ $netcdf = 1 ] ; then
-    ###########################################################################
+###########################################################################
     cd $MODEL
     netcdflog=`pwd`/netcdf.log
-    echo '##########################################################'
+    echo '----------------------------------------------------------'
     echo Compiling the Netcdf library
-    echo '##########################################################'
+    echo '----------------------------------------------------------'
     echo log file : $netcdflog
-    if [[ "$with_xios" = "n" && ! -d $MODEL/netcdf4_hdf5_seq ]] ; then
-	myget import/install_netcdf4_hdf5_seq.bash >> $netcdflog 2>&1
-	chmod +x install_netcdf4_hdf5_seq.bash
-
-	if [ "$compiler" = "gfortran" ]
-	then
-	    ./install_netcdf4_hdf5_seq.bash -prefix $MODEL/netcdf4_hdf5_seq \
-					    -compiler gnu  >> $netcdflog 2>&1
-	elif [ "$compiler" = "ifort" ]
-	then
-	    ./install_netcdf4_hdf5_seq.bash -prefix $MODEL/netcdf4_hdf5_seq \
-					    -compiler intel  >> $netcdflog 2>&1
-	else
-            echo "unexpected compiler $compiler" ; exit
-	fi
-
-	# LF rajout d'une verrue, pour une raison non encore expliquee,
-	# la librairie est parfois rangée dans lib64 et non dans lib
-	# par certains compilateurs
-	if [ ! -e lib -a -d lib64 ] ; then ln -s lib64 lib; fi
-    elif [[ "$with_xios" = "y" && ! -d $MODEL/netcdf4_hdf5 ]]
-    then
-	# download and compile hdf5 and netcdf, etc. using the
-	# install_netcdf4_hdf5.bash script
-	myget import/install_netcdf4_hdf5.bash >> $netcdflog 2>&1
-	chmod u=rwx install_netcdf4_hdf5.bash
-	if [ "$compiler" = "gfortran" ] ; then
-	    ./install_netcdf4_hdf5.bash -prefix $MODEL/netcdf4_hdf5 -CC gcc \
-			-FC gfortran -CXX g++ -MPI $root_mpi  >> $netcdflog 2>&1
-	elif [ "$compiler" = "ifort" ] ; then
-	    ./install_netcdf4_hdf5.bash -prefix $MODEL/netcdf4_hdf5 -CC icc \
-			  -FC ifort -CXX icpc -MPI $root_mpi  >> $netcdflog 2>&1
-	elif [ "$compiler" = "pgf90" ] ; then
-	    ./install_netcdf4_hdf5.bash -prefix $MODEL/netcdf4_hdf5 -CC pgcc \
-			  -FC pgf90 -CXX pgCC -MPI $root_mpi  >> $netcdflog 2>&1
-	else
-            echo "unexpected compiler $compiler" ; exit
-	fi
-    fi  # of if [ "$with_xios" = "n" ]
+
+    case $compiler in
+      gfortran) opt1="-compiler gnu" ; opt2="-CC gcc -FC gfortran -CXX g++" ;;
+      ifort)  opt1="-compiler intel" ; opt2="-CC icc -FC ifort -CXX icpc" ;;
+      pgf90)  opt1="-compiler pgf90" ; opt2="-CC pgcc -FC pgf90 -CXX pgCC" ;;
+      *)      echo "unexpected compiler $compiler" for netcdf ; exit 1
+    esac
+
+    case $with_xios in
+        n) script_install_netcdf=install_netcdf4_hdf5_seq.bash
+           ncdfdir=$MODEL/netcdf4_hdf5_seq
+           opt_=$opt1 ;;
+        y) script_install_netcdf=install_netcdf4_hdf5.bash
+           ncdfdir=$MODEL/netcdf4_hdf5
+           opt_="$opt2 -MPI $root_mpi" ;;
+        *) echo with_xios=$with_xios, should be n or y ; exit 1
+    esac
+         
+    if [[ ! -d $ncdfdir ]] ; then
+        myget import/$script_install_netcdf >> $netcdflog 2>&1
+        chmod u=rwx $script_install_netcdf
+        ./$script_install_netcdf -prefix $ncdfdir $opt_ >> $netcdflog 2>&1
+    fi
+
+    #----------------------------------------------------------------------------
+    # LF rajout d'une verrue, pour une raison non encore expliquee,
+    # la librairie est parfois rangée dans lib64 et non dans lib
+    # par certains compilateurs
+    if [ ! -e lib -a -d lib64 ] ; then ln -s lib64 lib; fi
+    #----------------------------------------------------------------------------
+
     echo install_lmdz.sh netcdf_OK `date`
-fi # of if [ $netcdf = 1 ]
-
-# ncdfdir contains the directory where netcdf is installed
-if [ $netcdf = 1 ] ; then
-    if [ "$with_xios" = "y" ] ; then
-	ncdfdir=$MODEL/netcdf4_hdf5
-    else
-	ncdfdir=$MODEL/netcdf4_hdf5_seq
-    fi
-elif [ $netcdf = 0 ]
-then
+
+elif [ $netcdf = 0 ] ; then
     ncdfdir=/usr
 else
@@ -669,6 +652,6 @@
 EOF
 
-$compiler -I$ncdfdir/include test_netcdf90.f90 -L$ncdfdir/lib -l netcdff \
-	  -lnetcdf -Wl,-rpath=$ncdfdir/lib && ./a.out
+$compiler -I$ncdfdir/include test_netcdf90.f90 -L$ncdfdir/lib -lnetcdff \
+          -lnetcdf -Wl,-rpath=$ncdfdir/lib && ./a.out
     
 if (($? == 0))
@@ -680,7 +663,7 @@
     echo "- check that you have NetCDF-Fortran installed in your system"
     echo "- or specify an installation directory with option -netcdf of" \
-	 "install_lmdz.sh"
+         "install_lmdz.sh"
     echo "- or download and compile NetCDF-Fortran with option -netcdf 1 of" \
-	 "install_lmdz.sh"
+         "install_lmdz.sh"
     exit 1
 fi
@@ -690,106 +673,106 @@
 then
     if [ $ioipsl = 1 ] ; then
-	#=====================================================================
-	echo OK ioipsl=$ioipsl
-	echo '##########################################################'
-	echo 'Installing MODIPSL, the installation package manager for the '
-	echo 'IPSL models and tools'
-	echo '##########################################################'
-	echo `date`
-
-	cd $MODEL/modipsl
-	\rm -rf lib/*
-	cd util
-	cp AA_make.gdef AA_make.orig
-	F_C="$compiler -c "
-	if [ "$compiler" = "$gfortran" -o "$compiler" = "mpif90" ]
-	then
-	    F_C="$compiler -c -cpp "
-	fi
-	if [ "$compiler" = "pgf90" ] ; then F_C="$compiler -c -Mpreprocess" ; fi
-	sed -e 's/^\#.*.g95.*.\#.*.$/\#/' AA_make.gdef > tmp
-	sed -e "s:F_L = g95:F_L = $compiler:" \
-	    -e "s:F_C = g95 -c -cpp:F_C = $F_C": \
-	    -e 's/g95.*.w_w.*.(F_D)/g95      w_w = '"$OPTIMGCM"'/' \
-	    -e 's:g95.*.NCDF_INC.*.$:g95      NCDF_INC= '"$ncdfdir"'/include:' \
-	    -e 's:g95.*.NCDF_LIB.*.$:g95      NCDF_LIB= -L'"$ncdfdir"'/lib -lnetcdff -lnetcdf:' \
-	    -e 's:g95      L_O =:g95      L_O = -Wl,-rpath='"$ncdfdir"'/lib:' \
-	    -e "s:-fmod=:-$fmod:" -e 's/-fno-second-underscore//' \
-	    -e 's:#-Q- g95      M_K = gmake:#-Q- g95      M_K = make:' \
-	    tmp >| AA_make.gdef
-
-	if [ $pcmac == 1 ]
-	then
-	    cp AA_make.gdef tmp
-	    sed -e 's/rpath=/rpath,/g' tmp > AA_make.gdef
-	fi
-
-
-	# We use lines for g95 even for the other compilers to run ins_make
-	if [ "$use_shell" = "ksh" ] ; then
-	    ./ins_make $o_ins_make
-	else # bash
-	    sed -e s:/bin/ksh:/bin/bash:g ins_make > ins_make.bash
-	    if [ "`grep jeanzay AA_make.gdef`" = "" ] ; then
-		# Bidouille pour compiler sur ada des vieux modipsl.tar
-		echo 'Warning jean-zay not in AA_make.gdef'
-		echo 'Think about updating'
-		exit 1
-	    fi
-
-	    chmod u=rwx ins_make.bash
-	    ./ins_make.bash $o_ins_make
-	fi # of if [ "$use_shell" = "ksh" ]
-
-	echo install_lmdz.sh MODIPSL_OK `date`
-
-	cd $MODEL/modipsl/modeles/IOIPSL/src
-	ioipsllog=`pwd`/ioipsl.log
-	echo '##########################################################'
-	echo 'Compiling IOIPSL, the interface library with Netcdf'
-	echo '##########################################################'
-	echo `date`
-	echo log file : $ioipsllog
-
-	if [ "$use_shell" = "bash" ] ; then
-	    cp Makefile Makefile.ksh
-	    sed -e s:/bin/ksh:/bin/bash:g Makefile.ksh > Makefile
-	fi
-	# if [ "$pclinux" = 1 ] ; then
-	# Build IOIPSL modules and library
-	$make clean
-	$make > $ioipsllog 2>&1
-	if [ "$compiler" = "$gfortran" -o "$compiler" = "mpif90" ] ; then
-	    # copy module files to lib
-	    cp -f *.mod ../../../lib
-	fi
-	# Build IOIPSL tools (ie: "rebuild", if present)
-	if [ -f $MODEL/modipsl/modeles/IOIPSL/tools/rebuild ] ; then
-	    cd $MODEL/modipsl/modeles/IOIPSL/tools
-	    # adapt Makefile & rebuild script if in bash
-	    if [ "$use_shell" = "bash" ] ; then
-		cp Makefile Makefile.ksh
-		sed -e s:/bin/ksh:/bin/bash:g Makefile.ksh > Makefile
-		cp rebuild rebuild.ksh
-		sed -e 's:/bin/ksh:/bin/bash:g' \
-		    -e 's:print -u2:echo:g' \
-		    -e 's:print:echo:g' rebuild.ksh > rebuild
-	    fi
-	    $make clean
-	    $make > $ioipsllog 2>&1
-	fi
-	# fi # of if [ "$pclinux" = 1 ]
+        #=====================================================================
+        echo OK ioipsl=$ioipsl
+        echo '##########################################################'
+        echo 'Installing MODIPSL, the installation package manager for the '
+        echo 'IPSL models and tools'
+        echo '##########################################################'
+        echo `date`
+
+        cd $MODEL/modipsl
+        \rm -rf lib/*
+        cd util
+        cp AA_make.gdef AA_make.orig
+        F_C="$compiler -c "
+        if [ "$compiler" = "$gfortran" -o "$compiler" = "mpif90" ]
+        then
+            F_C="$compiler -c -cpp "
+        fi
+        if [ "$compiler" = "pgf90" ] ; then F_C="$compiler -c -Mpreprocess" ; fi
+        sed -e 's/^\#.*.g95.*.\#.*.$/\#/' AA_make.gdef > tmp
+        sed -e "s:F_L = g95:F_L = $compiler:" \
+            -e "s:F_C = g95 -c -cpp:F_C = $F_C": \
+            -e 's/g95.*.w_w.*.(F_D)/g95      w_w = '"$OPTIMGCM"'/' \
+            -e 's:g95.*.NCDF_INC.*.$:g95      NCDF_INC= '"$ncdfdir"'/include:' \
+            -e 's:g95.*.NCDF_LIB.*.$:g95      NCDF_LIB= -L'"$ncdfdir"'/lib -lnetcdff -lnetcdf:' \
+            -e 's:g95      L_O =:g95      L_O = -Wl,-rpath='"$ncdfdir"'/lib:' \
+            -e "s:-fmod=:-$fmod:" -e 's/-fno-second-underscore//' \
+            -e 's:#-Q- g95      M_K = gmake:#-Q- g95      M_K = make:' \
+            tmp >| AA_make.gdef
+
+        if [ $pcmac == 1 ]
+        then
+            cp AA_make.gdef tmp
+            sed -e 's/rpath=/rpath,/g' tmp > AA_make.gdef
+        fi
+
+
+        # We use lines for g95 even for the other compilers to run ins_make
+        if [ "$use_shell" = "ksh" ] ; then
+            ./ins_make $o_ins_make
+        else # bash
+            sed -e s:/bin/ksh:/bin/bash:g ins_make > ins_make.bash
+            if [ "`grep jeanzay AA_make.gdef`" = "" ] ; then
+                # Bidouille pour compiler sur ada des vieux modipsl.tar
+                echo 'Warning jean-zay not in AA_make.gdef'
+                echo 'Think about updating'
+                exit 1
+            fi
+
+            chmod u=rwx ins_make.bash
+            ./ins_make.bash $o_ins_make
+        fi # of if [ "$use_shell" = "ksh" ]
+
+        echo install_lmdz.sh MODIPSL_OK `date`
+
+        cd $MODEL/modipsl/modeles/IOIPSL/src
+        ioipsllog=`pwd`/ioipsl.log
+        echo '##########################################################'
+        echo 'Compiling IOIPSL, the interface library with Netcdf'
+        echo '##########################################################'
+        echo `date`
+        echo log file : $ioipsllog
+
+        if [ "$use_shell" = "bash" ] ; then
+            cp Makefile Makefile.ksh
+            sed -e s:/bin/ksh:/bin/bash:g Makefile.ksh > Makefile
+        fi
+        # if [ "$pclinux" = 1 ] ; then
+        # Build IOIPSL modules and library
+        $make clean
+        $make > $ioipsllog 2>&1
+        if [ "$compiler" = "$gfortran" -o "$compiler" = "mpif90" ] ; then
+            # copy module files to lib
+            cp -f *.mod ../../../lib
+        fi
+        # Build IOIPSL tools (ie: "rebuild", if present)
+        if [ -f $MODEL/modipsl/modeles/IOIPSL/tools/rebuild ] ; then
+            cd $MODEL/modipsl/modeles/IOIPSL/tools
+            # adapt Makefile & rebuild script if in bash
+            if [ "$use_shell" = "bash" ] ; then
+                cp Makefile Makefile.ksh
+                sed -e s:/bin/ksh:/bin/bash:g Makefile.ksh > Makefile
+                cp rebuild rebuild.ksh
+                sed -e 's:/bin/ksh:/bin/bash:g' \
+                    -e 's:print -u2:echo:g' \
+                    -e 's:print:echo:g' rebuild.ksh > rebuild
+            fi
+            $make clean
+            $make > $ioipsllog 2>&1
+        fi
+        # fi # of if [ "$pclinux" = 1 ]
 
     else # of if [ $ioipsl = 1 ]
-	if [ ${hostname:0:5} = jean- ] ; then
-	    cd $MODEL/modipsl
-	    cd util
+        if [ ${hostname:0:5} = jean- ] ; then
+            cd $MODEL/modipsl
+            cd util
             if [ "`grep jeanzay AA_make.gdef`" = "" ] ; then
-		echo 'Warning jean-zay not in AA_make.gdef'
-		echo 'Think about updating'
-		exit 1
+                echo 'Warning jean-zay not in AA_make.gdef'
+                echo 'Think about updating'
+                exit 1
             fi
             ./ins_make $o_ins_make
-	    # Compile IOIPSL on jean-zay
+            # Compile IOIPSL on jean-zay
             cd $MODEL/modipsl/modeles/IOIPSL/src
             gmake > ioipsl.log
@@ -797,6 +780,6 @@
             gmake > ioipsl.log
 
-	fi
-	echo install_lmdz.sh ioipsl_OK `date`
+        fi
+        echo install_lmdz.sh ioipsl_OK `date`
     fi # of if [ $ioipsl = 1 ]
 fi
@@ -816,21 +799,21 @@
     chmod u=rwx install_xios.bash
     if [ ${hostname:0:5} = jean- ] ; then
-	svn co http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/branchs/xios-2.5 \
-	    XIOS
-	cd XIOS/arch
-	svn update
-	cd ..
-	echo "Compiling XIOS, start" `date` \
-	     "(it takes about 20 min on Jean-Zay)"
-	echo "log file: $xioslog"
-	./make_xios --prod --arch $arch --job 4 > xios.log 2>&1
+        svn co http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/branchs/xios-2.5 \
+            XIOS
+        cd XIOS/arch
+        svn update
+        cd ..
+        echo "Compiling XIOS, start" `date` \
+             "(it takes about 20 min on Jean-Zay)"
+        echo "log file: $xioslog"
+        ./make_xios --prod --arch $arch --job 4 > xios.log 2>&1
     else
-	./install_xios.bash -prefix $MODEL/modipsl/modeles \
-			    -netcdf ${ncdfdir} -hdf5 ${ncdfdir} \
-			    -MPI $root_mpi -arch $arch > xios.log 2>&1
+        ./install_xios.bash -prefix $MODEL/modipsl/modeles \
+                            -netcdf ${ncdfdir} -hdf5 ${ncdfdir} \
+                            -MPI $root_mpi -arch $arch > xios.log 2>&1
     fi # of case Jean-Zay
     if [ -f XIOS/lib/libxios.a ] ; then
-	echo "XIOS library successfully generated"
-	echo install_lmdz.sh XIOS_OK `date`
+        echo "XIOS library successfully generated"
+        echo install_lmdz.sh XIOS_OK `date`
     fi
 fi
@@ -842,34 +825,34 @@
     set +e ; svn upgrade ; set -e
     if [ "$veget" = "CMIP6" ] ; then
-	veget_version=orchidee2.0
-	orchidee_rev=6592
+        veget_version=orchidee2.0
+        orchidee_rev=6592
     else # specific orchidee revision newer than CMIP6, on 2_1 or 2_2 branches
-	veget_version=orchidee2.1
-	orchidee_rev=$veget
-	if [ $veget -lt 4465 ] ; then
-	    echo 'Stopping, ORCHIDEE version too old, script needs work on ' \
-		 'the CPP flags to pass to makelmdz'
-	    exit 1
-	fi
-	set +e
-	# which branch is my version on?
-	orcbranch=`svn log -v -q svn://forge.ipsl.jussieu.fr/orchidee/ -r $veget |grep ORCHIDEE |head -1| sed -e 's:ORCHIDEE/.*$:ORCHIDEE:' | awk '{print $2}'`
-	# switch to that branch
-	echo IF YOU INSTALL ORCHIDEE THE VERY FIRST TIME, ASK for PASSWORD at \
-	     orchidee-help@listes.ipsl.fr
-	svn switch -r $veget --accept theirs-full \
-	    svn://forge.ipsl.jussieu.fr/orchidee/$orcbranch
-	svn log -r $veget | grep  $veget
-	if [  $? -gt 0 ] ; then
+        veget_version=orchidee2.1
+        orchidee_rev=$veget
+        if [ $veget -lt 4465 ] ; then
+            echo 'Stopping, ORCHIDEE version too old, script needs work on ' \
+                 'the CPP flags to pass to makelmdz'
+            exit 1
+        fi
+        set +e
+        # which branch is my version on?
+        orcbranch=`svn log -v -q svn://forge.ipsl.jussieu.fr/orchidee/ -r $veget |grep ORCHIDEE |head -1| sed -e 's:ORCHIDEE/.*$:ORCHIDEE:' | awk '{print $2}'`
+        # switch to that branch
+        echo IF YOU INSTALL ORCHIDEE THE VERY FIRST TIME, ASK for PASSWORD at \
+             orchidee-help@listes.ipsl.fr
+        svn switch -r $veget --accept theirs-full \
+            svn://forge.ipsl.jussieu.fr/orchidee/$orcbranch
+        svn log -r $veget | grep  $veget
+        if [  $? -gt 0 ] ; then
             echo 'Cannot update ORCHIDEE as not on the right branch for ' \
-		 'ORCHIDEE'
+                 'ORCHIDEE'
             exit
-	fi
-	set -e
-	set +e ; svn update -r $veget ; set -e
+        fi
+        set -e
+        set +e ; svn update -r $veget ; set -e
     fi
     # Correctif suite debug Jean-Zay
     sed -i -e 's/9010  FORMAT(A52,F17.14)/9010  FORMAT(A52,F20.14)/' \
-	src_stomate/stomate.f90
+        src_stomate/stomate.f90
     opt_orc="-prod" ; if [ "$optim" = "-debug" ] ; then opt_orc="-debug" ; fi
 
@@ -884,65 +867,65 @@
     xios_orchid="-noxios"
     if [ "$with_xios" = "y" ] ; then
-	xios_orchid="-xios"
+        xios_orchid="-xios"
     fi
     if [ -d tools ] ; then
-	###################################################################
-	# Pour les experts qui voudraient changer de version d'orchidee.
-	# Attention : necessite d'avoir le password pour orchidee
-
-	# Correctif suite debug Jean-Zay
-	if [ -f src_global/time.f90 ] ; then
-	    sed -i -e 's/CALL tlen2itau/\!CALL tlen2itau/' src_global/time.f90
-	fi
-	###################################################################
-	if [ "$veget_version" == "false" ] ; then
-	    veget_version=orchidee2.0
-	fi
-	cd arch
-	sed -e s:"%COMPILER        .*.$":"%COMPILER            $compiler":1 \
-	    -e s:"%LINK            .*.$":"%LINK                $compiler":1 \
-	    -e s:"%FPP_FLAGS       .*.$":"%FPP_FLAGS           $fpp_flags":1 \
-	    -e s:"%PROD_FFLAGS     .*.$":"%PROD_FFLAGS         $OPTIM":1 \
-	    -e s:"%DEV_FFLAGS      .*.$":"%DEV_FFLAGS          $OPTDEV":1 \
-	    -e s:"%DEBUG_FFLAGS    .*.$":"%DEBUG_FFLAGS        $OPTDEB":1 \
-	    -e s:"%BASE_FFLAGS     .*.$":"%BASE_FFLAGS         $OPTPREC":1 \
-	    -e s:"%BASE_LD         .*.$":"%BASE_LD             $BASE_LD":1 \
-	    -e s:"%ARFLAGS         .*.$":"%ARFLAGS             $ARFLAGS":1 \
-	    arch-gfortran.fcm > arch-local.fcm
-	echo "NETCDF_LIBDIR=\"-L${ncdfdir}/lib -lnetcdff -lnetcdf\"" \
-	     > arch-local.path
-	echo "NETCDF_INCDIR=${ncdfdir}/include" >> arch-local.path
-	echo "IOIPSL_INCDIR=$ORCHPATH/../../lib" >> arch-local.path
-	echo "IOIPSL_LIBDIR=$ORCHPATH/../../lib" >> arch-local.path
-	echo 'XIOS_INCDIR=${ORCHDIR}/../XIOS/inc' >> arch-local.path
-	echo 'XIOS_LIBDIR="${ORCHDIR}/../XIOS/lib -lxios"' >> arch-local.path
-	cd ../
-
-	echo ./makeorchidee_fcm -j $xios_orchid $opt_orc -parallel none \
-	     -arch $arch
-	./makeorchidee_fcm -j 8 $xios_orchid $opt_orc -parallel none \
-			   -arch $arch > $orchideelog 2>&1
-	pwd
+        ###################################################################
+        # Pour les experts qui voudraient changer de version d'orchidee.
+        # Attention : necessite d'avoir le password pour orchidee
+
+        # Correctif suite debug Jean-Zay
+        if [ -f src_global/time.f90 ] ; then
+            sed -i -e 's/CALL tlen2itau/\!CALL tlen2itau/' src_global/time.f90
+        fi
+        ###################################################################
+        if [ "$veget_version" == "false" ] ; then
+            veget_version=orchidee2.0
+        fi
+        cd arch
+        sed -e s:"%COMPILER        .*.$":"%COMPILER            $compiler":1 \
+            -e s:"%LINK            .*.$":"%LINK                $compiler":1 \
+            -e s:"%FPP_FLAGS       .*.$":"%FPP_FLAGS           $fpp_flags":1 \
+            -e s:"%PROD_FFLAGS     .*.$":"%PROD_FFLAGS         $OPTIM":1 \
+            -e s:"%DEV_FFLAGS      .*.$":"%DEV_FFLAGS          $OPTDEV":1 \
+            -e s:"%DEBUG_FFLAGS    .*.$":"%DEBUG_FFLAGS        $OPTDEB":1 \
+            -e s:"%BASE_FFLAGS     .*.$":"%BASE_FFLAGS         $OPTPREC":1 \
+            -e s:"%BASE_LD         .*.$":"%BASE_LD             $BASE_LD":1 \
+            -e s:"%ARFLAGS         .*.$":"%ARFLAGS             $ARFLAGS":1 \
+            arch-gfortran.fcm > arch-local.fcm
+        echo "NETCDF_LIBDIR=\"-L${ncdfdir}/lib -lnetcdff -lnetcdf\"" \
+             > arch-local.path
+        echo "NETCDF_INCDIR=${ncdfdir}/include" >> arch-local.path
+        echo "IOIPSL_INCDIR=$ORCHPATH/../../lib" >> arch-local.path
+        echo "IOIPSL_LIBDIR=$ORCHPATH/../../lib" >> arch-local.path
+        echo 'XIOS_INCDIR=${ORCHDIR}/../XIOS/inc' >> arch-local.path
+        echo 'XIOS_LIBDIR="${ORCHDIR}/../XIOS/lib -lxios"' >> arch-local.path
+        cd ../
+
+        echo ./makeorchidee_fcm -j $xios_orchid $opt_orc -parallel none \
+             -arch $arch
+        ./makeorchidee_fcm -j 8 $xios_orchid $opt_orc -parallel none \
+                           -arch $arch > $orchideelog 2>&1
+        pwd
     else # of "if [ -d tools ]"
-	if [ -d src_parallel ] ; then
-	    liste_src="parallel parameters global stomate sechiba driver"
-	    if [ "$veget_version" == "false" ] ; then
-		veget_version=orchidee2.0
-	    fi
-	fi
-	for d in $liste_src ; do
-	    src_d=src_$d
-	    echo src_d $src_d
-	    echo ls ; ls
-	    if [ ! -d $src_d ] ; then
-		echo Problem orchidee : no $src_d ; exit
-	    fi
-	    cd $src_d ; \rm -f *.mod make ; $make clean
-	    $make > $orchideelog 2>&1
-	    if [ "$compiler" = "$gfortran" -o "$compiler" = "mpif90" ] ; then
-		cp -f *.mod ../../../lib
-	    fi
-	    cd ..
-	done
+        if [ -d src_parallel ] ; then
+            liste_src="parallel parameters global stomate sechiba driver"
+            if [ "$veget_version" == "false" ] ; then
+                veget_version=orchidee2.0
+            fi
+        fi
+        for d in $liste_src ; do
+            src_d=src_$d
+            echo src_d $src_d
+            echo ls ; ls
+            if [ ! -d $src_d ] ; then
+                echo Problem orchidee : no $src_d ; exit
+            fi
+            cd $src_d ; \rm -f *.mod make ; $make clean
+            $make > $orchideelog 2>&1
+            if [ "$compiler" = "$gfortran" -o "$compiler" = "mpif90" ] ; then
+                cp -f *.mod ../../../lib
+            fi
+            cd ..
+        done
     fi # of "if [ -d tools ]"
     echo install_lmdz.sh orchidee_compil_seq_OK `date`
@@ -974,5 +957,5 @@
     # arch-local.path file
     echo "NETCDF_LIBDIR=\"-L${ncdfdir}/lib -lnetcdff -lnetcdf\"" \
-	 > arch-local.path
+         > arch-local.path
     echo "NETCDF_INCDIR=-I${ncdfdir}/include" >> arch-local.path
     echo 'NETCDF95_INCDIR=$LMDGCM/../../include' >> arch-local.path
@@ -986,7 +969,7 @@
 
     if [ $pcmac == 1 ] ; then
-	BASE_LD="$BASE_LD -Wl,-rpath,${ncdfdir}/lib"
+        BASE_LD="$BASE_LD -Wl,-rpath,${ncdfdir}/lib"
     else
-	BASE_LD="$BASE_LD -Wl,-rpath=${ncdfdir}/lib"
+        BASE_LD="$BASE_LD -Wl,-rpath=${ncdfdir}/lib"
     fi
     # Arch-local.fcm file (adapted from arch-linux-32bit.fcm)
@@ -994,13 +977,13 @@
     if [ $real = r8 ] ; then FPP_DEF=NC_DOUBLE ; else FPP_DEF="" ; fi
     sed -e s:"%COMPILER        .*.$":"%COMPILER            $compiler":1 \
-	-e s:"%LINK            .*.$":"%LINK                $compiler":1 \
-	-e s:"%PROD_FFLAGS     .*.$":"%PROD_FFLAGS         $OPTIM":1 \
-	-e s:"%DEV_FFLAGS      .*.$":"%DEV_FFLAGS          $OPTDEV":1 \
-	-e s:"%DEBUG_FFLAGS    .*.$":"%DEBUG_FFLAGS        $OPTDEB":1 \
-	-e s:"%BASE_FFLAGS     .*.$":"%BASE_FFLAGS         $OPTPREC":1 \
-	-e s:"%FPP_DEF         .*.$":"%FPP_DEF             $FPP_DEF":1 \
-	-e s:"%BASE_LD         .*.$":"%BASE_LD             $BASE_LD":1 \
-	-e s:"%ARFLAGS         .*.$":"%ARFLAGS             $ARFLAGS":1 \
-	arch-linux-32bit.fcm > arch-local.fcm
+        -e s:"%LINK            .*.$":"%LINK                $compiler":1 \
+        -e s:"%PROD_FFLAGS     .*.$":"%PROD_FFLAGS         $OPTIM":1 \
+        -e s:"%DEV_FFLAGS      .*.$":"%DEV_FFLAGS          $OPTDEV":1 \
+        -e s:"%DEBUG_FFLAGS    .*.$":"%DEBUG_FFLAGS        $OPTDEB":1 \
+        -e s:"%BASE_FFLAGS     .*.$":"%BASE_FFLAGS         $OPTPREC":1 \
+        -e s:"%FPP_DEF         .*.$":"%FPP_DEF             $FPP_DEF":1 \
+        -e s:"%BASE_LD         .*.$":"%BASE_LD             $BASE_LD":1 \
+        -e s:"%ARFLAGS         .*.$":"%ARFLAGS             $ARFLAGS":1 \
+        arch-linux-32bit.fcm > arch-local.fcm
 
     cd ..
@@ -1026,5 +1009,5 @@
     if [ $? = 0 ] ; then
         svn switch --relocate http://svn.lmd.jussieu.fr/LMDZ \
-	    https://svn.lmd.jussieu.fr/LMDZ
+            https://svn.lmd.jussieu.fr/LMDZ
     fi
     svn update $svnopt
@@ -1052,9 +1035,9 @@
     oldrad) iflag_rrtm=0 ; NSW=2 ; opt_rad="" ;;
     rrtm)   iflag_rrtm=1 ; NSW=6
-	    if [ $mysvn -le 4185 ] ; then
-		opt_rad="-rrtm true"
-	    else
-		opt_rad="-rad rrtm"
-	    fi ;;
+            if [ $mysvn -le 4185 ] ; then
+                opt_rad="-rrtm true"
+            else
+                opt_rad="-rad rrtm"
+            fi ;;
     ecrad)  iflag_rrtm=2 ; NSW=6 ; opt_rad="-rad ecrad" ;;
     *) echo Only oldrad rrtm ecrad for rad option ; exit
@@ -1078,5 +1061,5 @@
     cd build
     cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$ncdfdir \
-	  -DCMAKE_INSTALL_PREFIX=$MODEL/modipsl
+          -DCMAKE_INSTALL_PREFIX=$MODEL/modipsl
     make install
     cd $MODEL/modipsl/modeles/LMDZ*
@@ -1104,13 +1087,13 @@
     echo Sequential compilation command, saved in compile.sh:
     echo "./$makelmdz $optim $OPT_MAKELMDZ $optim $opt_rad $opt_cosp " \
-	 "-d ${grid_resolution} -v $veget_version gcm "
+         "-d ${grid_resolution} -v $veget_version gcm "
     echo "./$makelmdz $optim $OPT_MAKELMDZ $optim $opt_rad $opt_cosp " \
-	 "-d ${grid_resolution} -v $veget_version gcm " > compile.sh
+         "-d ${grid_resolution} -v $veget_version gcm " > compile.sh
     chmod +x ./compile.sh
     if [ $bench = 1 ] ; then
-	echo install_lmdz.sh start_lmdz_seq_compilation `date`
-	echo log file: $lmdzlog
-	./compile.sh > $lmdzlog 2>&1
-	echo install_lmdz.sh end_lmdz_seq_compilation `date`
+        echo install_lmdz.sh start_lmdz_seq_compilation `date`
+        echo log file: $lmdzlog
+        ./compile.sh > $lmdzlog 2>&1
+        echo install_lmdz.sh end_lmdz_seq_compilation `date`
     fi
 fi # fin sequential
@@ -1131,38 +1114,38 @@
     cd $ORCHPATH
     if [ -d src_parallel -a $veget != 'NONE' ] ; then
-	cd arch
-	sed  \
-	    -e s:"%COMPILER.*.$":"%COMPILER            $par_comp":1 \
-	    -e s:"%LINK.*.$":"%LINK                $par_comp":1 \
-	    -e s:"%MPI_FFLAG.*.$":"%MPI_FFLAGS          $MPI_FLAGS":1 \
-	    -e s:"%OMP_FFLAG.*.$":"%OMP_FFLAGS          $OMP_FLAGS":1 \
-	    -e s:"%MPI_LD.*.$":"%MPI_LD              $MPI_LD":1 \
-	    -e s:"%OMP_LD.*.$":"%OMP_LD              $OMP_LD":1 \
-	    arch-local.fcm > tmp.fcm
-
-	mv tmp.fcm arch-local.fcm
-	cd ../
-	echo Compiling ORCHIDEE in parallel mode `date`
-	echo logfile $orchideelog
-	echo "NOTE : to recompile it when necessary, use ./compile_orc.sh " \
-	     "in modipsl/modeles/ORCHIDEE"
-	echo ./makeorchidee_fcm -j 8 -clean $xios_orchid $opt_orc \
-	     -parallel $parallel -arch $arch > compile_orc.sh
-	echo ./makeorchidee_fcm -j 8 $xios_orchid $opt_orc \
-	     -parallel $parallel -arch $arch >> compile_orc.sh
-	echo echo Now you must also recompile LMDZ, by running ./compile.sh \
-	     in modeles/LMDZ >> compile_orc.sh
-	chmod u+x compile_orc.sh
-	./makeorchidee_fcm -j 8 -clean $xios_orchid $opt_orc \
-			   -parallel $parallel -arch $arch > $orchideelog 2>&1
-	./makeorchidee_fcm -j 8 $xios_orchid $opt_orc -parallel $parallel \
-			   -arch $arch >> $orchideelog 2>&1
-	echo End of ORCHIDEE compilation in parallel mode `date`
+        cd arch
+        sed  \
+            -e s:"%COMPILER.*.$":"%COMPILER            $par_comp":1 \
+            -e s:"%LINK.*.$":"%LINK                $par_comp":1 \
+            -e s:"%MPI_FFLAG.*.$":"%MPI_FFLAGS          $MPI_FLAGS":1 \
+            -e s:"%OMP_FFLAG.*.$":"%OMP_FFLAGS          $OMP_FLAGS":1 \
+            -e s:"%MPI_LD.*.$":"%MPI_LD              $MPI_LD":1 \
+            -e s:"%OMP_LD.*.$":"%OMP_LD              $OMP_LD":1 \
+            arch-local.fcm > tmp.fcm
+
+        mv tmp.fcm arch-local.fcm
+        cd ../
+        echo Compiling ORCHIDEE in parallel mode `date`
+        echo logfile $orchideelog
+        echo "NOTE : to recompile it when necessary, use ./compile_orc.sh " \
+             "in modipsl/modeles/ORCHIDEE"
+        echo ./makeorchidee_fcm -j 8 -clean $xios_orchid $opt_orc \
+             -parallel $parallel -arch $arch > compile_orc.sh
+        echo ./makeorchidee_fcm -j 8 $xios_orchid $opt_orc \
+             -parallel $parallel -arch $arch >> compile_orc.sh
+        echo echo Now you must also recompile LMDZ, by running ./compile.sh \
+             in modeles/LMDZ >> compile_orc.sh
+        chmod u+x compile_orc.sh
+        ./makeorchidee_fcm -j 8 -clean $xios_orchid $opt_orc \
+                           -parallel $parallel -arch $arch > $orchideelog 2>&1
+        ./makeorchidee_fcm -j 8 $xios_orchid $opt_orc -parallel $parallel \
+                           -arch $arch >> $orchideelog 2>&1
+        echo End of ORCHIDEE compilation in parallel mode `date`
     elif [ $veget != 'NONE' ] ; then
-	echo '##########################################################'
-	echo ' Orchidee version too old                                 '
-	echo ' Please update to new version                             '
-	echo '##########################################################'
-	exit
+        echo '##########################################################'
+        echo ' Orchidee version too old                                 '
+        echo ' Please update to new version                             '
+        echo '##########################################################'
+        exit
     fi # of [ -d src_parallel -a $veget != 'NONE' ]
 
@@ -1170,16 +1153,16 @@
     cd $LMDZPATH
     if [ $arch = local ] ; then
-	cd arch
-	sed -e s:"%COMPILER.*.$":"%COMPILER            $par_comp":1 \
-	    -e s:"%LINK.*.$":"%LINK                $par_comp":1 \
-	    -e s:"%MPI_FFLAG.*.$":"%MPI_FFLAGS          $MPI_FLAGS":1 \
-	    -e s:"%OMP_FFLAG.*.$":"%OMP_FFLAGS          $OMP_FLAGS":1 \
-	    -e s:"%ARFLAGS.*.$":"%ARFLAGS          $ARFLAGS":1 \
-	    -e s@"%BASE_LD.*.$"@"%BASE_LD             -Wl,-rpath=${root_mpi}/lib:${ncdfdir}/lib"@1 \
-	    -e s:"%MPI_LD.*.$":"%MPI_LD              $MPI_LD":1 \
-	    -e s:"%OMP_LD.*.$":"%OMP_LD              $OMP_LD":1 \
-	    arch-local.fcm > tmp.fcm
-	mv tmp.fcm arch-local.fcm
-	cd ../
+        cd arch
+        sed -e s:"%COMPILER.*.$":"%COMPILER            $par_comp":1 \
+            -e s:"%LINK.*.$":"%LINK                $par_comp":1 \
+            -e s:"%MPI_FFLAG.*.$":"%MPI_FFLAGS          $MPI_FLAGS":1 \
+            -e s:"%OMP_FFLAG.*.$":"%OMP_FFLAGS          $OMP_FLAGS":1 \
+            -e s:"%ARFLAGS.*.$":"%ARFLAGS          $ARFLAGS":1 \
+            -e s@"%BASE_LD.*.$"@"%BASE_LD             -Wl,-rpath=${root_mpi}/lib:${ncdfdir}/lib"@1 \
+            -e s:"%MPI_LD.*.$":"%MPI_LD              $MPI_LD":1 \
+            -e s:"%OMP_LD.*.$":"%OMP_LD              $OMP_LD":1 \
+            arch-local.fcm > tmp.fcm
+        mv tmp.fcm arch-local.fcm
+        cd ../
     fi
     rm -f compile.sh
@@ -1187,29 +1170,29 @@
     if [ ${hostname:0:5} = jean- -a "$cosp" = "v2" ] ; then
 
-	echo LMDZ compilation command in parallel mode, saved in compile.sh, \
-	     is :
-	echo "(ATTENTION le probleme de cospv2 sur jean-zay en mode prod " \
-	     "n est pas corrige ! )"
-	# ATTENTION le probleme de cospv2 sur jean-zay en mode prod n
-	# est pas corrige
-	echo ./$makelmdz -dev $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
-	     $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
-	     -parallel $parallel gcm >> compile.sh
-	echo ./$makelmdz -dev $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
-	     $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
-	     -parallel $parallel gcm
+        echo LMDZ compilation command in parallel mode, saved in compile.sh, \
+             is :
+        echo "(ATTENTION le probleme de cospv2 sur jean-zay en mode prod " \
+             "n est pas corrige ! )"
+        # ATTENTION le probleme de cospv2 sur jean-zay en mode prod n
+        # est pas corrige
+        echo ./$makelmdz -dev $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
+             $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
+             -parallel $parallel gcm >> compile.sh
+        echo ./$makelmdz -dev $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
+             $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
+             -parallel $parallel gcm
     else
-	echo ./$makelmdz $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
-	     $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
-	     -parallel $parallel gcm >> compile.sh
-	echo ./$makelmdz $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
-	     $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
-	     -parallel $parallel gcm
+        echo ./$makelmdz $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
+             $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
+             -parallel $parallel gcm >> compile.sh
+        echo ./$makelmdz $optim $OPT_MAKELMDZ $opt_rad $opt_cosp \
+             $opt_makelmdz_xios -d \$resol -v $veget_version -mem \
+             -parallel $parallel gcm
     fi
     chmod +x ./compile.sh
 
     if [ $bench = 1 ] ; then
-	echo Compiling LMDZ in parallel mode `date`,  LMDZ log file: $lmdzlog
-	./compile.sh > $lmdzlog 2>&1
+        echo Compiling LMDZ in parallel mode `date`,  LMDZ log file: $lmdzlog
+        ./compile.sh > $lmdzlog 2>&1
     fi
 
@@ -1233,8 +1216,8 @@
 if [ "$gcm" = "" ] ; then
     if [ $bench = 1 ] ; then
-	echo 'Compilation failed !! Cannot run the benchmark;'
-	exit
+        echo 'Compilation failed !! Cannot run the benchmark;'
+        exit
     else
-	echo 'Compilation not done (only done when bench=1)'
+        echo 'Compilation not done (only done when bench=1)'
     fi
 else
@@ -1270,106 +1253,106 @@
 
     if [ "$cosp" = "v1" -o "$cosp" = "v2" ] ; then
-	cd BENCH${grid_resolution}
-	# copier les fichiers namelist input et output our COSP
-	cp ../DefLists/cosp*_input_nl.txt .
-	cp ../DefLists/cosp*_output_nl.txt .
-	# Activer la cles ok_cosp pour tourner avec COSP
-	sed -e 's@ok_cosp=n@ok_cosp=y@' config.def > tmp
-	\mv -f tmp config.def
-	cd ..
+        cd BENCH${grid_resolution}
+        # copier les fichiers namelist input et output our COSP
+        cp ../DefLists/cosp*_input_nl.txt .
+        cp ../DefLists/cosp*_output_nl.txt .
+        # Activer la cles ok_cosp pour tourner avec COSP
+        sed -e 's@ok_cosp=n@ok_cosp=y@' config.def > tmp
+        \mv -f tmp config.def
+        cd ..
     fi
 
     if [ -n "$physiq" ]; then
-	cd BENCH${grid_resolution}
-	if [ -f physiq.def_${physiq} ]; then
-	    cp physiq.def_${physiq} physiq.def
-	    echo using physiq.def_${physiq}
-	else
-	    echo using standard physiq.def
-	fi
-	cd ..
+        cd BENCH${grid_resolution}
+        if [ -f physiq.def_${physiq} ]; then
+            cp physiq.def_${physiq} physiq.def
+            echo using physiq.def_${physiq}
+        else
+            echo using standard physiq.def
+        fi
+        cd ..
     else
-	echo using standard physiq.def
+        echo using standard physiq.def
     fi
 
     if [ "$with_xios" = "y" ] ; then
-	cd BENCH${grid_resolution}
-	cp ../DefLists/iodef.xml .
-	cp ../DefLists/context_lmdz.xml .
-	cp ../DefLists/field_def_lmdz.xml .
-	# A raffiner par la suite
-	echo A FAIRE : Copier les *xml en fonction de l option cosp
-	cp ../DefLists/field_def_cosp*.xml .
-	cp ../DefLists/file_def_hist*xml .
-	# adapt iodef.xml to use attached mode
-	sed -e 's@"using_server" type="bool">true@"using_server" type="bool">false@' \
-	    iodef.xml > tmp
-	\mv -f tmp iodef.xml
-
-	# and convert all the enabled="_AUTO_" (for libIGCM) to enabled=.FALSE.
-	# except for histday
-	for histfile in file_def_hist*xml
-	do
-	    if [ "$histfile" = "file_def_histday_lmdz.xml" ] ; then
-		sed -e 's@enabled="_AUTO_"@type="one_file" enabled=".TRUE."@' \
-		    $histfile > tmp
-		\mv -f tmp $histfile
-		sed -e 's@output_level="_AUTO_"@output_level="5"@' $histfile \
-		    > tmp
-		\mv -f tmp $histfile
-		sed -e 's@compression_level="2"@compression_level="0"@' \
-		    $histfile > tmp
-		\mv -f tmp $histfile
-	    else
-		sed -e 's@enabled="_AUTO_"@type="one_file" enabled=".FALSE."@' \
-		    $histfile > tmp
-		\mv -f tmp $histfile
-	    fi
-	done
-	# and add option "ok_all_xml=y" in config.def
-	echo "### XIOS outputs" >> config.def
-	echo 'ok_all_xml=.true.' >> config.def
-
-	#activer les sorties pour Cosp
-	if [ "$cosp" = "v1" ] ; then
-	    histfile=file_def_histdayCOSP_lmdz.xml
-	    sed -e 's@enabled=".FALSE."@enabled=".TRUE."@' $histfile > tmp
-	    \mv -f tmp $histfile
-	    sed -e 's@output_level="_AUTO_"@output_level="5"@' $histfile > tmp
-	    \mv -f tmp $histfile
-	    sed -e 's@compression_level="2"@compression_level="0"@' \
-		$histfile > tmp
-	    \mv -f tmp $histfile
-	fi
-	if [ "$cosp" = "v2" ] ; then
-	    histfile=file_def_histdayCOSPv2_lmdz.xml
-	    sed -e 's@compression_level="2"@compression_level="0"@' \
-		$histfile > tmp
-	    \mv -f tmp $histfile
-	    contextfile=context_lmdz.xml
-	    sed -e 's@src="./file_def_histdayCOSP_lmdz.xml"@src="./file_def_histdayCOSPv2_lmdz.xml"@' \
-		$contextfile > tmp
-	    \mv -f tmp $contextfile
-	    sed -e 's@src="./file_def_histmthCOSP_lmdz.xml"@src="./file_def_histmthCOSPv2_lmdz.xml"@' \
-		$contextfile > tmp
-	    \mv -f tmp $contextfile
-	    sed -e 's@src="./file_def_histhfCOSP_lmdz.xml"@src="./file_def_histhfCOSPv2_lmdz.xml"@' \
-		$contextfile > tmp
-	    \mv -f tmp $contextfile
-	    fieldfile=field_def_lmdz.xml
-	    sed -e 's@field_def_cosp1.xml@field_def_cospv2.xml@' $fieldfile \
-		> tmp
-	    \mv -f tmp $fieldfile
-	fi
-
-	cd ..
+        cd BENCH${grid_resolution}
+        cp ../DefLists/iodef.xml .
+        cp ../DefLists/context_lmdz.xml .
+        cp ../DefLists/field_def_lmdz.xml .
+        # A raffiner par la suite
+        echo A FAIRE : Copier les *xml en fonction de l option cosp
+        cp ../DefLists/field_def_cosp*.xml .
+        cp ../DefLists/file_def_hist*xml .
+        # adapt iodef.xml to use attached mode
+        sed -e 's@"using_server" type="bool">true@"using_server" type="bool">false@' \
+            iodef.xml > tmp
+        \mv -f tmp iodef.xml
+
+        # and convert all the enabled="_AUTO_" (for libIGCM) to enabled=.FALSE.
+        # except for histday
+        for histfile in file_def_hist*xml
+        do
+            if [ "$histfile" = "file_def_histday_lmdz.xml" ] ; then
+                sed -e 's@enabled="_AUTO_"@type="one_file" enabled=".TRUE."@' \
+                    $histfile > tmp
+                \mv -f tmp $histfile
+                sed -e 's@output_level="_AUTO_"@output_level="5"@' $histfile \
+                    > tmp
+                \mv -f tmp $histfile
+                sed -e 's@compression_level="2"@compression_level="0"@' \
+                    $histfile > tmp
+                \mv -f tmp $histfile
+            else
+                sed -e 's@enabled="_AUTO_"@type="one_file" enabled=".FALSE."@' \
+                    $histfile > tmp
+                \mv -f tmp $histfile
+            fi
+        done
+        # and add option "ok_all_xml=y" in config.def
+        echo "### XIOS outputs" >> config.def
+        echo 'ok_all_xml=.true.' >> config.def
+
+        #activer les sorties pour Cosp
+        if [ "$cosp" = "v1" ] ; then
+            histfile=file_def_histdayCOSP_lmdz.xml
+            sed -e 's@enabled=".FALSE."@enabled=".TRUE."@' $histfile > tmp
+            \mv -f tmp $histfile
+            sed -e 's@output_level="_AUTO_"@output_level="5"@' $histfile > tmp
+            \mv -f tmp $histfile
+            sed -e 's@compression_level="2"@compression_level="0"@' \
+                $histfile > tmp
+            \mv -f tmp $histfile
+        fi
+        if [ "$cosp" = "v2" ] ; then
+            histfile=file_def_histdayCOSPv2_lmdz.xml
+            sed -e 's@compression_level="2"@compression_level="0"@' \
+                $histfile > tmp
+            \mv -f tmp $histfile
+            contextfile=context_lmdz.xml
+            sed -e 's@src="./file_def_histdayCOSP_lmdz.xml"@src="./file_def_histdayCOSPv2_lmdz.xml"@' \
+                $contextfile > tmp
+            \mv -f tmp $contextfile
+            sed -e 's@src="./file_def_histmthCOSP_lmdz.xml"@src="./file_def_histmthCOSPv2_lmdz.xml"@' \
+                $contextfile > tmp
+            \mv -f tmp $contextfile
+            sed -e 's@src="./file_def_histhfCOSP_lmdz.xml"@src="./file_def_histhfCOSPv2_lmdz.xml"@' \
+                $contextfile > tmp
+            \mv -f tmp $contextfile
+            fieldfile=field_def_lmdz.xml
+            sed -e 's@field_def_cosp1.xml@field_def_cospv2.xml@' $fieldfile \
+                > tmp
+            \mv -f tmp $fieldfile
+        fi
+
+        cd ..
     fi
 
     # Cas Bensh avec ecrad
     if [ "$rad" = "ecrad" ] ; then
-	cd BENCH${grid_resolution}
-	cp  ../DefLists/namelist_ecrad .
-	cp -r ../libf/phylmd/ecrad/data .
-	cd ..
+        cd BENCH${grid_resolution}
+        cp  ../DefLists/namelist_ecrad .
+        cp -r ../libf/phylmd/ecrad/data .
+        cd ..
     fi
 
@@ -1377,5 +1360,5 @@
     cd BENCH${grid_resolution}
     sed -e 's/iflag_rrtm=.*.$/iflag_rrtm='$iflag_rrtm'/' \
-	-e 's/NSW=.*.$/NSW='$NSW'/' physiq.def > tmpdef
+        -e 's/NSW=.*.$/NSW='$NSW'/' physiq.def > tmpdef
     \mv tmpdef physiq.def
     cd ..
@@ -1388,90 +1371,90 @@
 
     if [ "$grid_resolution" = "48x36x39" ] ; then
-	echo On ne touche pas au bench.sh
-	# But we have to adapt "run_local.sh" for $mpirun
-	sed -e "s@mpirun@$mpirun@g" run_local.sh > tmp
-	mv -f tmp run_local.sh
-	chmod u=rwx run_local.sh
+        echo On ne touche pas au bench.sh
+        # But we have to adapt "run_local.sh" for $mpirun
+        sed -e "s@mpirun@$mpirun@g" run_local.sh > tmp
+        mv -f tmp run_local.sh
+        chmod u=rwx run_local.sh
     elif [ "${parallel:0:3}" = "mpi" ] ; then
-	# Lancement avec deux procs mpi et 2 openMP
-	echo "export OMP_STACKSIZE=800M" > bench.sh
-	if [ "${parallel:4:3}" = "omp" ] ; then
+        # Lancement avec deux procs mpi et 2 openMP
+        echo "export OMP_STACKSIZE=800M" > bench.sh
+        if [ "${parallel:4:3}" = "omp" ] ; then
             echo "export OMP_NUM_THREADS=2" >> bench.sh
-	fi
-	if [ "$cosp" = "v1" -o "$cosp" = "v2" ] ; then
+        fi
+        if [ "$cosp" = "v1" -o "$cosp" = "v2" ] ; then
             if [ ${hostname:0:5} = jean- ] ; then
-   		chmod +x ../arch.env
-		../arch.env	
-		echo "ulimit -s 2000000" >> bench.sh
+                   chmod +x ../arch.env
+                ../arch.env        
+                echo "ulimit -s 2000000" >> bench.sh
             else
-		echo "ulimit -s 200000" >> bench.sh
-            fi	
-	else
+                echo "ulimit -s 200000" >> bench.sh
+            fi        
+        else
             echo "ulimit -s unlimited" >> bench.sh
-	fi
-	if [ ${hostname:0:5} = jean- ] ; then
+        fi
+        if [ ${hostname:0:5} = jean- ] ; then
             . ../arch/arch-${arch}.env
             echo "srun -n 2 -A $idris_acct@cpu gcm.e > listing  2>&1" \
-		 >> bench.sh
-	else
+                 >> bench.sh
+        else
             echo "$mpirun -np 2 gcm.e > listing  2>&1" >> bench.sh
-	fi
-	# Add rebuild, using reb.sh if it is there
-	echo 'if [ -f reb.sh ] ; then' >> bench.sh
-	echo '  ./reb.sh histday ; ./reb.sh histmth ; ./reb.sh histhf ; ' \
-	     './reb.sh histins ; ./reb.sh stomate_history ; ' \
-	     './reb.sh sechiba_history ; ./reb.sh sechiba_out_2 ' >> bench.sh
-	echo 'fi' >> bench.sh
+        fi
+        # Add rebuild, using reb.sh if it is there
+        echo 'if [ -f reb.sh ] ; then' >> bench.sh
+        echo '  ./reb.sh histday ; ./reb.sh histmth ; ./reb.sh histhf ; ' \
+             './reb.sh histins ; ./reb.sh stomate_history ; ' \
+             './reb.sh sechiba_history ; ./reb.sh sechiba_out_2 ' >> bench.sh
+        echo 'fi' >> bench.sh
     else
-	echo "./gcm.e > listing  2>&1" > bench.sh
+        echo "./gcm.e > listing  2>&1" > bench.sh
     fi
     # Getting orchidee stuff
     if [ $veget == 'CMIP6' ] ; then
-	#echo 'myget 3DBenchs/BENCHorch11.tar.gz'
-	#myget 3DBenchs/BENCHorch11.tar.gz
-	#tar xvzf BENCHorch11.tar.gz
-	echo 'myget 3DBenchs/BENCHCMIP6.tar.gz'
-	myget 3DBenchs/BENCHCMIP6.tar.gz
-	tar xvzf BENCHCMIP6.tar.gz
-	sed -e "s:VEGET=n:VEGET=y:" config.def > tmp
-	mv -f tmp config.def
-	if [ "$with_xios" = "y" ] ; then
+        #echo 'myget 3DBenchs/BENCHorch11.tar.gz'
+        #myget 3DBenchs/BENCHorch11.tar.gz
+        #tar xvzf BENCHorch11.tar.gz
+        echo 'myget 3DBenchs/BENCHCMIP6.tar.gz'
+        myget 3DBenchs/BENCHCMIP6.tar.gz
+        tar xvzf BENCHCMIP6.tar.gz
+        sed -e "s:VEGET=n:VEGET=y:" config.def > tmp
+        mv -f tmp config.def
+        if [ "$with_xios" = "y" ] ; then
             cp ../../ORCHIDEE/src_xml/context_orchidee.xml .
             echo '<context id="orchidee" src="./context_orchidee.xml"/>' \
-		 > add.tmp
+                 > add.tmp
             cp ../../ORCHIDEE/src_xml/field_def_orchidee.xml .
             cp ../../ORCHIDEE/src_xml/file_def_orchidee.xml .
             cp ../../ORCHIDEE/src_xml/file_def_input_orchidee.xml .
             if [ -f ../../ORCHIDEE/src_xml/context_input_orchidee.xml ] ; then
-   		cp ../../ORCHIDEE/src_xml/context_input_orchidee.xml .
-   		echo '<context id="orchidee" ' \
-		     'src="./context_input_orchidee.xml"/>' >> add.tmp
+                   cp ../../ORCHIDEE/src_xml/context_input_orchidee.xml .
+                   echo '<context id="orchidee" ' \
+                     'src="./context_input_orchidee.xml"/>' >> add.tmp
             fi
             sed -e '/id="LMDZ"/r add.tmp' iodef.xml > tmp
             mv tmp iodef.xml
             sed -e'{/sechiba1/ s/enabled="_AUTO_"/type="one_file" enabled=".TRUE."/}' \
-		file_def_orchidee.xml > tmp
-	    \mv -f tmp file_def_orchidee.xml
+                file_def_orchidee.xml > tmp
+            \mv -f tmp file_def_orchidee.xml
             sed -e 's@enabled="_AUTO_"@type="one_file" enabled=".FALSE."@' \
-		file_def_orchidee.xml > tmp
-	    \mv -f tmp file_def_orchidee.xml
+                file_def_orchidee.xml > tmp
+            \mv -f tmp file_def_orchidee.xml
             sed -e 's@output_level="_AUTO_"@output_level="1"@' \
-		file_def_orchidee.xml > tmp
-	    \mv -f tmp file_def_orchidee.xml
+                file_def_orchidee.xml > tmp
+            \mv -f tmp file_def_orchidee.xml
             sed -e 's@output_freq="_AUTO_"@output_freq="1d"@' \
-		file_def_orchidee.xml > tmp
-	    \mv -f tmp file_def_orchidee.xml
+                file_def_orchidee.xml > tmp
+            \mv -f tmp file_def_orchidee.xml
             sed -e 's@compression_level="4"@compression_level="0"@' \
-		file_def_orchidee.xml > tmp
-	    \mv -f tmp file_def_orchidee.xml
+                file_def_orchidee.xml > tmp
+            \mv -f tmp file_def_orchidee.xml
             sed -e 's@XIOS_ORCHIDEE_OK = n@XIOS_ORCHIDEE_OK = y@' \
-		orchidee.def > tmp
-	    \mv -f tmp orchidee.def
-	fi
+                orchidee.def > tmp
+            \mv -f tmp orchidee.def
+        fi
     fi
 
     if [[ -f ../arch.env ]]
     then
-	source ../arch.env
+        source ../arch.env
     fi
 
@@ -1488,13 +1471,13 @@
     cat ../compile.sh
     if [ $parallel = "none" ] ; then
-	echo 'You may re-run it with : cd ' `pwd` ' ; gcm.e'
-	echo 'or ./bench.sh'
+        echo 'You may re-run it with : cd ' `pwd` ' ; gcm.e'
+        echo 'or ./bench.sh'
     else
-	echo 'You may re-run it with : '
-	echo 'cd ' `pwd` '; ./bench.sh'
-	#  echo 'ulimit -s unlimited'
-	#  echo 'export OMP_NUM_THREADS=2'
-	#  echo 'export OMP_STACKSIZE=800M'
-	#  echo "$mpirun -np 2 gcm.e "
+        echo 'You may re-run it with : '
+        echo 'cd ' `pwd` '; ./bench.sh'
+        #  echo 'ulimit -s unlimited'
+        #  echo 'export OMP_NUM_THREADS=2'
+        #  echo 'export OMP_STACKSIZE=800M'
+        #  echo "$mpirun -np 2 gcm.e "
     fi
     echo '##########################################################'
Index: /BOL/script_install/install_netcdf4_hdf5.bash
===================================================================
--- /BOL/script_install/install_netcdf4_hdf5.bash	(revision 4405)
+++ /BOL/script_install/install_netcdf4_hdf5.bash	(revision 4405)
@@ -0,0 +1,180 @@
+#!/bin/bash 
+#########################################################################
+# Defaults
+#########################################################################
+install_dir=$(pwd)
+c_compiler=gcc
+f_compiler=gfortran
+cxx_compiler=g++
+mpi_home="/usr/lib64/openmpi"
+#########################################################################
+#  Options 
+#########################################################################
+while (($# > 0))
+   do
+   case $1 in
+     "-h") cat <<........fin
+    $0 [ -prefix path ]       where (path) to install
+                              (default: $install_dir)
+       [ -CC compiler ]       C compiler to use
+                              (default: $c_compiler)
+       [ -FC compiler ]       Fortran compiler to use
+                              (default: $f_compiler)
+       [ -CXX compiler ]      C++ compiler to use
+                              (default: $cxx_compiler)
+       [ -MPI path ]          top directory of the MPI library
+                              (default: $mpi_home)
+........fin
+     exit ;;
+     "-prefix") install_dir=$2 ; shift ; shift ;;
+     "-CC") c_compiler=$2 ; shift ; shift ;;
+     "-FC") f_compiler=$2 ; shift ; shift ;;
+     "-CXX") cxx_compiler=$2 ; shift ; shift ;;
+     "-MPI") mpi_home=$2 ; shift ; shift ;;
+     *) echo "Error, bad argument $1" ; $0 -h ; exit
+   esac
+done
+
+# Install directory (get full path)
+mkdir -p $install_dir
+install_dir=$(cd $install_dir ; pwd -P )
+
+# Install location for packages
+mkdir -p $install_dir/src
+
+# CURL
+APP=curl-7.26.0
+CURL_PATH=$install_dir/$APP
+rm -rf $CURL_PATH 
+cd $install_dir/src 
+rm -rf curl-7.26.0* 
+#wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4/curl-7.26.0.tar.gz
+wget -nv --no-check-certificate http://lmdz.lmd.jussieu.fr/pub/src_archives/curl-7.26.0.tar.gz
+tar xvf curl-7.26.0.tar.gz ; cd curl-7.26.0
+export CC=$c_compiler
+./configure \
+--prefix=$install_dir | tee $APP.config.log
+make 2>&1 | tee $APP.make.log
+make install 2>&1 | tee $APP.install.log
+
+# ZLIB
+APP=zlib-1.2.8
+ZLIB_PATH=$install_dir/$APP 
+rm -rf $ZLIB_PATH 
+cd $install_dir/src 
+rm -rf zlib-1.2.8* 
+#wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4/zlib-1.2.8.tar.gz
+wget -nv --no-check-certificate http://www.lmd.jussieu.fr/~lmdz/Distrib/zlib-1.2.8.tar.gz
+tar zxf zlib-1.2.8.tar.gz ; cd zlib-1.2.8
+export CC=$c_compiler
+export FC=$f_compiler
+export CXX=$cxx_compiler 
+./configure \
+--prefix=$install_dir | tee $APP.config.log
+make 2>&1 | tee $APP.make.log
+make check 2>&1 | tee $APP.make_check.log
+make install 2>&1 | tee $APP.install.log
+
+# HDF5
+APP=hdf5-1.10.7
+HDF5_PATH=$install_dir/$APP 
+rm -rf $HDF5_PATH 
+cd $install_dir/src 
+rm -rf ${APP}* 
+#wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4/hdf5-1.8.13.tar.gz
+wget -nv --no-check-certificate http://www.lmd.jussieu.fr/~lmdz/Distrib/$APP.tar.gz
+tar xzf $APP.tar.gz ; cd $APP
+export PATH=$mpi_home/bin:$PATH
+if [[ ${LD_LIBRARY_PATH} == '' ]]
+then
+  export LD_LIBRARY_PATH=$mpi_home/lib
+else
+  export LD_LIBRARY_PATH=$mpi_home/lib:${LD_LIBRARY_PATH}
+fi
+export CFLAGS="-I$mpi_home/include -m64"
+export LDFLAGS="-L$mpi_home/lib -lmpi"
+export MPI_BIN=$mpi_home/bin
+export MPI_SYSCONFIG=$mpi_home/etc
+export MPI_FORTRAN_MOD_DIR=$mpi_home/lib
+export MPI_INCLUDE=$mpi_home/include
+export MPI_LIB=$mpi_home/lib
+export MPI_HOME=$mpi_home
+export CC=mpicc
+export FC=mpif90
+export CXX=mpiCC 
+./configure \
+--prefix=$install_dir \
+--enable-fortran \
+--enable-parallel \
+--with-zlib=$install_dir  \
+--with-pic 2>&1 | tee $APP.config.log
+make 2>&1 | tee $APP.make.log
+#make check 2>&1 | tee $APP.make_check.log
+make install 2>&1 | tee $APP.install.log
+
+# NetCDF4
+APP=netcdf-4.3.3.1
+NETCDF4_PATH=$install_dir/$APP
+rm -rf $NETCDF4_PATH 
+cd $install_dir/src 
+rm -rf netcdf-4.3.3.1* 
+#wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.3.1.tar.gz
+wget -nv --no-check-certificate http://www.lmd.jussieu.fr/~lmdz/Distrib/netcdf-4.3.3.1.tar.gz
+tar xzf netcdf-4.3.3.1.tar.gz ; cd netcdf-4.3.3.1 
+export LDFLAGS="-L${install_dir}/lib -L${mpi_home}/lib -lmpi"
+export CFLAGS="-I${install_dir}/include/curl -I${install_dir}/include"
+export LD_LIBRARY_PATH="${install_dir}/lib:${LD_LIBRARY_PATH}"
+CC=mpicc ./configure \
+--prefix=${install_dir} \
+--enable-static \
+--enable-shared \
+--enable-netcdf4 \
+--enable-dap \
+--with-pic 2>&1 | tee $APP.config.log
+make 2>&1 | tee $APP.make.log
+make check 2>&1 | tee $APP.make_check.log
+make install 2>&1 | tee $APP.install.log
+
+# NetCDF4-Fortran
+APP=netcdf-fortran-4.4.2
+NETCDF4_FORTRAN_PATH=${install_dir}/$APP
+rm -rf $NETCDF4_FORTRAN_PATH
+cd ${install_dir}/src 
+rm -rf netcdf-fortran-4.4.2* 
+#wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-fortran-4.4.2.tar.gz
+wget -nv --no-check-certificate http://www.lmd.jussieu.fr/~lmdz/Distrib/netcdf-fortran-4.4.2.tar.gz
+tar xzf netcdf-fortran-4.4.2.tar.gz ; cd netcdf-fortran-4.4.2
+#export LD_LIBRARY_PATH=${install_dir}/lib:${LD_LIBRARY_PATH}
+export LDFLAGS="-L${install_dir}/lib -L${install_dir}/lib -L${mpi_home}/lib -lmpi"
+export CPPFLAGS="-I${install_dir}/include/curl -I${install_dir}/include"
+export CC=mpicc
+export FC=mpif90
+export F77=mpif77 
+export LDFLAGS=-L${install_dir}/lib 
+./configure \
+--prefix=${install_dir} 2>&1 | tee $APP.config.log
+make 2>&1 | tee $APP.make.log
+make check 2>&1 | tee $APP.make_check.log
+make install 2>&1 | tee $APP.install.log
+
+# NetCDF4-C++
+APP=netcdf-cxx4-4.2.1
+NETCDF4_CXX_PATH=${install_dir}/$APP
+rm -rf $NETCDF4_CXX_PATH
+cd ${install_dir}/src 
+rm -rf netcdf-cxx4-4.2.1* 
+#wget https://github.com/Unidata/netcdf-cxx4/archive/v4.2.1.tar.gz
+#mv v4.2.1.tar.gz netcdf-cxx4-4.2.1.tar.gz
+wget -nv --no-check-certificate http://www.lmd.jussieu.fr/~lmdz/Distrib/netcdf-cxx4-4.2.1.tar.gz
+tar xzf netcdf-cxx4-4.2.1.tar.gz ; cd netcdf-cxx4-4.2.1
+#export LD_LIBRARY_PATH=${install_dir}/lib:${LD_LIBRARY_PATH}
+export LDFLAGS="-L${install_dir}/lib -L${mpi_home}/lib -lmpi"
+export CPPFLAGS="-I${install_dir}/include/curl -I${install_dir}/include"
+export CC=mpicc
+export CXX=mpiCC
+export LDFLAGS=-L${install_dir}/lib
+./configure \
+--prefix=${install_dir} 2>&1 | tee $APP.config.log
+make 2>&1 | tee $APP.make.log
+make check 2>&1 | tee $APP.make_check.log
+make install 2>&1 | tee $APP.install.log
Index: /BOL/script_install/install_ubuntu22_packages.sh
===================================================================
--- /BOL/script_install/install_ubuntu22_packages.sh	(revision 4405)
+++ /BOL/script_install/install_ubuntu22_packages.sh	(revision 4405)
@@ -0,0 +1,118 @@
+#!/bin/bash
+
+################################################################
+# Complément d'installation Ubuntu22
+################################################################
+
+workspace_matrix=0
+
+install="sudo apt install -y"
+sudo apt update
+sudo apt upgrade
+
+# Base :
+# ======
+$install locate
+$install ncftp vim nfs-common
+# keychain semble Ãªtre devenu obsolÃ¨te.
+# ksh et csh inutile ?
+
+# Pour compilation dont LMDZ
+# ==========================
+$install cdo nco netcdf-bin libnetcdf-dev ncview   # netcdf
+$install gfortran g++ libblas-dev subversion git   # fortran et svn
+$install openmpi-common libopenmpi-dev openmpi-bin # openmpi
+$install make cmake
+
+
+# Pour HitghTune
+# ==============
+$install r-base
+$install pip
+$install python3-pip
+
+# bureautique
+# ===========
+$install xournal
+$install unoconv # conversion associee a libreoffice
+$install dos2unix
+$install qpdfview # un visualiseur remplissant mieux les pdf
+$install pdftk # Autre package de concatenation de pdf
+$install chromium-browser
+
+# LaTeX dont pdfjam
+# =================
+$install texlive-base texlive-latex-extra texlive-lang-french latexdiff  texlive-publishers
+$install latexmk texlive-science
+$install latex2html
+$install texlive-extra-utils texlive-font-utils # pdfjam
+
+# graphique / video
+# =================
+$install xfig grads imagemagick gv grace           # graphique
+$install ferret-vis
+$install inkscape gimp                             # dessin
+$install gifsicle
+$install ffmpeg
+$install winff  # autre convertisseur video
+
+# Finalisation de l'installation de ferret-vis
+# ============================================
+# Active le bon environnement pour ferret
+# Attention, pour que ca fonctionne completement (notamment le trace
+# des frontieres) il manque des données.
+# Pour le moment, on va chercher ces données dans le répertoire de
+# l'installation conda. On a donc une double installation
+sed -i'' -e '/ferret-vis/d' ~/.bashrc
+cat <<eod>> ~/.bashrc
+. /usr/share/ferret-vis/bin/ferret_paths # ferret-vis
+alias ferret=ferret_c
+export FER_DATA=". \$FER_DATA /home/util1/miniconda3/pkgs/ferret_datasets-7.4-1/share/fer_dsets/data" # ferret-vis
+eod
+
+
+
+
+# Outils systeme / collaboratifs
+# ==============================
+$install traceroute # aide systeme
+$install synaptic gdebi                            # install paquets
+$install tmate
+
+# Son
+#=====
+# $install audacity
+
+# Acroread
+# ========
+sudo dpkg --add-architecture i386
+$install libxml2:i386 libcanberra-gtk-module:i386 gtk2-engines-murrine:i386
+$install libatk-adaptor:i386 libgdk-pixbuf2.0-0:i386
+wget -O /tmp/adobe.deb ftp://ftp.adobe.com/pub/adobe/reader/unix/9.x/9.5.5/enu/AdbeRdr9.5.5-1_i386linux_enu.deb
+sudo dpkg -i /tmp/adobe.deb
+
+
+if [ $workspace_matrix = 1 ] ; then 
+
+# Firefox
+# =======
+# Reinstallation d’une version de firefox pour permettre le multigrille
+# https://ubuntuhandbook.org/index.php/2022/04/install-firefox-deb-ubuntu-22-04/
+sudo snap remove firefox
+sudo apt remove firefox
+sudo add-apt-repository ppa:mozillateam/ppa
+sudo cat <<eod> /tmp/mozillateamppa
+Package: firefox*
+Pin: release o=LP-PPA-mozillateam
+Pin-Priority: 501
+eod
+sudo cp /tmp/mozillateamppa /etc/apt/preferences.d/
+sudo apt install -y chrome-gnome-shell
+sudo apt install -y firefox
+
+echo Run firefox https://extensions.gnome.org/extension/1485/workspace-matrix/
+echo first clicks in the top frame, install gnome extension, or so.
+echo then reload browser
+echo then click on the OFF button
+
+fi
