Re: [AMBER] questions for mdgx-virtual site

From: David Cerutti <>
Date: Fri, 29 May 2020 05:49:46 -0400

Another note: if you are trying to simulate a mixture of two solvents and
finding that the two molecular models do not want to stay mixed, this is a
well-known problem in many models. If you want to just have virtual sites
(extra points) sticking out of the benzene to push benzenes away from each
other, that's one way to do it but it sounds extremely "staged" shall we
say. It would be like you've contrived the model and getting any useful
properties out of it would be a hard sell. I'm not actually sure you could
do this--mdgx is going to see the LJ parameters you assign to the virtual
sites and then try to apply the reigning LJ combining rule to determine how
they interact with other atoms. So they'd interact with ALL other atoms of
the simulation according to Lorentz-Berthelot combining rules, I expect,
not just other virtual sites.


On Fri, May 29, 2020 at 5:42 AM David Cerutti <> wrote:

> OK, so good evening! mdgx is not going to be FAST simulator but if you
> just need to get a system running a few thousand (or even million) steps of
> MD then it'll do fine. I am working right now to enable this virtual site
> functionality in pmemd and also tleap, so with luck it'll be possible to
> create more interesting molecular models in the standard MD engines soon.
> For the &rule namelist, it's... a &namelist, just like &cntrl or &ewald in
> the sander and pmemd programs. The parser I wrote for it is not
> technically the Fortran standard, but it gets things pretty well and lets
> you have some flexibility. I would try writing this first:
> &rule
> frame1 = "C1",
> frame2 = "C2",
> epname = "VSB",
> style = 1,
> v12 = 0.5,
> sig = 2.1,
> eps = 0.05,
> residue = "UNK",
> &end
> In your input, you have lots of colon punctuation (:) that mdgx won't know
> how to parse (nor will sander or pmemd). And I've written the above in
> shorthand. There are aliases for all those keywords if you find one or the
> other easier to remember ("sig" can also be "Sigma"), but the keywords ARE
> case-sensitive. The "epname" keyword actually has four aliases, "epname",
> "atom", "AtomName", and "ExtraPoint." (I went a little overboard there.)
> The excl2 keyword is an ATTEMPT at a glaring problem with some extra
> points: if they're right on the middle of a bond, or equally close to more
> than one real atom in general, how do we count their exclusions? (This is a
> reason that one of the experienced force field developers I work with
> demands that all of these extra points be close to their ONE parent atom
> (which I refer to in mdgx as frame1) to make a tight association.) By
> definition, an extra point is 1:1 to its parent atom, so all non-bonded
> exclusions of the frame1 atom will be inherited by the extra point. But if
> you specify excl2, it's going to take your frame2 atom and say that the
> extra point is also 1:1 to that. Ditto for excl3, so the extra point is
> accumulating more and more exclusions, atoms that it will not count
> interactions with.
> This makes me realize that I need to document this part of the code a bit
> better, specifically in the onboard manual. There are descriptions for all
> mdgx &namelists available by typing, i.e. mdgx -PARAM on the command line.
> But not for &rule...
> Happy to help more, and you are not the first to make use of mdgx to
> create some very unorthodox (not unusual, just not what the typical
> programs simulate) molecular models. It HAS been done before, and not just
> by me :-)
> Dave
> On Fri, May 29, 2020 at 4:30 AM Gao J <> wrote:
>> Hello
>> I want to perform mix-solvent MD in amber and to prevent aggregation
>> ofbenzene probes, I need to set virtual sites on the probes with L-J
>> repulsions between themselves merely. My parameters for &rule were as
>> follows and I got an error said "ReadEPRuleFile >> Error. Extra point name
>> unspecified." So I wonder what the correct format of "epname" or "atom"
>> required. What's more, I am a little confused if any parameters needed for
>> "excl[1,2]".
>> I really appreciate for your help!
>> &rule
>> frame[1,2]: C1 C4
>> epname: VSB
>> atom: VSB
>> style: 1
>> excl[1,2]
>> v12: 0.5
>> Sig: 21
>> eps: 0.01
>> residue: UNK
>> &end
>> _______________________________________________
>> AMBER mailing list
AMBER mailing list
Received on Fri May 29 2020 - 03:00:03 PDT
Custom Search