From 80b044e875e1f44d3a7da4870abe172c35db1f0a Mon Sep 17 00:00:00 2001 From: sjplimp Date: Thu, 16 Feb 2012 16:15:09 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@7805 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- src/KSPACE/ewald.cpp | 7 +++++++ src/KSPACE/pppm.cpp | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/src/KSPACE/ewald.cpp b/src/KSPACE/ewald.cpp index 731509970a..106ab6961f 100644 --- a/src/KSPACE/ewald.cpp +++ b/src/KSPACE/ewald.cpp @@ -855,6 +855,13 @@ void Ewald::slabcorr() const double qscale = force->qqrd2e * scale; if (eflag_global) energy += qscale * e_slabcorr; + + // per-atom energy + + if (eflag_atom) { + double efact = 2.0*MY_PI*dipole_all/volume; + for (int i = 0; i < nlocal; i++) eatom[i] += qscale * q[i]*x[i][2]*efact; + } // add on force corrections diff --git a/src/KSPACE/pppm.cpp b/src/KSPACE/pppm.cpp index 8cd30a76e1..3f640e3456 100644 --- a/src/KSPACE/pppm.cpp +++ b/src/KSPACE/pppm.cpp @@ -2445,6 +2445,13 @@ void PPPM::slabcorr() if (eflag_global) energy += qscale * e_slabcorr; + // per-atom energy + + if (eflag_atom) { + double efact = 2.0*MY_PI*dipole_all/volume; + for (int i = 0; i < nlocal; i++) eatom[i] += qscale * q[i]*x[i][2]*efact; + } + // add on force corrections double ffact = -4.0*MY_PI*dipole_all/volume;