PPPM Scheme

Hi all,

I am trying to understand how the PPPM scheme works. I understand that the particles are decomposed and placed on a grid and that each grid represents a weighted value of the particle’s overall mass/charge.

I borrowed the PPPM scheme from pppm/disp.cpp and applied it to particle densities in a file I am developing. When I have the particles centrally located in the box, I get back the particle density perfectly; however, when the particle is close to the edge of the box (position: -2.552, 4.965, 4.987 in a box of (-5,5) for all dimensions) the sum of the grid reports a value smaller than the true density, which makes me think the particle’s representation isn’t fully captured on the mesh.

What happens near the boundaries of the box? Does the decomposition extend across system and assign the particle weights to the other side of the box? I would assume it would but I can’t find where it is done in the pppm.cpp file in the make_rho_none routine.

Thanks in advance.