Matrix::IFFT2DToReal Method

Overload List

#SignatureDescription
1TMtx *IFFT2DToReal(bool NoScale = false) const;Inverse two-dimensional Fast Fourier Transformation from complex to real.
2TMtx *IFFT2DToReal(TMtx *Mtx, bool NoScale = false) const;Inverse two-dimensional Fast Fourier Transformation from complex to real.

Overload 1: TMtx *IFFT2DToReal(bool NoScale = false) const;

Inverse two-dimensional Fast Fourier Transformation from complex to real.

#NameTypeDescription
1NoScale = falsebool
Remarks:

Transformation is applied in-place. Source matrix Complex property must be false, if Matrix::FFTStorageFormat was set to fsfPack or to fsfPack. Source matrix Complex property must be True, if Matrix::FFTStorageFormat was set to fsfCCS. The calling matrix becomes real. Size of the calling matrix is not changed if Matrix::FFTStorageFormat was set to fsfPack or to fsfPack. Size of calling matrix will be set to [Rows, 2*Cols], if Matrix::FFTStorageFormat is set to fsfCCS, i.e. matrix changes Matrix::Complex property, but does not reallocate storage for elements. All elements are involved into inverse transformation, but number of reconstructed elements depends on the property Matrix::FFTStorageFormat. If that property is set to fsfPerm or to fsfPack, then all elements will be reconstructed after inverse transformation. If that property is set to fsfCCS (which is default), then the number of element's which will be reconstructed depends on the property Matrix::FFTOddLength and these rules will be followed:

  • Number of source columns and rows must be more than one. Exception will be raised otherwise;
  • if Matrix::FFTOddLength is set to False, elements in range [0..Cols-2] x [0..Rows-2] will be reconstructed;
  • if Matrix::FFTOddLength is set to True, elements in range [0..Cols-1] x [0..Rows-2] will be reconstructed; Here Cols and Rows are the number of columns and rows of the calling matrix after the inverse transformation.

Note
Both properties Matrix::FFTStorageFormat and Matrix::FFTOddLength must be set to the same values for forward and inverse transformation to get reversible results. NoScale parameter allows the scaling to be turned off.

See Also: Matrix::FFT2D, Matrix::FFT2DFromReal, Matrix::IFFT2D
Declared in Dew::Math::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 2: TMtx *IFFT2DToReal(TMtx *Mtx, bool NoScale = false) const;

Inverse two-dimensional Fast Fourier Transformation from complex to real.

#NameTypeDescription
1MtxTMtx *
2NoScale = falsebool
Remarks:

Transformation is applied on source Mtx matrix and results are saved in the calling matrix. Source matrix must be real, if Matrix::FFTStorageFormat was set to fsfPack or to fsfPack. Check the storage format requirements to see how the complex numbers are to be stored in a real matrix. Source matrix must be complex, if Matrix::FFTStorageFormat was set to fsfCCS. The source matrix will not be changed. The calling matrix becomes real. Size of the calling matrix will be set to [Mtx.Rows,Mtx.Cols], if Matrix::FFTStorageFormat was set to fsfPack or to fsfPack. Size of calling matrix will be set to [Mtx.Rows, 2*Mtx.Cols], if Matrix::FFTStorageFormat is set to fsfCCS. All element are involved into the inverse transformation, but the number of reconstructed elements depends on the property Matrix::FFTStorageFormat. If that property is set to fsfPerm or to fsfPack, then all elements will be reconstructed after inverse transformation. If that property is set to fsfCCS (which is default), then the number of elements which will be reconstructed depends on the property Matrix::FFTOddLength and these rules will be followed:

  • Number of source columns and rows must be more than one. An exception will be raised otherwise;
  • if Matrix::FFTOddLength is set to False, elements in range [0..Cols-2] x [0..Rows-2] will be reconstructed;
  • if Matrix::FFTOddLength is set to True, elements in range [0..Cols-1] x [0..Rows-2] will be reconstructed;
  • Here Cols and Rows are the number of columns and rows of the calling matrix after the inverse transformation.

Note
Both properties Matrix::FFTStorageFormat and Matrix::FFTOddLength must be set to the same values for forward and inverse transformation to get reversible results. NoScale parameter allows the scaling to be turned off.

See Also: Matrix::FFT2D, Matrix::FFT2DFromReal, Matrix::IFFT2D
Declared in Dew::Math::Matrix · Dew.Math/MtxExpr.h · Cross-compiler