| 1 | ******************************************************************** |
|---|
| 2 | * * |
|---|
| 3 | * LMDZ_Setup is a software suite for installing and running LMDZ * |
|---|
| 4 | * * |
|---|
| 5 | ******************************************************************** |
|---|
| 6 | |
|---|
| 7 | Authors: Frédéric Hourdin, Adriana Sima, Amaury Baral, Laurent Fairhead |
|---|
| 8 | (and the LMDZ team) |
|---|
| 9 | Last modification : 2025/01/07 |
|---|
| 10 | Complementary information and FAQ (in French) : |
|---|
| 11 | https://docs.google.com/document/d/1OLZG6e-86NiXuv5-aALxKIh-QPkp4BdCwWtiBFot-6c |
|---|
| 12 | |
|---|
| 13 | |
|---|
| 14 | |
|---|
| 15 | =================================================================== |
|---|
| 16 | 0. Target platforms |
|---|
| 17 | =================================================================== |
|---|
| 18 | Default gfortran/bash installation on local computers. |
|---|
| 19 | Specific installation on certain computing centers: |
|---|
| 20 | spirit: IPSL cluster |
|---|
| 21 | adastra: Cines supercomputer |
|---|
| 22 | jean-zay: idris supercomputer |
|---|
| 23 | irene: TGCC supercomputer WORK TO BE DONE |
|---|
| 24 | Machine configuration dependency is managed by lmdz_env.sh |
|---|
| 25 | |
|---|
| 26 | |
|---|
| 27 | =================================================================== |
|---|
| 28 | I. What this working environment does and does not |
|---|
| 29 | =================================================================== |
|---|
| 30 | |
|---|
| 31 | It proposes a light automatic setup of LMDZ long chained climate simulations |
|---|
| 32 | including installation of the model itself. |
|---|
| 33 | |
|---|
| 34 | It consists in running LMDZ coupled to Orchidee for land surface (optional) |
|---|
| 35 | but with imposed sea surface temperature. |
|---|
| 36 | |
|---|
| 37 | The basic default configuration makes use of the IPSL-CM6A grid configuration |
|---|
| 38 | and tuning, and runs a multi annual simulation on "climatological" |
|---|
| 39 | amip sea surface temperature (with a mean annual cycle) using |
|---|
| 40 | a calendar with 360 days. |
|---|
| 41 | |
|---|
| 42 | Optionally : the configuration includes the ability to use interannually |
|---|
| 43 | varying SST and to activate "nudgning" by reanalysis. |
|---|
| 44 | In both cases, the calendar is then a real one. |
|---|
| 45 | When nudging is activated, the simulation must be run on a monthly |
|---|
| 46 | basis, while otherwise, it can be either monthly or yearly. |
|---|
| 47 | |
|---|
| 48 | Since it automatically generates its own initial files, it can be run with |
|---|
| 49 | zoom configurations by only changing the number of grid points ("resol" |
|---|
| 50 | in main.sh) and the DEF/gcm.def file (see bellow). |
|---|
| 51 | |
|---|
| 52 | Aerosols can be : |
|---|
| 53 | - not taken into account |
|---|
| 54 | - read for the year 2000 (weighted average over 1999-2001 cf Lurton et al |
|---|
| 55 | 2020), and instantaneous forcing with respect to 1850 can be computed |
|---|
| 56 | as well. |
|---|
| 57 | - computed interactively the SPLA model |
|---|
| 58 | (SimPLe Aerosol, activated with option aerosols=spla in setup.sh). |
|---|
| 59 | Emissions of dust and sea salt are then computed interactively. |
|---|
| 60 | |
|---|
| 61 | A configuration with isotopes is also available. |
|---|
| 62 | |
|---|
| 63 | |
|---|
| 64 | =================================================================== |
|---|
| 65 | II. Files and scripts |
|---|
| 66 | =================================================================== |
|---|
| 67 | |
|---|
| 68 | ---------------------------------------------------------------- |
|---|
| 69 | EXPERT on super computing centers : |
|---|
| 70 | If the login groupe and computing allocation groupe are different : |
|---|
| 71 | choose on which STORE space you work (login vs computing allocation); |
|---|
| 72 | edit lmdz_env.sh, and set "groupe", "SCRATCHD" etc. accordingly. |
|---|
| 73 | ---------------------------------------------------------------- |
|---|
| 74 | |
|---|
| 75 | main.sh : a script written to pass options to the main script setup.sh |
|---|
| 76 | and configure one or series of simulations. |
|---|
| 77 | |
|---|
| 78 | setup.sh : sets up one simulation by editing the "job" script_SIMU |
|---|
| 79 | When run with -init 1 options, creates INIT and LIMIT directories |
|---|
| 80 | Run ./setup.sh -h for options |
|---|
| 81 | RECOMMENDATION: do not run it directly, but use main.sh to drive it |
|---|
| 82 | |
|---|
| 83 | script_SIMU : script that is the basis for the job to run the simulations |
|---|
| 84 | Automatically edited by setup.sh |
|---|
| 85 | |
|---|
| 86 | reb.sh : to rebuild splitted outputfiles (parallelism with IOISPL) |
|---|
| 87 | automatically run by script_SIMU |
|---|
| 88 | |
|---|
| 89 | era2gcm_tuto.sh : to interpolate reanalysis onto the GCM grid, for nudging. |
|---|
| 90 | To be run manually after the first use of main.sh |
|---|
| 91 | |
|---|
| 92 | season.sh : computing seasonal means and daily time series |
|---|
| 93 | |
|---|
| 94 | interp_aerosols.sh : interpolating aerosols on the GCM grid. |
|---|
| 95 | Automatically run by setup.sh |
|---|
| 96 | |
|---|
| 97 | post_season.sh : post processing a series of simulations with season.sh |
|---|
| 98 | |
|---|
| 99 | test_ERAfiles_JeanZay.sh : script to test the availability of ERA* |
|---|
| 100 | files sur Jean-Zay |
|---|
| 101 | In case of nudging, one may use it before running era2gcm.sh |
|---|
| 102 | |
|---|
| 103 | DEF: .def files for simulations |
|---|
| 104 | Some of them are changed by setup.sh or script_SIMU depending on |
|---|
| 105 | chosen options |
|---|
| 106 | Some others need to be chosen and customized BEFORE RUNNING main.sh |
|---|
| 107 | - DEF/config.def (versions *.def_* available): output files, frequencies, |
|---|
| 108 | levels (see lines phys_out_file*) |
|---|
| 109 | - DEF/gcm.def (versions *.def_* available): grid (and grid-related) |
|---|
| 110 | parameters |
|---|
| 111 | - DEF/guide.def : nudging parameters |
|---|
| 112 | |
|---|
| 113 | ============================================================ |
|---|
| 114 | III. Downloading input data |
|---|
| 115 | ============================================================ |
|---|
| 116 | |
|---|
| 117 | Installation requires downloading data from |
|---|
| 118 | from http://http://lmdz.lmd.jussieu.fr/pub/3DInputData |
|---|
| 119 | Downloading is managed by a series of functions found in |
|---|
| 120 | lmdz_env.sh: wget_pub cp_from_pub ln_from_pub get_input_files |
|---|
| 121 | |
|---|
| 122 | One specificity of LMDZ_Setup is to enable installation on any account |
|---|
| 123 | on any machine, downloading all data from wget. |
|---|
| 124 | All data are gathered on a directory $LMDZpub so that the |
|---|
| 125 | downloading is done once for all for a given account. |
|---|
| 126 | The LMDZsub path can be changed in lmdz_env.sh |
|---|
| 127 | |
|---|
| 128 | The correponding amount of data is very small compared to the amount |
|---|
| 129 | of data generated. |
|---|
| 130 | So I think we're very parsimonious in our use of IT resources. |
|---|
| 131 | The counterpart is that LMDZ_Setup doesn't manage a lot of different |
|---|
| 132 | configurations in terms of boundary conditions, forcing, etc. |
|---|
| 133 | libiGCM installations should be privileged then. |
|---|
| 134 | |
|---|
| 135 | |
|---|
| 136 | ============================================================ |
|---|
| 137 | IV. Known problems |
|---|
| 138 | ============================================================ |
|---|
| 139 | |
|---|
| 140 | Running zoomed or coarse grid simulations |
|---|
| 141 | May cause problems with routing and aerosols |
|---|
| 142 | Suggesting to run without aerosols, aerosols="n", in this case |
|---|
| 143 | |
|---|
| 144 | |
|---|
| 145 | ============================================================ |
|---|
| 146 | V. Updates (reverse chronological order) |
|---|
| 147 | ============================================================ |
|---|
| 148 | |
|---|
| 149 | 2025-01 (FH) : retravail de l'accès au données sur http://lmdz... |
|---|
| 150 | reactivation options sequential/debug. |
|---|
| 151 | Configuration SPLA muti machines |
|---|
| 152 | |
|---|
| 153 | 2024-11 (AB) : Travail de portage multi-machine par Amaury Barral. |
|---|
| 154 | Précédemment sur jean-zay uniquement. |
|---|
| 155 | Porté sur adastra et machines locales. |
|---|
| 156 | |
|---|
| 157 | 2023-07 (AS-FH-LF) : mise sous svn du repertoire TEST_PROD, renommé en |
|---|
| 158 | "LMDZ_config" puis "LMDZ_Setup" |
|---|
| 159 | |
|---|
| 160 | 2023-06 (AS) : Ajout de l'option "veget=7994", pour ORCHIDEE trunk |
|---|
| 161 | correspondant à la config libIGCM LMDZOR_6.4work |
|---|
| 162 | Le routage (méthode = simple) est désactivé par défaut ; |
|---|
| 163 | il peut être activé comme décrit dans la section "ORCHIDEE-routage". |
|---|
| 164 | Le routage n’a pas été testé avec zoom. |
|---|
| 165 | |
|---|
| 166 | 2023-05 (AS) : optimisation du functionnement de l'option isotopes : |
|---|
| 167 | tout géré par phys=lmdiso |
|---|
| 168 | |
|---|
| 169 | 2023-04 (S Nguyen) : introducing the option of running with isotopes) |
|---|
| 170 | |
|---|
| 171 | 2021-10 (AS): introducing the option of using the new snow scheme INLANDSIS |
|---|
| 172 | (setup.sh) Option not active yet, E Vignon will take care of that. |
|---|
| 173 | |
|---|
| 174 | 2021-05 : New version with SPLA |
|---|
| 175 | |
|---|
| 176 | 2020 (AS): introducing the possibility to run with SPLA aerosol model |
|---|
| 177 | |
|---|
| 178 | 24/03/2020 (FH): corrections for use with AMIP SSTs and monthly freq |
|---|
| 179 | |
|---|
| 180 | ============================================================ |
|---|
| 181 | VI. TBD |
|---|
| 182 | ============================================================ |
|---|
| 183 | |
|---|
| 184 | Better managment of DEF files |
|---|
| 185 | |
|---|
| 186 | Inclusion of Dynamico |
|---|
| 187 | |
|---|
| 188 | |
|---|
| 189 | ============================================================ |
|---|
| 190 | Appendix |
|---|
| 191 | ============================================================ |
|---|
| 192 | |
|---|
| 193 | |
|---|
| 194 | Notes concernant Orchidee |
|---|
| 195 | ------------------------- |
|---|
| 196 | |
|---|
| 197 | Plusieurs versions disponibles via la clé veget |
|---|
| 198 | veget=CMIP6 : version CMIP6 |
|---|
| 199 | veget=XXX : XXX numéro de relase svn d'orchidee |
|---|
| 200 | XXX+:1 |
|---|
| 201 | |
|---|
| 202 | On rapatrie automatiquement des champs nécessaires pour les dernières |
|---|
| 203 | versions d'orchidee |
|---|
| 204 | PFTmap_IPCC_2000.nc cartepente2d_15min.nc routing.nc routing_simple.nc |
|---|
| 205 | lai2D.nc alb_bg_modisopt_2D_ESA_v2.nc reftemp.nc |
|---|
| 206 | soils_param.nc woodharvest_2000.nc PFTmap_15PFT.v1_2000.nc soil_bulk_and_ph.nc |
|---|
| 207 | |
|---|
| 208 | Les deriners fichiers sont nécessaires seulement pour les version azotées. |
|---|
| 209 | ndep_nhx.nc ndep_noy.nc nfert_cropland.nc nfert_pasture.nc nmanure_cropland.nc |
|---|
| 210 | nmanure_pasture.nc bnf.nc" |
|---|
| 211 | Elles sont cependant rapatriées systématiquement par souci de simplicité. |
|---|
| 212 | |
|---|
| 213 | |
|---|
| 214 | |
|---|
| 215 | Notes concernant la confiugration SPLA |
|---|
| 216 | -------------------------------------- |
|---|
| 217 | Pour l'instant on copie là-dedans de chez Binta les fichiers a la res zoomNaf; |
|---|
| 218 | plus tard on y recupererea des fichiers a haute resolution reguliere depuis |
|---|
| 219 | http:/LMDZ, |
|---|
| 220 | a regrider ensuite par un script interp_fichiers_spla.sh (comme pour aerosols="clim") |
|---|
| 221 | Les fichiers (regrides, sauf SOILSPEC.data utilise tel quel) seront mis dans $MAINDIR/INPUT_SPLA (equivalent de INPUT_DUST) |
|---|
| 222 | The Path below is for JEANZAY. See with the team how to adapt to your cluster. |
|---|
| 223 | |
|---|
| 224 | #for file in donnees_lisa.nc SOILSPEC.data \ # For Chimere dust emissions |
|---|
| 225 | # cly.dat $( for i in $(seq 1 12 ) ; do echo dust$i.nc ; done ) wth.dat \ # For Inca dust emissions |
|---|
| 226 | # carbon_emissions.nc sulphur_emissions_antro.nc sulphur_emissions_nat.nc \ # For non dust emissions |
|---|
| 227 | |
|---|
| 228 | #Cas particulier des fichiers mensuels dust.nc :A DECIDER : |
|---|
| 229 | #C'est entre le cas des aerosols.clim= 1 seul fichier, annuel, |
|---|
| 230 | # et le cas des vents guidage, pré-interpolés avec era2gcm pour toute la periode, dans MAINDIR/GUIDE. |
|---|
| 231 | # On pourrait (a)demander de precalculer dust.nc aussi, dans MAINDIR/INPUT_SPLA - avec un script à adapter de Jeronimo. Rien a mettre dans SPLA_Init alors. |
|---|
| 232 | # Ou (b) fournir dans SPLA_Init les 12 mois d'un dust.nc climato (an 2006 pour nous ici) à la res EC, et faire juste le regrid vers MAINDIR/INPUT_SPLA |
|---|
| 233 | |
|---|
| 234 | A la fin on doit avoir dans SPLA_Init les fichiers initiaux dans INITIAL plus les repertoires PERIOD00MM contenant dust.nc |
|---|
| 235 | Cela doit se retrouver dans script_SIMU qui les copie dans le repertoire de run sur $SCRATCH |
|---|
| 236 | |
|---|