PIMD-F90 is a path integral molecular dynamics (PIMD) code written in Fortran-90 for studying nuclear quantum effects in water. The code performs classical MD or links to SIESTA DFT package.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
PES_fitter
input_coords
input_files
manual
mon_geometry_tester
pot_ttm
.gitignore
32_CP2K.xyz
32h2o.fdf
5h2o.fdf
64h2o.fdf
64h2o0.fdf
H.psf
InputOutput.f90
Langevin.f90
MD.f90
MPI.f90
Makefile
NormalModes.f90
Nose_Hoover.f90
O.psf
PIMD.f90
RDF_mod.f90
README.md
consts.f90
dans_timer.f90
diffusion_calculator.f90
dimer.fdf
dip_ttm.f90
estimators.f90
ewald.f90
force_calc.f90
four1.f
fsiesta_pipes.f90
geometry_calculator.f90
input128.inp
input32.inp
input5.inp
input64.inp
input_file_reader.f90
input_new_64.inp
inputmonomer.inp
lun_management.f90
main_stuff.f90
math.f90
monomer.fdf
monomer.inp
out_test_coord.xyz
pbs_run.sh
pflush.f90
pot_ttm.f90
run.sh
spectral_properties.f90
system_mod.f90
test_input.inp

README.md

Fast and accurate ab-initio Path Integral Molecular Dynamics in Fortran 90

2015-2017 Daniel C. Elton

PIMD-F90 implements path integral molecular dynamics (PIMD) to capture the nuclear quantum effects in water.

By changing the adiabaticity parameter (ficticious mass rescaling) the code can also implement Centroid Molecular Dynamics (CMD) and Ring Polymer Molecular Dynamics (RPMD).

See the example input file input128.inp for program options

Supported potentials

TTM2-F, TTM3-F, q-SPC/Fw

The TTM / SPC force calculation routines are modification of codes written by C. J. Burnham, G. S. Fanourgakis, and S. S. Xantheas (potential.f90, consts.f90, find_neigh.f90, init_ttm21f.f90, pot_mod.f90, pot_ttm.f90, smear.f90 system_mod.f90 math.f90 ewald.f90 nasa.f90 nasa_mod.f90) These are publically available on Google code. TTM-2F ref: J. Phys. Chem. A. vol 110, page 4100-4106, (2006)

SIESTA

The PIMD code can obtain forces & energies from the density functional theory package SIESTA. It uses unix pipes to communicate with SIESTA. A working flush() routine is required for this (see pflush.f90).

Features

  • Parallelization over the beads with MPI
  • Options for a global Nose-Hoover thermostat or Anderson barostat
  • virial energy and pressure estimators
  • many output options
  • Choice of Langevin or Nose-Hoover bead thermostats
  • Option to not thermostat the centroid
  • Option to perform the PIMD on the monomer only (a subcase of the ring polymer contraction scheme ref: JCP 129, 024105 (2008) )
  • implementation of custom PES for using the "monomer PIMD" method with DFT

Compilation

currently compiles with openMPI (gcc) mpif90 compiler or Intel mpiifort. However SIESTA functionality doesnt work with mpiifort

other notes: i compiles with openmpi/gcc/64/1.8.5 but not mvapich/gcc/64/1.2rc1

SIESTA compiles with mvapich but not openmpi

Input file specification

See manual/PIMD_manual.pdf

Acknowledging

If you use this code, please cite our preprint on the arXiv: Using a monomer potential energy surface to perform approximate path integral molecular dynamics simulation of ab-initio water with near-zero added cost

Here is a bibTex entry for it:

@misc{1803.05740, author = {{Elton}, D.~C. and {Fritz}, M. and {Fern{'a}ndez-Serra}, M.-V.}, title = {{U}sing a monomer potential energy surface to perform approximate path integral molecular dynamics simulation of ab-initio water with near-zero added cost}, year = {2018}, eprint = {1803.05740}, note = {arXiv:1803.05740v1} }