Re: [AMBER-Developers] virial checks with sander/debug.F90 chkvir

From: Timothy J Giese <>
Date: Tue, 10 Dec 2013 11:36:37 -0500

On 12/05/2013 07:24 PM, Timothy J Giese wrote:
> I'm more interested in trying to get the atomic virials to work first because the molecular virials are related to them.

I'm going to have to move on to something else for the time being;
however, let me leave this off with a few last comments for future

The analytic formulas used to compute the atomic virial in amber are
origin-independent; however, the numerical tests appear to depend on origin.

I take a water box pdb file, strip out the hydrogens, rename the
residues WLJ, and reorder the numbering so there is 1 LJ atom per residue.

I can use tleap in two different ways.

(1) The first way does not set ifbox in the prmtop, nor does it assign
atoms to molecules (the molecular virial treats the entire system as the
molecule - but let's just look at the atomic virial)
o = createAtom O OW 0.000
set o element O
r = createResidue WLJ
add r o
WLJ = createUnit WLJ
add WLJ r
set WLJ.1 restype solvent
set WLJ.1 imagingAtom WLJ.1.O
saveOff WLJ wlj.lib
loadOff wlj.lib
mol = loadpdb boxlj.pdb
saveamberparm mol boxlj.parm7 boxlj.inpcrd
One must then manually add the box information to the bottom of the inpcrd.

(2) The second way uses
set mol box 29.3
right before saveamberparm, which causes ifbox=1 and assigns the atoms
to molecules.

The other difference is that (1) centers the atoms such that the origin
is in the middle of the atoms, whereas (2) places the origin at the
"lower left hand corner" of the box.

When I run the numerical tests with these two systems, the
analytically-computed atomic virials are the same for both cases, but
the numerically-computed atomic virials differ. The analytic and
numerical virials agree when the origin is the center of the box, but
disagree when it is the lower-left-hand corner.


AMBER-Developers mailing list
Received on Tue Dec 10 2013 - 09:00:03 PST
Custom Search