diff --git a/bfps/DNS.py b/bfps/DNS.py index 2e18b51c794639ffa0cc070a7a3716c5496be2d6..7c5fdfa7dfd97f9ded6ca387d32af9b7eec4e579 100644 --- a/bfps/DNS.py +++ b/bfps/DNS.py @@ -57,6 +57,7 @@ class DNS(_code): 'mail_address': '', 'mail_events' : None} self.generate_default_parameters() + self.statistics = {} return None def set_precision( self, diff --git a/bfps/cpp/field.cpp b/bfps/cpp/field.cpp index 2b2852a5275ba061676815b5b4d521fbd40f752c..e3c35a517f092b06f63b4c91754d313f7665a18e 100644 --- a/bfps/cpp/field.cpp +++ b/bfps/cpp/field.cpp @@ -1026,11 +1026,13 @@ void field<rnumber, be, fc>::symmetrize() //this->ift(); //this->dft(); //this->normalize(); + //return; typename fftw_interface<rnumber>::complex *cdata = this->get_cdata(); // symmetrize kx = 0 plane, line by line, for ky != 0 MPI_Status *mpistatus = new MPI_Status; - typename fftw_interface<rnumber>::complex *buffer; - buffer = fftw_interface<rnumber>::alloc_complex(ncomp(fc)*this->clayout->sizes[1]); + typename fftw_interface<rnumber>::complex *buffer = new typename fftw_interface<rnumber>::complex[ncomp(fc)*this->clayout->sizes[1]]; + //typename fftw_interface<rnumber>::complex *buffer; + //buffer = fftw_interface<rnumber>::alloc_complex(ncomp(fc)*this->clayout->sizes[1]); /*ptrdiff_t tindex;*/ int ranksrc, rankdst; for (ptrdiff_t iy = 1; iy < ptrdiff_t(this->clayout->sizes[0]/2); iy++) @@ -1072,7 +1074,7 @@ void field<rnumber, be, fc>::symmetrize() { ptrdiff_t izz = (this->clayout->sizes[1] - iz); ptrdiff_t cindex = this->get_cindex(0, iyy, izz); - DEBUG_MSG("iy = %ld, iz = %ld\n", iy, iz); + //DEBUG_MSG("iy = %ld, iz = %ld\n", iy, iz); for (int cc = 0; cc < int(ncomp(fc)); cc++) { (*(cdata + ncomp(fc)*cindex + cc))[0] = (*(buffer + ncomp(fc)*iz+cc))[0]; @@ -1087,7 +1089,8 @@ void field<rnumber, be, fc>::symmetrize() } } } - fftw_interface<rnumber>::free(buffer); + //fftw_interface<rnumber>::free(buffer); + delete[] buffer; delete mpistatus; // symmetrize kx = 0, ky = 0 line if (this->clayout->myrank == this->clayout->rank[0][0])