Wolf Summation

Dear all,

With respect to the previous threads(from Peter Wirnsberger) regarding the implementation of the Wolf Summation, it was said that the equation 5.13 (D. Wolf, P. Keblinski, S. R. Phillpot, J. Eggebrecht, J Chem Phys, 110, 8254 (1999)) is implemented in the code, whereas I could see equation 5.11(shifted or charge-neutralized Ewald potential) and 5.12 (Self term) have been implemented, but for attaining the equation 5.13 the 5.11 has to be multiplied by a factor of 0.5.

If I miss something, kindly clarify me.

Thank you,


Hi Srinivasan,

In (5.13) in the Wolf paper the equations are presented for summation over i != j, i.e. a double sum:

(i,j) \in {(1,2),(1,3),…,(1,N), (2,1),…,(N-1,N)}.

However, in LAMMPS the summation is probably carried out over ordered pairs for better efficiency:

(i,j) \in {(1,2), (1,3), (2,3),…,(N-1,N)}

In this case multiplying by the factor 1/2, as suggested in the paper, would be wrong since

1/2 \sum_{i != j} u(r_ij) = \sum_{i<j} u(r_ij) if u(r_ij) = u(r_ji), which is the case here.

I think this causes the confusion, but maybe somebody else could confirm this.

Best regards,


due to newton's third law, the relation

Sum_{i < j} U(r_ij) = 1/2 * Sum{i != j} U(r_ij)

always holds true for pairwise interactions and thus the two
expressions are used and implemented interchangeably. LAMMPS gives the
option to either apply or not apply newton's third law for pairs,
where one atom is a ghost atom, i.e. is owned by a different domain.