Bridge++  Version 1.4.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
fft_xyz_1dim.h
Go to the documentation of this file.
1 
14 #ifndef FFT_XYZ_1DIM_INCLUDED
15 #define FFT_XYZ_1DIM_INCLUDED
16 
17 #ifdef USE_FFTWLIB
18 
19 #include "fft.h"
20 
22 
30 class FFT_xyz_1dim : public FFT
31 {
32  public:
33  static const std::string class_name;
34 
35  protected:
37 
38  private:
39  bool m_is_forward;
40 
41  Index_lex m_index;
42 
43  fftw_complex *m_in;
44  fftw_complex *m_out;
45 
46  fftw_plan m_plan;
47 
48 #ifdef USE_MPI
49  ptrdiff_t m_Nsize_in_p, m_start_in_p;
50  ptrdiff_t m_Nsize_out_p, m_start_out_p;
51 #endif
52 
53 
54  public:
55  FFT_xyz_1dim() {}
56 
57  ~FFT_xyz_1dim() {}
58 
59  void fft(Field& field); // field is overwritten
60  void fft(Field& field_out, const Field& field_in);
61 
62  void set_parameters(const Parameters&);
63  void set_parameters(const std::string str_fft_direction);
64 
65  void set_parameter_verboselevel(const Bridge::VerboseLevel vl)
66  {
67  m_vl = vl;
68  }
69 };
70 //- #endif of #ifdef USE_FFTWLIB
71 #endif
72 #endif
Container of Field-type object.
Definition: field.h:39
Class for parameters.
Definition: parameters.h:46
Lexical site index.
Definition: index_lex.h:34
Bridge::VerboseLevel vl
Definition: checker.cpp:18
VerboseLevel
Definition: bridgeIO.h:42