Matrix.IFFT2D Method

Overload List

#SignatureDescription
1function IFFT2D(const Mtx: TMtx; NoScale: Boolean): TMtx;Inverse two-dimensional Fast Fourier Transformation from complex to complex.
2function IFFT2D(NoScale: Boolean): TMtx;Inverse two-dimensional Fast Fourier Transformation from complex to complex.

Overload 1: function IFFT2D(const Mtx: TMtx; NoScale: Boolean): TMtx;

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

#NameTypeDescription
1MtxTMtx
2NoScaleBoolean

Result: stored in self (calling object), returns self for chaining

Remarks:

Transformation is applied on Mtx matrix and results are saved in the calling matrix. The source matrix must be complex. If source matrix is real, an exception will be raised. The source matrix is not changed. Calling matrix will be complex and will have the same size as the source matrix. NoScale parameter allows the scaling to be turned off.

Examples
var a,b: Matrix;
    begin
        a.SetIt (2,4,False,
            [1, 2, 3, 4,
            -5, 6,-7, 8] );
        a.ExtendToComplex;

        b.IFFT2D(a);
        // result will be
//          [(1.5, 0), (0, -0.5), (-3.5, 0),  (0, 0.5),
//             (1, 0), (-0.5, 0),    (3, 0), (-0.5, 0) ]

    end;
See Also: Matrix.FFT2D, Matrix.FFT2DFromReal, Matrix.IFFT2DToReal

Overload 2: function IFFT2D(NoScale: Boolean): TMtx;

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

#NameTypeDescription
1NoScaleBoolean

Result: stored in self (calling object), returns self for chaining

Remarks:

Transformation is applied in-place. Source matrix must be complex. If source matrix is real, an exception will be raised. result matrix will be complex. Size of the calling matrix is not changed. NoScale parameter allows the scaling to be turned off.

Examples
var a: Matrix;
begin
    a.SetIt (2,4,False,
        [1, 2, 3, 4,
        -5, 6,-7, 8] );
    a.ExtendToComplex;

    a.IFFT2D;
    // result will be
    // [(1.5, 0), (0, -0.5), (-3.5, 0),  (0, 0.5),
    // [1, 0), (-0.5, 0),    (3, 0), (-0.5, 0) ]
end;
See Also: Matrix.FFT2D, Matrix.FFT2DFromReal, Matrix.IFFT2DToReal