Created periodic.h and put Periodic class in between Evaluate & Kernel.
Merged periodic_gpu with direct_gpu.
Merged periodic_near with serialrun.
Added far field periodic FMM.
Merged periodic.h into evaluator.h.
Merged overlapping cpuSpherical & gpuSpherical into spherical.h.
Coded parallel periodic FMM but not debugged yet.
Fixed bug in parallel periodic FMM, now working.
Simplified Spherical/Cartesian switchover.
Getting ready to add Biot Savart kernel.
body.pos -> body.X.
body.scal -> body.Q.
Generalized kernel interface in preparation of vortex kernels.
Added laplace.h, which calls dataset.h.
Initialization and error calculation of body values are now kernel
independent.
Added CPU & GPU BiotSavart kernels.
CPU kernel is working, GPU kernel is not.
setSourceBody, setTargetBody, and getTargetBody were kernel dependent
so gpuEvaluator had to be split into LaplaceEvaluator & BiotSavartEvaluator.
Debugged Biot-Savart GPU kernel.
Added stretching CPU kernel (fully debugged).
Added stretching GPU kernel (fully debugged).
Added wrapper for laplace kernel with simple interface.
Added example that calls the wrapped FMM.
Added wrapper for Biot Savart and Stretching kernel.
Had problems when calling both libraries simultaneously.
#ifdef -> #if, #else -> #elif.
gpu.h -> pregpu.h, postgpu.h.
gpuEvaluator.cu -> gpuEvaluator.cxx.
Added multi-kernel library capability.
vortex.cxx is now working for Biot Savart & Stretching simultaneously.
Change test range to [-pi,pi].
R0 = M_PI if IMAGES != 0.
GPU kernel launch error check.
Added unsorting routine to sort.h.
Deleted sortLarge().
Reorganized/renamed sorting routines.
I -> ICELL.
Added IBODY,IPROC to tag initial body index and rank.
Selective logging of periodic routines.
unsortBodies -> std::sort.
Added unsorting to wrappers.
Bugfix for load to sheared memory in P2M/P2P GPU kernel.