git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@5835 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp
2011-03-25 21:13:51 +00:00
parent e3cf018311
commit fbb475b9cd
149 changed files with 1402 additions and 1660 deletions

View File

@ -90,7 +90,7 @@ PPPM::~PPPM()
{
delete [] factors;
deallocate();
memory->destroy_2d_int_array(part2grid);
memory->destroy(part2grid);
}
/* ----------------------------------------------------------------------
@ -659,9 +659,9 @@ void PPPM::compute(int eflag, int vflag)
// extend size of per-atom arrays if necessary
if (atom->nlocal > nmax) {
memory->destroy_2d_int_array(part2grid);
memory->destroy(part2grid);
nmax = atom->nmax;
part2grid = memory->create_2d_int_array(nmax,3,"pppm:part2grid");
memory->create(part2grid,nmax,3,"pppm:part2grid");
}
energy = 0.0;
@ -745,7 +745,7 @@ void PPPM::allocate()
(double *) memory->smalloc(nfft_both*sizeof(double),"pppm:greensfn");
work1 = (double *) memory->smalloc(2*nfft_both*sizeof(double),"pppm:work1");
work2 = (double *) memory->smalloc(2*nfft_both*sizeof(double),"pppm:work2");
vg = memory->create_2d_double_array(nfft_both,6,"pppm:vg");
memory->create(vg,nfft_both,6,"pppm:vg");
memory->create1d_offset(fkx,nxlo_fft,nxhi_fft,"pppm:fkx");
memory->create1d_offset(fky,nylo_fft,nyhi_fft,"pppm:fky");
@ -757,9 +757,8 @@ void PPPM::allocate()
// summation coeffs
gf_b = new double[order];
rho1d = memory->create_2d_double_array(3,-order/2,order/2,"pppm:rho1d");
rho_coeff = memory->create_2d_double_array(order,(1-order)/2,order/2,
"pppm:rho_coeff");
memory->create2d_offset(rho1d,3,-order/2,order/2,"pppm:rho1d");
memory->create2d_offset(rho_coeff,order,(1-order)/2,order/2,"pppm:rho_coeff");
// create 2 FFTs and a Remap
// 1st FFT keeps data in FFT decompostion
@ -799,7 +798,7 @@ void PPPM::deallocate()
memory->sfree(greensfn);
memory->sfree(work1);
memory->sfree(work2);
memory->destroy_2d_double_array(vg);
memory->destroy(vg);
memory->destroy1d_offset(fkx,nxlo_fft);
memory->destroy1d_offset(fky,nylo_fft);
@ -809,8 +808,8 @@ void PPPM::deallocate()
memory->sfree(buf2);
delete [] gf_b;
memory->destroy_2d_double_array(rho1d,-order/2);
memory->destroy_2d_double_array(rho_coeff,(1-order)/2);
memory->destroy2d_offset(rho1d,-order/2);
memory->destroy2d_offset(rho_coeff,(1-order)/2);
delete fft1;
delete fft2;
@ -826,7 +825,8 @@ void PPPM::set_grid()
// see JCP 109, pg 7698 for derivation of coefficients
// higher order coefficients may be computed if needed
double **acons = memory->create_2d_double_array(8,7,"pppm:acons");
double **acons;
memory->create(acons,8,7,"pppm:acons");
acons[1][0] = 2.0 / 3.0;
acons[2][0] = 1.0 / 50.0;
@ -964,7 +964,7 @@ void PPPM::set_grid()
// free local memory
memory->destroy_2d_double_array(acons);
memory->destroy(acons);
// print info
@ -1803,7 +1803,8 @@ void PPPM::compute_rho_coeff()
int j,k,l,m;
double s;
double **a = memory->create_2d_double_array(order,-order,order,"pppm:a");
double **a;
memory->create2d_offset(a,order,-order,order,"pppm:a");
for (k = -order; k <= order; k++)
for (l = 0; l < order; l++)
@ -1829,7 +1830,7 @@ void PPPM::compute_rho_coeff()
m++;
}
memory->destroy_2d_double_array(a,-order);
memory->destroy2d_offset(a,-order);
}
/* ----------------------------------------------------------------------