28 template <
typename T,
int N>
30 Array<typename FourierTransform<T,N>::ElementX,M,M>
36 template <
typename T,
int N>
46 template <
typename T,
int N>
54 if (x.
empty()) x = initializeX(shape);
55 if (k.
empty()) k = initializeK(shape);
60 template <
typename T,
int N>
67 initialize(shape,x,k);
74 FFTW_MEASURE | FFTW_DESTROY_INPUT
82 template <
typename T,
int N>
89 initialize(shape,x,k);
96 FFTW_MEASURE | FFTW_DESTROY_INPUT
104 template <
typename T,
int N>
111 initialize(shape,x,k);
115 N, shape.
begin()+1, shape[0],
116 x.
getData(), NULL, 1, x.template getStride<0>(),
117 k.
getData(), NULL, 1, k.template getStride<0>(),
118 FFTW_MEASURE | FFTW_DESTROY_INPUT
126 template <
typename T,
int N>
133 initialize(shape,x,k);
137 N, shape.
begin()+1, shape[0],
138 k.
getData(), NULL, 1, k.template getStride<0>(),
139 x.
getData(), NULL, 1, x.template getStride<0>(),
140 FFTW_MEASURE | FFTW_DESTROY_INPUT
148 template <
typename T,
int N>
155 template <
typename T,
int N>
detail::ExternalInitializer< T, N, Owner > external(T *data, Vector< int, N > const &shape, Vector< int, N > const &strides, Owner const &owner)
Create an expression that initializes an Array with externally allocated memory.
T product() const
Return the product of all elements.
#define NDARRAY_ASSERT(ARG)
A fixed-size 1D array class.
Index getShape() const
Return a Vector of the sizes of all dimensions.
iterator begin()
Return an iterator to the beginning of the Vector.
iterator end()
Return an iterator to the end of the Vector.
Element * getData() const
Return a raw pointer to the first element of the array.
bool empty() const
Return true if the first dimension has no elements.
A multidimensional strided array.
< unspecified-expression-type > equal(ExpressionBase< Operand > const &operand, Scalar const &scalar)
Traits classes that wrap FFTW in a template-friendly interface.
Manager::Ptr getManager() const
Return the opaque object responsible for memory management.