Bridge++
Version 1.5.4
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
fft_xyz_3dim.h
Go to the documentation of this file.
1
14
#ifndef FFT_XYZ_3DIM_INCLUDED
15
#define FFT_XYZ_3DIM_INCLUDED
16
17
#ifdef USE_FFTWLIB
18
19
#include "
fft.h
"
20
22
30
class
FFT_xyz_3dim :
public
FFT
31
{
32
public
:
33
static
const
std::string class_name;
34
35
private
:
36
bool
m_is_forward;
37
38
Index_lex
m_index;
39
40
fftw_complex *m_in;
41
fftw_complex *m_out;
42
43
fftw_plan m_plan;
44
45
#ifdef USE_MPI
46
ptrdiff_t m_Nz_p, m_z_start_p;
47
#endif
48
49
50
public
:
51
FFT_xyz_3dim()
52
{
53
init();
54
}
55
56
~FFT_xyz_3dim()
57
{
58
tidy_up();
59
}
60
61
void
fft(
Field
& field);
// field is overwritten
62
void
fft(
Field
& field_out,
const
Field
& field_in);
63
void
fft(
Field
& field_out,
const
Field
& field_in,
const
Direction
dir);
64
65
void
set_parameters(
const
Parameters
&);
66
void
set_parameters(
const
std::string& str_fft_direction);
67
68
private
:
69
void
init();
70
void
tidy_up();
71
72
#ifdef USE_FACTORY
73
private
:
74
static
FFT *create_object()
75
{
76
return
new
FFT_xyz_3dim();
77
}
78
79
public
:
80
static
bool
register_factory()
81
{
82
return
FFT::Factory::Register(
"FFT_xyz_3dim"
, create_object);
83
}
84
#endif
85
};
86
//- #endif of #ifdef USE_FFTWLIB
87
#endif
88
#endif
Field
Container of Field-type object.
Definition:
field.h:45
Parameters
Class for parameters.
Definition:
parameters.h:46
Index_lex
Lexical site index.
Definition:
index_lex.h:34
Direction
Direction
Definition:
bridge_defs.h:24
fft.h
src
lib
Tools
fft_xyz_3dim.h
Generated on Thu Mar 19 2020 10:28:24 for Bridge++ by
1.8.6