diff --git a/src/Function2D.cpp b/src/Function2D.cpp index e3b8076..f32fcf4 100644 --- a/src/Function2D.cpp +++ b/src/Function2D.cpp @@ -580,6 +580,7 @@ Matrix Aurora::median(const Matrix &aMatrix) { Matrix Aurora::fft(const Matrix &aMatrix) { double *output = nullptr; + mkl_free_buffers(); output = malloc(aMatrix.getDataSize(), true); if (!aMatrix.isComplex()) { cblas_dcopy(aMatrix.getDataSize(), aMatrix.getData(), 1, output, 2); @@ -624,7 +625,7 @@ Matrix Aurora::fft(const Matrix &aMatrix) { //释放资源 status = DftiFreeDescriptor(&my_desc_handle); if (status != DFTI_NO_ERROR) goto error; - + mkl_free_buffers(); return Matrix::New(output, aMatrix.getDimSize(0), aMatrix.getDimSize(1), aMatrix.getDimSize(2), Complex); error: std::cerr<<"FFT fail, error message:"<