Converted from c to c++
Gaussian functor
Calc E short range to a template
Added basic Hockney/Eastwood P3M