Re: [AMBER] restraining in xz coordinates only

From: Jason Swails <jason.swails.gmail.com>
Date: Thu, 30 Apr 2015 14:12:51 -0400

On Thu, 2015-04-30 at 09:33 -0400, Samaneh Mesbahi wrote:
> Dear amber users,
>
> I am trying to restrain an ion in x and z coordinates and so letting it
> move only in y direction, such that when I apply steered molecular dynamics
> to pull the ion in/out, it only moves in y direction (essentially, I want
> to drag the ion in y coordinate into the protein).
>
> I have read some of the previous questions on this:
> http://archive.ambermd.org/201406/0378.html
> http://archive.ambermd.org/201405/0596.html
>
> My question is that,
> 1) After modifying the constraint file, all other restraints will also be
> applied in x and z only - I don't want this! Because my other restraints
> should be in xyz, how can this be solved?

By writing the code appropriate to do so. The approaches described in
those posts are hacks aimed at accomplishing the precise task that the
OP wanted to accomplish. If you know the atom indices you want to
restrain in X/Y and which ones you want to restrain in all dimensions,
you can hard-code those numbers into pmemd, but then pmemd will only
work for that system you coded it for.

You can generalize the code if you have the time, patience, and
expertise (in which case, we'd invite you to contribute it back!). But
it can only be solved by writing the code to accomplish this.

> 2) Does this modification apply to nmr type restraint (nmropt=1) or
> positional restraint (ntr=1)? or both?

Just the positional restraints.

> 3) Also, can I do this in pmemd.cuda?

Sure, but the modifications you linked above don't apply there. You
would need to find the place in the pmemd.cuda code where this is
actually done and apply those changes there. Note that this is not as
easy as you'd think, since the atom ordering inside the CUDA code is
different than the ordering inside the CPU code or the prmtop file (and
needs to be to achieve the performance it does).

An alternative program that is designed to make this type of thing
easier is OpenMM, where you can define a custom external force using
whatever energy equation you want (so you can restrain in *just* the x,
y, and/or z-directions for each atom), and it runs on GPU hardware with
nice performance. (https://simtk.org/home/openmm)

Have a look at the ParmEd project if you want to use your Amber prmtop
files with OpenMM (http://github.com/ParmEd/ParmEd -- although if you
wait about a week a newer version will be released with AmberTools 15).
You can find more details about it here:
http://parmed.github.io/ParmEd/html/openmm.html with examples of using
Amber files here: http://parmed.github.io/ParmEd/html/omm_amber.html.
Some of the "tricks and recipes" that I list here:
https://github.com/ParmEd/ParmEd/wiki/OpenMM-Tricks-and-Recipes should
help you figure out how to design the restraints you want.

HTH,
Jason

-- 
Jason M. Swails
BioMaPS,
Rutgers University
Postdoctoral Researcher
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu Apr 30 2015 - 11:30:04 PDT
Custom Search