Matrix.FFT2D Method

Overload List

#SignatureDescription
1function FFT2D: TMtx;Forward two-dimentional Fast Fourier Transformation from real/complex to complex.
2function FFT2D(const Mtx: TMtx): TMtx;Forward two-dimentional Fast Fourier Transformation from real/complex to complex.

Overload 1: function FFT2D: TMtx;

Forward two-dimentional Fast Fourier Transformation from real/complex to complex.

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

Remarks:

The transformation is applied in-place. The source matrix may be real or complex. The result will be always complex. The size of the calling matrix is not changed. (rows and cols will not chage).

Examples
var a: Matrix;
begin
    a.SetIt(2,4,False,
        [1, 2, 3, 4,
        -5, 6,-7, 8]);
    a.FFT2D;
    // result will be
    [(12,0), ( 0,4),  (-28,0), (0,-4),
        ( 8,0), (-4,0),  ( 24,0), (-4,0)]
end;
See Also: Matrix.FFT2DFromReal, Matrix.IFFT2D, Matrix.IFFT2DToReal

Overload 2: function FFT2D(const Mtx: TMtx): TMtx;

Forward two-dimentional Fast Fourier Transformation from real/complex to complex.

#NameTypeDescription
1MtxTMtx

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

Remarks:

The transformation is applied on data in Mtx matrix and results are saved in the calling matrix. The source matrix may be real or complex. The source matrix is not changed. The calling matrix will be complex and will be of the same size as the source matrix. (rows and cols will not chage).

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

        b.FFT2D(a);
        // result will be
    //         [(12,0), ( 0,4),  (-28,0), (0,-4),
//           ( 8,0), (-4,0),  ( 24,0), (-4,0)]
    end;
See Also: Matrix.FFT2DFromReal, Matrix.IFFT2D, Matrix.IFFT2DToReal