7 #ifndef LJ_PME_BASE_H__     8 #define LJ_PME_BASE_H__    13 #define M_PI 3.14159265358979323846    17 #define SQRT_PI 1.7724538509055160273     30   double x,y,z,x1,y1,z1, div;
    31   double *Mx, *My, *Mz, *dMx, *dMy, *dMz;
    37   x1=1.0-x; y1=1.0-y; z1=1.0-z;
    53   for (n=4; n<=
order-1; n++) {
    56     Mx[n] = x*div*Mx[n-1];
    57     My[n] = y*div*My[n-1];
    58     Mz[n] = z*div*Mz[n-1];
    59     for (j=1; j<=n-2; j++) {
    60       Mx[n-j] = ((x+j)*Mx[n-j-1] + (n-x-j)*Mx[n-j])*div;
    61       My[n-j] = ((y+j)*My[n-j-1] + (n-y-j)*My[n-j])*div;
    62       Mz[n-j] = ((z+j)*Mz[n-j-1] + (n-z-j)*Mz[n-j])*div;
    69   dMx[1]=-Mx[1]; dMy[1]=-My[1]; dMz[1]=-Mz[1];
    70   for (j=2; j <= 
order; j++) {
    71     dMx[j] = Mx[j-1] - Mx[j];
    72     dMy[j] = My[j-1] - My[j];
    73     dMz[j] = Mz[j-1] - Mz[j];
    80   for (j=1; j<=
order-2; j++) {
 
static void compute_LjPme_b_spline(double *frac, double *M, double *dM)