git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@5835 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
@ -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);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user