Question regarding NAMD nonbonded routines

From: Vincent Kraeutler (
Date: Wed Jul 25 2007 - 11:55:40 CDT


I am new to NAMD and faced with the task performing a modification of
the nonbonded (shortrange) interaction evaluation routines
(Lennard-Jones and real-space electrostatic interactions).

To my shame I have to admit I am having a rather difficult time
navigating the corresponding code, and I am looking for hints regarding
the higher-level layout of the nonbonded routines in NAMD. In
particular, pointers to the routines carrying out the evaluation of the
corresponding two-body terms would be much appreciated. It seems obvious
that they are contained in the ComputeNonbonded* files, but that is
still quite a number of files, and I am finding it difficult to
disentangle their relationships. (In particular, I'm unable to find a
definition for "calc_pair_energy", which seemed like a promising candidate.)

Also, I have some specific questions, which perhaps you may find easy to

a) The NAMD paper briefly discusses "patches" (corresponding to disjoint
pieces of the computational box) and "compute objects" (responsible for
"evaluating" patches or pairs thereof). Do these two concepts correspond
to specific classes/data structures? If so, which ones?

b) The User's Guide suggests that the short-range nonbonded interactions
in NAMD consist of just the LJ and Coulomb (plus PME correction) terms.
Is this correct? Is my understanding correct that straight truncation is
used for the LJ interactions (i.e. no correction terms)? From the
contents of the User's Guide I am tempted to infer that the cutoff used
for the real-space electrostatic interactions is the same as the cutoff
for the LJ interactions (i.e. the two pairlists are identical). Can you
confirm this?

Kind regards,

This archive was generated by hypermail 2.1.6 : Wed Feb 29 2012 - 15:45:00 CST