PPPM virial issue

Dear LAMMPS users,
I found that, when using kspace_style PPPM, the analytical virial (calculated using compute pressure virial) is different from the numerical one (calculated as -dU / dV with an isocore expansion).
When kspace_style Ewald is used, on the contrary, analytical and numerical virial coincide.
The data are (for the system I’m using):
Ewald
Analytical virial 2171039127 [Eh / A^3]

Numerical virial 2171020145 [Eh / A^3]

PPPM
Analytical virial 2171039537 [Eh / A^3]

Numerical virial 4086541476 [Eh / A^3]

Is there some conceptual error I’m doing or is there a bug?
I’m using LAMMPS version 29 June 2018.
Sincerely,

Francesco Cappelluti (PhD Student, University of L’Aquila)

You can find attached the input file I’m using along with three coordinates file (the one on which the virial is calculated and other two, needed for numerical virial estimation, scaled, respectively, to a slightly lower and higher volume).

tip3p.lmp (754 Bytes)

smaller_water512_bohr.dat (187 KB)

bigger_water512_bohr.dat (188 KB)

water512_bohr.dat (167 KB)

Can you try increasing the PPPM accuracy?

Stan