[gmx-users] Getting the virial for each individual atom.

Marcin, Zachary zachary.marcin at wilkes.edu
Mon Jan 21 18:35:04 CET 2013

For the research I'm working with, I need to get the virial for each
individual atom in the system.  I've been tracing all of the calls made in
the methods related to virials(Version 4.5.5) and this is the call stack
that I think has what I need.
mdrun.c -> do_md in md.c -> do_force in sim_util.c -> calcvir.c

I have a few questions that I was wondering if anyone could answer.

1.  In sim_util.c, there is a comment that says "Total virial computed in
global_stat, called from do_md".  I cannot find where this is called in
do_md.  Was this changed at any point and the comment was still left in the

2.  If I change the codes in calcvir.c to find the virials for each
individual atom, say by piping the atom numbers and forces and everything
needed into another program so it doesn't effect the way that gromacs runs
and will still allow everything to do what it needs, will this be screwed
up by/screw up the domain decomposition/the mpi stuff?

Basically, I'm looking for advice on a method to output the individual
virials for each atom for each frame, instead of just the final output of
the average virial on the entire system.
Zach Marcin
Wilkes University

More information about the gromacs.org_gmx-users mailing list