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 | |
---|