ls1-MarDyn
ls1-MarDyn molecular dynamics code
FFTAcceleration_2wayM2L.h
1/*
2 * FFTAcceleration_2wayM2L.h
3 *
4 * Created on: Feb 10, 2016
5 * Author: gallardjm
6 */
7#ifndef FFTACC_ARR_H_
8#define FFTACC_ARR_H_
9
10#include "bhfmm/fft/FFTAccelerationImplementations/FFTDataContainer_arrays.h"
11#include "bhfmm/fft/FFTAccelerationAPI_extensions.h"
12#include "bhfmm/fft/FFTSettings_preprocessor.h"
13#include "bhfmm/fft/FFTSettings.h"
14
25
26public:
27
28 //child class will be upcasted, virtual destructor required to call the right child class destructor
29 virtual ~~FFTAcceleration_2wayM2L() {
30 }
31
33
34 //Not defined since they shouldn't be used
37 FFTDataContainer* TransferFunction) {
38 }
41 FFTDataContainer* TransferFunction) {
42 }
43
44 //2way M2L mathods from FFTAcceleration_2Way
49 FFTDataContainer* TransferFunction);
50 void FFT_M2L_2way_vec(FFTAccelerableExpansion & Source1,
54 FFTDataContainer* TransferFunction);
55
56protected:
57 FFTDataContainer_arrays* getFFTData(FFTAccelerableExpansion & Expansion);
58
59 int _nbZeroes; // number of zeroes used for the padding (see bhfmm/fft/tools/fft_utils)
60 int _totalSize; //_fft_nx * _fft_ny + _nbZeroes * 2, is even as _fft_nx must be even
61};
62
63#endif
Definition: FFTAccelerableExpansion.h:21
API for 2 way M2L.
Definition: FFTAccelerationAPI_extensions.h:21
Definition: FFTAcceleration_2wayM2L.h:24
void FFT_M2L(FFTAccelerableExpansion &Source, FFTAccelerableExpansion &Target, FFTDataContainer *TransferFunction)
Definition: FFTAcceleration_2wayM2L.h:35
void FFT_M2L_2way(FFTAccelerableExpansion &Source1, FFTAccelerableExpansion &Source2, FFTAccelerableExpansion &Target1, FFTAccelerableExpansion &Target2, FFTDataContainer *TransferFunction)
M2L using 2way scheme (see doc/2wayM2L)
Definition: FFTAcceleration_2wayM2L.cpp:33
void FFT_M2L_vec(FFTAccelerableExpansion &Source, FFTAccelerableExpansion &Target, FFTDataContainer *TransferFunction)
Definition: FFTAcceleration_2wayM2L.h:39
void FFT_initialize_Target(FFTAccelerableExpansion &Expansion)
Definition: FFTAcceleration_2wayM2L.cpp:25
Definition: FFTDataContainer_arrays.h:14
Definition: FFTDataContainer.h:14