submit_mdt_analyses_lintf2_ether

Submit MDTools analysis scripts for systems containing LiTFSI and linear poly(ethylene oxides) of arbitrary length (including dimethyl ether) to the Slurm Workload Manager of an HPC cluster.

This script is designed to be used on the Palma2 HPC cluster of the University of Münster or on the Bagheera HPC cluster of the research group of Professor Heuer.

Options

Required Arguments

--system

The name of the system to analyze, e.g. 'LiTFSI_PEO_20-1' for an LiTFSI/PEO electrolyte with an ether-oxygen-to-lithium ratio of 20:1. You can give any string here. See notes below.

--settings

The used simulation settings, e.g. 'pr_npt298_pr_nh' for a production run in an NPT ensemble at 298 K utilizing a Parrinello-Rahman barostat and an Nose-Hoover thermostat. You can give any string here. See notes below.

--scripts

Select the analysis script(s) to submit. Either give the name(s) of the script(s) (without file extension) or give one of the following number options. If you give multiple script names, provide them space-separated as one enquoted string. To list all possible script names type ls path/to/hpc_submit_scripts/analysis/lintf2_ether/mdt/.

0

All scripts. Note that all lig_change_at_pos_change* scripts are excluded.

1

All scripts analyzing the bulk system (i.e. exclude scripts that analyze only a part, e.g. a slab, of the system, but still include anisotropic analyses, e.g. spatially discretized analyses). Note that all lig_change_at_pos_change* scripts and all msd_layer* scripts are excluded. The msd_layer* scripts are excluded, because msd_layer_serial.py (and msd_layer_parallel.py) must first be fixed for simulations with periodc boundary conditions in the discretized direction.

2

All scripts analyzing a slab in xy plane.

3

discrete-z_Li and discrete-z_Li_state_lifetime_discrete.

4

All hexagonal discretizations.

5

All density distributions along hexagonal axes.

6

All contact histograms.

6.1

All “normal” bulk contact histograms.

6.2

All slab-z contact histograms.

6.3

All contact histograms at position change.

7

All scripts analyzing coordination changes at position changes (lig_change_at_pos_change*).

8

All topological maps.

9

All MSDs.

9.1

All “normal” bulk MSDs.

9.2

All spatially discretized MSDs.

9.3

All MSDs at coordination change.

10

All lifetime autocorrelations.

11

All renewal event analyses.

11.1

All scripts extracting renewal events.

11.2

All scripts calculating renewal event lifetimes.

11.3

All “normal” bulk renewal event lifetimes.

11.4

All spatially discretized renewal event lifetimes.

Options for Trajectory Reading

--begin

First frame to read from the trajectory. Frame numbering starts at zero. Default: 0.

--end

Last frame to read from the trajectory. This is exclusive, i.e. the last frame read is actually END - 1. A value of -1 means to read the very last frame. Default: -1.

--every

Read every n-th frame from the trajectory. Default: 1.

--nblocks

Number of blocks for scripts that support block averaging. Default: 1.

--restart

Number of frames between restarting points for analyses using the sliding widow method (like calculation of mean square displacements or autocorrelation functions). Default: 500”

Options for Distance Resolved Quantities (like RDFs)

--binwidth

Bin width (in nm) for distance resolved quantities. Default: 0.05.

Options for Contact Analyses

--cutoff

Cutoff (in Angstrom) up to which two atoms are regareded as being in contact. Default: 3.0.

Options for Single Atom Analyses

--atom-index

Index of the atom to analyze. Default: 0.

Options for Analyses of Sequences of Discrete States

--intermittency

Maximum number of frames a selection compound is allowed to leave a certain state whilst still being considered to be inside that state, provided that it is indeed again inside this state after the intermittent period. Default: 0.

--lag-compare

Lag time (in trajectory frames) after which to compare the states of a selection compound. Default: 50.

--min-block-size

Minimum block size (in trajectory frames). Blocks of consecutive frames in which a given selection compound stays in the same state must comprise at least this many frames in order to be counted as valid block. Default: 100.

--max-gap-size

Maximum gap size (in trajectory frames). The gap between two following valid blocks must not be greater than this many frames in order to count a transition between the two valid blocks as valid transition. Default: 25.

Options for Tools That Analyze Slabs in xy Plane

--zmin

Lower boundary (in Angstrom) of the slab in xy plane. Default: 0.

--zmax

Upper boundary (in Angstrom) of the slab in xy plane. Default: Maximum length of the simulation box in z direction (inferred from $settings_out_$system.gro).

--slabwidth

Slab width (in Angstrom) to use when --discretize or --center-slab is given. Default: 1.0.

--discretize

Divide the simulation box from --zmin to --zmax in slabs of width --slabwidth and submit all scripts analyzing slabs in xy plane that were selected with --scripts for each created slab. Must not be used together with --center-slab.

--center-slab

Create a slab in xy plane of width --slabwidth exactly in the center of the simulation box (in z direction, inferred from $settings_out_$system.gro) and submit all scripts analyzing slabs in xy plane that were selected with --scripts for that slab. Must not be used together with --discretize. If given, --zmin and --zmax are ignored.

Python-Specifig Options

--py-lmod

If running on a cluster which uses the Lmod module system, specifiy here which file to source (relative to the lmod subdirectory of this project) to load Python. Default: 'palma/2019a/python3-7-2.sh'.

--py-exe

Name of the Python executable. You can give here e.g. the path to the python executable of the virtual Python environment in which MDTools is installed. Default: 'python3'.

--mdt-path

Path to the MDTools installation. Default: '${HOME}/.local/lib/python3.9/site-packages/mdtools'.

Sbatch Options

You can provide arbitrary other options to this script. All these other options are parsed directly to the sbatch Slurm command without further introspection or validation. This means, you can parse any option to sbatch but you are responsible for providing correct options.

Config File

This script reads options from the following sections of a Configuration File:

  • [submit]

  • [submit.analysis]

  • [submit.analysis.lintf2_ether]

  • [submit.analysis.lintf2_ether.mdt]

  • [sbatch]

  • [sbatch.analysis]

  • [sbatch.analysis.lintf2_ether]

  • [sbatch.analysis.lintf2_ether.mdt]

Notes

The --system and --settings options allow (or enforces) you to choose systematic names for the input and output files of your simulations. Besides a better overview, this enables an easy automation of preparation and analysis tasks.

If input files required for the scripts selected with --scripts cannot be found, the submission script will terminate with an error message before submitting the job(s) to the Slurm Workload Manager.