A collection of utility scripts for use with the Loughborough MD code
These python scripts are only useful to me and others working with the LBOMD code.
Clone the repository to a directory of your choice, and add this directory to your path.
To make the python scripts executable, run
chmod +x md_*
The scripts can be called directly and passed options on the command line, or imported into other scripts.
md_setup_continue_production.py
This function sets options in lbomd.IN so that the md code continues an existing simulation.
md_setup_damped_md.py
This function sets up the input files so that the md code will run a damped MD simulation.
md_setup_delete_all_output_files.py
This function will delete all files output by the MD code.
md_setup_equilibrate.py
Sets options in the input files so that the md code optimises the system using the conjugate gradient method.
md_setup_fixed_and_thermal_bounds.py fixed_bound_width thermal_bound_width
This function modifies the lattice.IN file to add a fixed boundary with an inner thermal boundary.
md_setup_fixed_bounds.py fixed_bound_width
This function modifies the lattice.IN file to add a fixed boundary.
md_setup_gen_carbon_input_files.py
Generates a set of default input files for carbon systems.
md_setup_gen_input_files.py
Generates a set of default input files.
md_setup_output_failsafe.py output_freq
This function sets the output frequency of the MD code for writing the FAILSAFE.DAT.gz file.
md_setup_output_freq.py output_freq
This function sets the output frequency of the MD code for writing the trajectory.xyz.gz files.
md_setup_production.py
This function sets options in lbomd.IN so that the md code begins a normal production run.
md_setup_simtime.py simtime
Sets the maximum simulation time to "simtime".
md_setup_thermal_bounds.py thermal_bound_width
This function modifies the lattice.IN file to add a thermal boundary.
md_setup_thermalise.py sim_temp sim_time
This function sets options in lbomd.IN and equilibration.IN so that the md code thermalises a system. User selects the temperature and thermalisation time.
md_lattice_bulk_strain.py filename strain
This function reads a lattice file (filename) and applies a uniform strain in all directions. The function must be passed the name of the lattice file and the strain (where 1% strain is 1.01 etc).
md_lattice_info.py filename
This function reads a lattice file (filename) and prints some basic information about the lattice.
md_lattice_stack_monoclinic_CePO4.py X Y Z
This function reads the lattice.dat file and creates a larger supercell by stacking multiple copies. The number of cells in x, y, and z can be specified on the command-line, or entered interactively. This is for a monoclinic system, with beta = 104.18 (the optimised value for CePO4)
md_lattice_stack.py X Y Z
This function reads the lattice.dat file and creates a larger supercell by stacking multiple copies. The number of cells in x, y, and z can be specified on the command-line, or entered interactively. Orthorhombic lattices only.
md_setup_gen_random_system.py density atom_symbol atom_charge atom_num
This function builds a lattice with randomly distributed atoms (with atoms no closer than 1 Angstrom). User input can be specified on the command-line or entered interactively. The user sets the density and can pass any number of atom types (ID, charge and number) on the command-line, eg md_setup_gen_random_system.py 1.9 C_ 0 1000 O_ 0 100 H_ 0 200
md_run_multi_cgmins.py density atom_N_id atom_N_charge atom_N_num
This script quenches multiple lattices with properties read from the command-line. MD input files and LBOMD.exe are required.
Note, the md code should be compiled with the quench flag activated.
md_run_multi_cascades_carbon_fixed_and_thermal_bounds.py temperature cascade_energy cascade_time
This is a SPECIFIC script that runs multiple cascades FOR CARBON SYSTEMS with a fixed and thermal boundary. The PKA is automatically set to "C_".
Input files generated by the md_setup_gen_carbon_input_files.py
script. An input lattice.dat and the LBOMD.exe must be present in a sub-directory named: md_input
md_run_multi_cascades_carbon.py cascade_energy cascade_time
This is a SPECIFIC script that runs multiple cascades FOR CARBON SYSTEMS with periodic boundaries. The PKA is automatically set to "C_".
Input files generated by the md_setup_gen_carbon_input_files.py
script. An input lattice.dat and the LBOMD.exe must be present in a sub-directory named: md_input
md_run_multi_cascades.py specie_to_hit cascade_energy cascade_time
This is a general script that runs multiple cascades with periodic boundaries. All input files including lattice.dat and LBOMD.exe must be present in a sub-directory named: md_input
md_run_multi_cgmins_carbon_HPC_farm.py job_no density_min density_step Num_carbon_atoms
This script enables many instances of md_run_multi_cgmins.py
to be farmed out on a HPC. This script is specific for CARBON systems. Script requires a 'densitysim_input' directory containing LBOMD.exe compiled with the quench flag activated.