Ignore:
Timestamp:
Jul 21, 2025, 1:55:12 PM (13 days ago)
Author:
jbclement
Message:

PEM:

  • Big update of "README" file in the "deftank" folder.
  • Renaming the log files "out_run*" into "run.log".
  • Merging the folders "out_PCM" and "out_PEM" into "logs" where the log files are gathered with convenient renaming.
  • Update of job files.
  • More robust tests in "lib_launchPEM.sh".

JBC

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.COMMON/libf/evolution/deftank/README

    r3858 r3861  
    99
    1010   
    11 This folder contains all the files needed to run the Planetary Evolution Model (PEM).
     11This folder contains all the files needed to run and work with the Planetary Evolution Model (PEM).
    1212
     13Information:
     14------------
     15For further explanations about the PEM, see following website: https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/PEM_(Planetary_Evolution_Model).
     16
     17Installation:
     18-------------
     19The PEM can be downloaded alongside the "LMDZ.COMMON" repository of your trunk. The Fortran code is in the following directory: "trunk/LMDZ.COMMON/libf/evolution/". The two PEM programs are "pem.F90" and "reshape_XIOS_output.F90".
     20
     21Compilation:
     22------------
     23To compile the PEM, in "LMDZ.COMMON", do: ./makelmdz_fcm -arch [local] -p [planet] -d [dimensions] -j 8 pem
     24Options:
     25    1) [local]     : root name of arch files, assuming that they have been set up for your configuration;
     26    2) [planet]    : mars to use the planet physics package;
     27    3) [dimensions]: 64x48x54 to define the grid you want to use.
     28To run the PEM, you need a dedicated reshaping tool with consistent options. To compile it, in "LMDZ_COMMON", do: ./makelmdz_fcm -arch [local] -p [planet] -d [dimensions] -j 8 reshape_XIOS_output
     29To run the PEM, you also need a PCM working with XIOS and consistent options. To compile it, in "LMDZ.COMMON", do for example: ./makelmdz_fcm -arch [local] -p [planet] -parallel mpi_omp -io XIOS -d [dimensions] -j 8 gcm
     30After compilation, the executable file can be found in the "bin" sub-directory.
     31
     32Usage:
     33------
     34  To run a PEM simulation, do: ./launchPEM.sh [options]
     35  Options:
     36      1) None: to start a simulation from scratch;
     37      2) 're': to relaunch a simulation from a starting point (interactive prompt).
     38
     39Requirements:
     40-------------
     41To run the PEM, you need the following files:
     42    > your executable files for the PCM, the PEM and the reshaping tool with consistent dimensions;
     43    > the xml files for XIOS ("iodef.xml", "context_lmdz_physics.xml", "file_def_physics_mars.xml" and "field_def_physics_mars.xml") which can be found in the PCM deftank folder;
     44    > the def files you want to run the PCM ("run.def", "callphys.def", "traceur.def", etc).
     45      /!\ Do not forget to rename the PCM "run.def" into "run_PCM.def";
     46    > the starting files you want to run the PCM ("startfi.nc", "start.nc"/"start1D.txt"/profiles);
     47    > the necessary PEM files ("launchPEM.sh", "lib_launchPEM.sh", "PCMrun.job", "PEMrun.job", "run_PEM.job" and "obl_ecc_lsp.asc";
     48    > the optional PEM files "diagpem.def" to define the PEM variables to be ouputted and "startpem.nc" to set the initial state of the PEM.
     49
     50Outputs:
     51--------
     52The PEM simulation generates the following files:
     53    > the usual outputs of the PCM ("restartfi.nc", "restart.nc", "diagfi.nc", etc);
     54    > the XIOS outputs of the PCM, then reshaped ("Xdiurnalave.nc"/"data2reshape*.nc"/"data_PCM_Y*.nc");
     55    > the outputs of the chained simulation ("launchPEM.log", "info_PEM.txt" and possibly "kill_launchPEM.sh");
     56    > the usual outputs of the PEM ("restartfi.nc", "restart.nc"/"restart1D.txt" and "diagpem.nc").
     57During the simulation, the PCM/PEM run files are renamed conveniently and stored in the sub-directories "logs" (log files), "starts" (starting files) and "diags" (diagnostic files).
     58If you run a simulation by submitting jobs, the script "kill_launchPEM.sh" is automatically generated. It can be used to kill in the queue of the job scheduler the jobs related to your chained simulation.
     59
     60Deftank files:
     61--------------
    1362# launchPEM.sh:
    1463  Bash script file to launch the chained simulation of PEM and PCM runs.
    1564  The user has to specify:
    16       (i)   n_mars_years, n_earth_years -> the number of Mars/Earth years to be simulated in total;
    17       (ii)  nPCM_ini -> the number of initial PCM runs (at least 2);
    18       (iii) nPCM -> the number of PCM runs between each PEM run (usually 2);
    19       (iv)  counting -> the counting method for the number of years to be simulated (0 = "only PEM runs count"; any other values = "PCM runs are taken into account"). The former option is the PEM default use;
    20       (v)   mode -> the launching mode (0 = "processing scripts"; any other values = "submitting jobs"). The former option is usually used to process the script on a local machine while the latter is used to submit jobs on a supercomputer.
     65      > n_mars_years, n_earth_years -> the number of Mars/Earth years to be simulated in total (> 0);
     66      > nPCM_ini -> the number of initial PCM runs (>= 2);
     67      > nPCM -> the number of PCM runs between each PEM run (>= 2, usually 2);
     68      > counting -> the counting method for the number of years to be simulated (0 = "only PEM runs count"; any other values = "PCM runs are taken into account"). The former option is the usual one;
     69      > mode -> the launching mode (0 = "processing scripts"; any other values = "submitting jobs"). The former option is usually used to process the script on a local machine while the latter is used to submit jobs on a supercomputer with SLURM or PBS/TORQUE.
    2170  The script can take an argument:
    22       - If there is no argument, then the script initiates a PEM simulation from scratch.
    23       - If the argument is 're', then the script relaunches an existing PEM simulation. It will ask for parameters to know the starting point that you want to.
    24   To submit chained jobs, the script works with the job schedulers SLURM and PBS/TORQUE.
     71      1) If there is no argument, then the script initiates a PEM simulation from scratch.
     72      2) If the argument is 're', then the script relaunches an existing PEM simulation. It will ask for parameters to know the starting point that you want to.
    2573
    2674# liblaunchPEM.sh:
     
    2876
    2977# PCMrun.job:
    30   Bash script file to submit a PCM job (with SLURM or PBS/TORQUE). The headers correspond to the ADASTRA supercomputer and should be changed for other machines and job schedulers. In case of "processiong scripts" launching mode, the headers are naturally omitted.
     78  Bash script file to submit a PCM job (with SLURM or PBS/TORQUE). The headers correspond to the ADASTRA supercomputer and should be changed for other machines and job schedulers. In case of "processing scripts" launching mode, the headers are naturally omitted.
    3179  The path to source the arch file should be adapted to the machine.
    3280  The name of the PCM executable file should be adapted.
     
    3482
    3583# PEMrun.job:
    36   Bash script file to submit PEM job (with SLURM or PBS/TORQUE).The headers correspond to the ADASTRA supercomputer and should be changed for other machines and job schedulers. In case of "processiong scripts" launching mode, the headers are naturally omitted.
     84  Bash script file to submit PEM job (with SLURM or PBS/TORQUE).The headers correspond to the ADASTRA supercomputer and should be changed for other machines and job schedulers. In case of "processing scripts" launching mode, the headers are naturally omitted.
    3785  The path to source the arch file should be adapted to the machine.
    3886  The name of the PEM executable file and Reshaping executable file should be adapted.
    39   The PEM executable can have an optional argument which should be specified according to the set-up. This the job ID to make the PEM detect the job time limit.
     87  The PEM executable can have an optional argument which should be specified according to the set-up. Especially, the value of '--jobid' which is the job ID to make the PEM detect the job time limit.
    4088
    4189# run_PEM.def
     
    4795
    4896# modify_startfi_orbit.sh:
    49   Bash script file to modify orbital parameters in the file "startfi.nc" (obliquity, eccentricity, Ls perihelion and possibly initial Ls). They should be consistent with Laskar's data in "obl_ecc_lsp.asc" to start a chained simulation at a specific date.
     97  Bash script file to modify orbital parameters in the file "startfi.nc". They should be consistent with Laskar's data in "obl_ecc_lsp.asc" at the same date if orbital parameters are meant to vary during the simulation. See also "inipem_orbit.sh".
    5098
    5199# modify_startfi_var.sh:
     
    53101
    54102# inipem_orbit.sh:
    55   Bash script file to modify the orbital parameters of a file "startfi.nc" according to the date set in the file "run_PEM.def".
     103  Bash script file to set the orbital parameters of a file "startfi.nc" from Laskar's data contained in "obl_ecc_lsp.asc" according to the initial date 'year_earth_bp_ini' defined in "run_PEM.def". See also "modify_startfi_orbit.sh".
    56104
    57105# concat_diagpem.sh:
     
    69117# visu_evol_layering.py:
    70118  Python script file to output the stratification data over time from the "startpem.nc" files.
    71 
    72 Note:
    73   To run the chained simulation, be careful to have:
    74       (i)   the xml files for XIOS. There should be "iodef.xml", "context_lmdz_physics.xml", "file_def_physics_mars.xml" and "field_def_physics_mars.xml" which can be found in the planetary deftank folder;
    75       (ii)  the usual def files to run the PCM. "run.def" should be renamed in "run_PCM.def";
    76       (iii  the starting files ("startfi.nc" and "start.nc"). The former can be modified by "modify_startfi_orbit.sh";
    77       (iv)  some optional files. For example, "diagfi.def" and "diagpem.def".
Note: See TracChangeset for help on using the changeset viewer.