Quick Install and Run Mars PEM
How to install the model
To download the model you'll need to follow exactly the same step as dowloading the martian model. You can have a look at the section Quick Install and Run of Mars Model and follow the "Prerequisites: Tools and Libraries" steps.
The PEM is dowlnload alongside with the LMDZ.COMMON repository. The Fortran code of the PEM is in the following directory : trunk/LMDZ.COMMON/libf/evolution/ The main program is in the file pem.F90
Compiling the test case
To compile the PEM at the sought resolution, run (in LMDZ.COMMON):
./makelmdz_fcm -arch local -p mars -d 64x48x54 -j 8 pem
Here, we assume that you have generated the arch-local.* files as per what is suggested in the previous section. The options for makelmdz_fcm used here imply:
- -p mars: the PEM will use the "mars" physics package
- -d 64x48x54: the PEM grid will be 64x48 in longitude x latitude, with 54 vertical levels.
Upon successful compilation, the executable pem_64x48x29_phymars_seq.e should be generated in the bin subdirectory.
To run the PEM you'll also need a valid PCM, you can compile it using a similar command:
./makelmdz_fcm -arch local -p mars -parallel mpi_omp -io XIOS -d 64x48x54 -j 8 gcm
To run the PEM you'll also need a tool (reshape_xios_output) that will we explained later, you can compile it using a similar command:
./makelmdz_fcm -arch local -p mars -d 64x48x54 -j 8 reshape_XIOS_output
Then all the compilation stuff is done. You will want to create a folder to run a simulation and copy all the executable files there. In addition, you will need a few other files:
Files for the PCM run:
- start.nc and startfi.nc, if you do a chained simulation you probably have to rename them start0.nc and startfi0.nc, the number correspond to the martian year. The dimensions should correspond to the dimension in which you compiled the executables, they can be found in the Quick Install and Run" of the Mars Model.
- datadir directory, this can be dowload by following the steps described in "Quick Install and Run" of the Mars Model.
- callphys.def: you can take one in LMDZ.MARS/deftank/
- traceur.def: you can take one in LMDZ.MARS/deftank/
- z2sig.def: you can take one in LMDZ.MARS/deftank/
- diagfi.def: Optional; not necessary since we do the outputs using XIOS
- run.def, for chained simulation rename it run_GCM.def.ref, also available in LMDZ.MARS/deftank/. If you do not want diagfi.nc output, you can change the variable ecritphy to 6699 for example.
- xml files: iodef.xml, context_lmdz_physics.xml, field_def_physics_mars.xml, file_def_physics_mars.xml. For this last file you have to change to true the enable option of the FILE 3 (diurnal averages outputs for PEM) the other can be enable to false if you do not want other outputs.
Files for the PEM run:
- obl_ecc_lsp.asc: Available in LMDZ.MARS/deftank/pem describing the changes for orbital parameters
- run_PEM.def: The file to describe the PEM physical parametrizations you want (remember to include it in the run_GCM.def)
- start_evol.nc: The last restart.nc of the GCM simulations
- startfi_evol.nc: The last restartfi.nc of the GCM simulations
- data_GCM_Y1.nc and data_GCM_Y2.nc: The outputs of the last 2 typical year of the GCM, they have been reshape by he utility to be in the dynamical grid
- diagfi.def (optional) : you can output PEM specific variables with diagfi.def, to do so we usually set a specific output time with a specific run_PEM.def and run_GCM.def.
- startfi_PEM.nc (optional): The start file specific of the PEM, if it is not present the PEM will create a default one.
- launch_pem.sh: The main bash script file to run chained simulation of PEM and GCM runs. You can specify the number of Earth years to be simulated in total, the number of GCM runs between each PEM run (nGCM). You have to adapt it to the machine you are running on.
- restart_evol.nc : The last start.nc of the GCM simulations modified by the PEM
- restartfi_evol.nc : The last restartfi.nc of the GCM simulations modified by the PEM
- restartfi_PEM.nc : The restart file specific of the PEM
- info_run_PEM.txt : A file containing the time the PEM has extrapolate and the reason it stopped
- diagfi.def (Optional) : Information about the run