ls1-MarDyn
ls1-MarDyn molecular dynamics code
FFTAcceleration_scalBlocks_v0.h
1/*
2 * FFTAcceleration_scalBlocks_v0.h
3 *
4 * Created on: Mar 15, 2016
5 * Author: gallardjm
6 */
7#ifndef FFTACC_SCALBLOCKS_V0_H_
8#define FFTACC_SCALBLOCKS_V0_H_
9
10#include "bhfmm/fft/FFTAccelerationImplementations/block/FFTDataContainer_scalBlocks_v0.h"
11#include "bhfmm/fft/FFTAccelerationAPI.h"
12#include "bhfmm/fft/FFTSettings_preprocessor.h"
13#include "bhfmm/fft/FFTSettings.h"
14#include "bhfmm/fft/tools/optimizedFFT/optFFT_API_Factory.h"
15
16/*
17 * v0 version of scaling block
18 *
19 * Use FFTDataContainer_scalBlocks_v0 as Data container (2 arrays of matrices)
20 */
22
23public:
24
27 delete _optFFT_API;
28 delete[] _blockSize;
29 }
30
33 double radius);
35
37 double radius);
38
39 void FFT_M2L(FFTAccelerableExpansion & Source,
41 FFTDataContainer* TransferFunction);
44 FFTDataContainer* TransferFunction);
45
46protected:
48 FFTAccelerableExpansion & Expansion);
49 FFTDataContainer_scalBlocks_v0* getFFTData_scal(
50 FFTAccelerableExpansion & Expansion);
51 optFFT_API* _optFFT_API;
52
53 int _nbBlocks;
54 int _nbLinePerBlock; //number of usefull line per block
55 int* _blockSize; //fft_ny size of each block
56
57};
58
59#endif
Definition: FFTAccelerableExpansion.h:21
Definition: FFTAccelerationAPI.h:22
Definition: FFTAcceleration_scalBlocks_v0.h:21
void FFT_initialize_TransferFunction(FFTAccelerableExpansion &Expansion)
Definition: FFTAcceleration_scalBlocks_v0.cpp:234
void FFT_M2L(FFTAccelerableExpansion &Source, FFTAccelerableExpansion &Target, FFTDataContainer *TransferFunction)
Definition: FFTAcceleration_scalBlocks_v0.cpp:166
void FFT_M2L_vec(FFTAccelerableExpansion &Source, FFTAccelerableExpansion &Target, FFTDataContainer *TransferFunction)
Definition: FFTAcceleration_scalBlocks_v0.cpp:228
void FFT_finalize_Target(FFTAccelerableExpansion &Expansion, double radius)
Definition: FFTAcceleration_scalBlocks_v0.cpp:116
void FFT_initialize_Target(FFTAccelerableExpansion &Expansion)
Definition: FFTAcceleration_scalBlocks_v0.cpp:73
void FFT_initialize_Source(FFTAccelerableExpansion &Expansion, double radius)
Definition: FFTAcceleration_scalBlocks_v0.cpp:81
Definition: FFTDataContainer_scalBlocks_v0.h:23
Definition: FFTDataContainer.h:14
Definition: optFFT_API.h:18