Re: [AMBER] Help in AMBER+PLUMED interface

From: Jason Swails <>
Date: Wed, 28 Jan 2015 09:02:41 -0500

On Wed, 2015-01-28 at 08:37 +0100, Giovanni Bussi wrote:
> Dear all,
> I am working on the sander+plumed interface (sander 14 and plumed 2.1). I
> managed to do it for serial and parallel runs, patch is available since
> plumed 2.1.1. However, I would like to make plumed also compatible with
> multisander. I need that for multiple-walkers metadynamics, so I don't
> really need to understand remd code (not yet, but I might be back with
> further questions later on).
> What plumed needs is a communicator with the first process of each group.
> After a few trials I guessed commmaster to be the correct communicator, and
> everything seems to work. However, I noticed that when running normal
> sander (i.e. no multisander) commmaster has size != 1, which was unexpected
> to me.
> The workaround I used so far is:
> 1. M= size of commmaster
> 2. S= size of commsander
> 3. W= size of commworld
> if (M > 1 && S*M==W), then I enable multiple replicas, using communicator
> commmaster
> Notice that all of this goes into runmd.F90
> Is this correct? Or maybe there is some simpler and more robust way to
> detect if multisander is on?

There is a simpler way. Use the "numgroup" variable from the
file_io_dat module (file_io_dat.F90). This will be the same as the size
of commmaster when there is more than 1 group. But when there is only 1
group, it will be set to 1 (by contrast, commmaster is never initialized
when it is not needed).

Hope this helps,

Jason M. Swails
Rutgers University
Postdoctoral Researcher
AMBER mailing list
Received on Wed Jan 28 2015 - 06:30:02 PST
Custom Search