1/ PREPARING TO USE MP_tools
Copy the Examples subdirectory to a convenient place in your working space.
Using any of its specific subdirectories as a template, create your own project directory,
go there and create inside the ./data subdirectory, something like
mkdir my_project
cd ./my_project
mkdir data
Move the ACCII input (MD dump files and/or trajectory files) of your project into data
mv /volumes/whatever_somewhere/hist_200.txt ./data
or, to avoid manipulating huge data volumes, just make a link and place it into ./data
link /volumes/whats_ever/hist_200.txt ./data/hist_200.txt
A good idea is to give intuitive names to all what follows,
eg. BZO200s for a BZO (BaZrO3) short sequence at 200K
mv ./data/hist_200.txt ./data/BZO200s.txt
use the upper and lower case according to your system conventions and to your convenience; on many systems all the MP_tools input specifications will prove case-insensitive.
In your project directory create a <your_project>.par, possibly by editing/duplicating one of the parameter files from the Examples. For convenience, but not obligatorily, use the same filename as above, i.e. BZO200s.par. This file will contain info about your substance and option settings for the MP_tools. The binary snapshot files will automatically use the name of the .par file followed by numbers (if timeseries) in the form of _nxxxx, eg. BZO200s_n0001.dat; for numbers above 9999 the real length is used, i.e. BZO200s_n100001.dat.
Inside the .PAR file the namelist names like &mp_bin, &mp_pdf etc. as well as the names of the variables are in fact FORTRAN identifiers - do not touch them! Each namelist has to be terminated by a slash (/)on the last line. When editing the contents mind to use spaces rather than tabs. Empty lines as well as any text beyond the first exclammation mark on a line is a comment, ignored in input. You cannot add anything to the namelists unless modifying the code itself, on the other hand non-relevant items may be omitted in the .PAR file.
2/ USING MP_tools
Each tool offers a more-or-less intuitive command line dialog (cf. terminal logs in the Examples pages).
A/ Convert the input ASCII file data produced by DL_POLY, LAMMPS, DISCUS etc. into binary form (as a first, obligatory step)
MP_DBIN(forDL_POLYdata) orMP_LBIN(forLAMMPS,GENERALdata) tools generate the binary direct access files to be used in subsequent work; each of the files will start by a header record containing info from the trajectory-file header and from the.PARfile (atom names, masses, lattice parameters etc.), the binary files will be stored in./dataagain; if pertinent, the programs determine real temperature from the kinetic energies of individual velocity components (separately for cores and shells in case of the shell model simulations) and refine corrections to the lattice parameters originally deduced from the supercell dimensions; a detailed output is produced for the first snapshot in the series automatically and can be extended to all of them by setting a switch in the.PARfile
For series of snapshots the binary file names consist of a ‘master’ (a character chain
specified in the MP_*BIN dialogue) followed by ‘_n’ and a minimum four-digit number, eg. BZO200_n0001.dat; the other tools will ask later for this information in their input dialogues.
B/ Inspect the contents of the binary data files
MP_INSPprints the contents of the header record of a binary data file and displays information on individual atoms identified by their supercell (CELL) or input sequence (BULK) indices.
C/ Visualise scattering functions and extract other related properties
-
MP_PDFaccumulates and plots pair distribution functions (PDF) in direct space by Monte-Carlo sampling; useOpenMPparallelisation if computation speed is of importance; for high accuracy and 100% reproducibility the single process option should be checked -
MP_DOScalculates and plots the vibrational density of states; atom weights can be chosen between uniform (1.) and neutron (bcoh, read from the.PARfile) with the possibility to mask out any of the atom types -
MP_SQOMproduces total, elastic and inelastic diffuse scattering intensity maps over planes in reciprocal space as well asE(Q)(dispersion-like) cuts with the possibility to save tables of intensities in ASCII format (.TXT) and the graphical output in the.PSor.PNGformat; the use of non-uniform fast Fourier transform (NUFFT) to pass from the direct to the reciprocal (momentum) space brings in the FFT-like computing time gain of≈ NlogNagainst theN^2scale for normal FT, which can reach many orders of magnitude for large systems; in addition, the use ofOpenMPparallelisation can be activated and is recommended in general (no reproducibility issues to be expected)
3/ EXAMPLES
The examples in the Examples directory cover the two available ASCII data input methods, CELL and BULK, and take as examples data generated by DL_POLY, LAMMPS and FERRODO (phasefield simulation package).
To keep the distribution size reasonable, the data sets extend only over a single or a few snapshots, permitting to test the basic functions of MP_tools: conversion to binary format, inspection of the binary data, plots of total scattering intensities and generation of a PDF. The energy-resolved functionalities calling for sequences of hundreds to thousands snapshots (10-100 Gb) need to be tried in ‘real life’ circumstances (in case of doubt contact the author)
The text files like lammps_cu_48.txt containing terminal session logs, included in each case, give an idea of what could be a brief tutorial session and give also the possibility to cross-check the details of data file structure. The included .PAR files can be used as templates for own projects.