git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@12637 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp
2014-10-20 21:17:46 +00:00
parent e2ff85f14c
commit f350cc4ec7
16 changed files with 133 additions and 74 deletions

View File

@ -667,8 +667,16 @@ void PPPM::compute(int eflag, int vflag)
if (evflag_atom) fieldforce_peratom();
// update qsum and qsqsum, if needed
if (eflag_global || eflag_atom) {
if (qsum_update_flag || (atom->natoms != natoms_original)) {
qsum_qsq(0);
natoms_original = atom->natoms;
}
}
// sum global energy across procs and add in volume-dependent term
// reset qsum and qsqsum if atom count has changed
const double qscale = qqrd2e * scale;
@ -677,11 +685,6 @@ void PPPM::compute(int eflag, int vflag)
MPI_Allreduce(&energy,&energy_all,1,MPI_DOUBLE,MPI_SUM,world);
energy = energy_all;
if (qsum_update_flag || (atom->natoms != natoms_original)) {
qsum_qsq(0);
natoms_original = atom->natoms;
}
energy *= 0.5*volume;
energy -= g_ewald*qsqsum/MY_PIS +
MY_PI2*qsum*qsum / (g_ewald*g_ewald*volume);