AW: Re: DEVELOPER QUESTION -> NAMD Internal energy unit and TCL interface

From: Norman Geist (
Date: Thu Oct 24 2013 - 11:51:38 CDT

Thank you for your interest. The problem is as follows:

I adapted the replica.namd script to run $steps_per_run-$somesteps. Then
there's a loop that does "run 1" * $somesteps to fill up the rest of
$steps_per_run. Inbetween the "run 1" im using the "save_array" command to
get the current energies. All this is done with
stepspercycle/fullelectfrequency/nonbondedfreq = 1. Now the weird thing is
that the potential energies I get between the "run 1" are about 9 times
higher until a interval of outputenergies is hit. So as replica.namd sets
output energies to $steps_per_run/10 my energies are huge (about 104000) for
9 steps and the last one that fills the 10 is comparable to the ones that
get printed to the logfile (about 1500). That’s the reason I supposed that
namd transforms the values before writing them to the log and that as long
there's no need to output them, it stores them in some computational
optimized manner. I hope I explained better now and that you know what I'm
talking about. I need to know what exact factor is in there, or why this
"mysterious" save_array command where I have no idea where it gets the
values from, outputs that weird numbers.

Thanks a lot

Norman Geist.

> -----Ursprüngliche Nachricht-----
> Von: [] Im
> Auftrag von Jim Phillips
> Gesendet: Donnerstag, 24. Oktober 2013 17:02
> An: Norman Geist
> Cc: Namd Mailing List
> Betreff: namd-l: Re: DEVELOPER QUESTION -> NAMD Internal energy unit
> and TCL interface
> On Thu, 24 Oct 2013, Norman Geist wrote:
> > I'm currently adapting some of the replica.namd TCL code. I noticed,
> that
> > the energies got through save_array output different values before
> and after
> > outputenergies took effect. Could it be that namd stores these values
> in a
> > different unit and that the energies get transformed before printed
> to the
> > log? What's the exact factor here?
> Energy is always kcal/mol. The outputEnergies setting also controls
> how
> often nonbonded (vdw and electrostatic) energies are calculated, so you
> want outputEnergies to be a multiple of fullElectFrequency and
> steps_per_run to be a multiple of outputEnergies.
> Beyond that I don't understand your question.
> > Additionally, the procedure how to get these energy values isn't
> documented
> > very well. Are these values accessible from TCLforces, too, this
> would save
> > me from doing "run 1" what unfortunately comes with "stepspercycle 1"
> > "fullelectfrequency 1" and "nonbondedfreq 1".
> Try "run 0" instead. It'll do one energy evaluation with no
> integration.
> We could make energies from the *previous* timestep available in
> tclForces
> (the way total forces on requested atoms are available now). This
> would
> provide the timestep synchronization that I think you're looking for.
> Jim

This archive was generated by hypermail 2.1.6 : Wed Dec 31 2014 - 23:21:49 CST