hybrid monte carlo and cp2k

Matt McGrath obfis... at gmail.com
Wed Jun 22 07:02:00 CEST 2011

Hi Alin.

Good question.  HMC is something I've just recently implemented.  I've
tested it to make sure it samples correctly, but I've noticed too that
it's not the easiest to use, unless you happen to be the person who
wrote the MC routines (and even then, new issues pop up sometimes).

In theory, if you want to sample in the canonical ensemble, hmc.inp
has everything you should need.  You can ignore all the MC part except
for TEMPERATURE and NSTEPS, which should be self-explanatory.  The MD
part is a simulation in the microcanonical ensemble, and the
temperature should be set to the same value as the MC.  You can choose
the number of MD steps you want to run in each mini-trajectory, and
then adjust the timestep so that your acceptance ratio (given in the
input.inp.moves file on the line HMC) is about 0.7.  Weber et al, J
Chem Phys (2010), 204509 is a recent article that talks a little about

If you use just the canonical ensemble, you can delete the TOPOLOGY
section (this is required by all other MC simulations, for reasons
that displacements have to be defined for every molecule type).  This
makes things much easier.  However (and this is a problem that came up
just two days ago), this means you can't do a restart.  So every time
a simulation dies (due to walltime, for example), you'd need to copy
the coordinates from mc_restart_1 into the input file.  The step
number would always reset, too.  Not nice, but doable.  So, if your
system is a relatively simple molecular system, I can probably walk
you through what needs to be done.  The only changes you'll need to
make are those mentioned above.  If you want to use restart, then you
have to make psf files for each molecule type and specify them in the
MOL_SET section (some of the other input files has what's needed for
multiple molecule types, although there are always caveats).  This
could be simple, or it could be complex, depending on your system.

Basically, the MC routines were mostly written several years ago, and
since then CP2K has changed.  I am starting to look at the routines so
that I can change them to be much more up-to-date with the rest of the
code (the biggest problem is changing the number of molecules in a
force environment....as far as I know, there still isn't a subroutine
to do this, and I don't feel confident with the FIST/QS sections of
the code to do it myself...yet).  Once this happens, all the MC
routines will probably get a massive make-over to make them more
useable (more like the rest of CP2K), including proper print keys and
restart files.

I hope that you do try it, because I'd like the feedback.

                                                       Cheers, Matt

On Jun 22, 1:56 am, Alin Marin Elena <alinm... at gmail.com> wrote:
> Hi,
> I try to use the hybrid monte-carlo from cp2k...
> I have found the hmc.inp from tests.
> Is there any reference, specific to the cp2k implementation, about HMC where I
> can read the details?
> regards,
> Alin
> --
>  Without Questions there are no Answers!
>  _____________________________________________________________________
>   Alin Marin ELENA
>   Advanced Molecular Simulation Research Laboratory
>   School of Physics, University College Dublin
>   ----
>   Ardionsamblú Móilíneach Saotharlann Taighde
>   Scoil na Fisice, An Coláiste Ollscoile, Baile Átha Cliath
>   --------------------------------------------------------------------------- --------
>  http://alin.elenaworld.net
>   ______________________________________________________________________
>  signature.asc
> < 1KViewDownload

More information about the CP2K-user mailing list