58 [&](
auto& resultElement)
60 const auto i = &resultElement - result.data();
61 const auto m = static_cast<double>(i / shape.cols);
62 const auto n = static_cast<double>(i % shape.cols);
63 resultElement = std::complex<double>{ 0., 0. };
70 (((
static_cast<double>(k) * m) /
static_cast<double>(
shape.
rows)) +
71 ((
static_cast<double>(l) * n) /
static_cast<double>(
shape.
cols)));
93 template<
typename dtype>
98 const auto data = nc::complex<dtype, double>(inArray);
112 template<
typename dtype>
131 template<
typename dtype>
136 const auto data = nc::complex<dtype, double>(inArray);
150 template<
typename dtype>
155 return ifft2(inArray, inArray.shape());
#define STATIC_ASSERT_ARITHMETIC(dtype)
Definition: StaticAsserts.hpp:39
Holds 1D and 2D arrays, the main work horse of the NumCpp library.
Definition: NdArrayCore.hpp:139
const Shape & shape() const noexcept
Definition: NdArrayCore.hpp:4591
A Shape Class for NdArrays.
Definition: Core/shape.hpp:41
uint32 rows
Definition: Core/shape.hpp:44
uint32 cols
Definition: Core/shape.hpp:45
uint32 size() const noexcept
Definition: Core/shape.hpp:104
constexpr double twoPi
2Pi
Definition: Core/Constants.hpp:40
NdArray< std::complex< double > > ifft2_internal(const NdArray< std::complex< double > > &x, const Shape &shape)
Definition: ifft2.hpp:47
Definition: FFT/fft.hpp:40
NdArray< std::complex< double > > ifft2(const NdArray< std::complex< dtype > > &inArray)
Definition: ifft2.hpp:151
void for_each(InputIt first, InputIt last, UnaryFunction f)
Definition: StlAlgorithms.hpp:226
NdArray< dtype > min(const NdArray< dtype > &inArray, Axis inAxis=Axis::NONE)
Definition: min.hpp:44
auto angle(const std::complex< dtype > &inValue)
Definition: angle.hpp:48
auto polar(dtype magnitude, dtype phaseAngle)
Definition: polar.hpp:49
Shape shape(const NdArray< dtype > &inArray) noexcept
Definition: Functions/shape.hpp:42