Fft<T>.BackwardTransform Method

Definition

Namespace: Numerics.NET.SignalProcessing
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.0.3

Overload List

BackwardTransform(ComplexConjugateSignalVector<T>) Computes the discrete Fourier transform of a real signal and returns the result.
BackwardTransform(Vector<Complex<T>>) Computes the discrete Fourier transform of a complex signal and returns the result..
BackwardTransform(ArraySlice<Complex<T>>, ArraySlice<T>) Computes the discrete Fourier transform of a real signal.
BackwardTransform(ArraySlice<Complex<T>>, ArraySlice<Complex<T>>) Computes the discrete Fourier transform of a complex signal.
BackwardTransform(ComplexConjugateSignalVector<T>, DenseVector<T>) Computes the discrete Fourier transform of a real signal.
BackwardTransform(DenseVector<Complex<T>>, DenseVector<Complex<T>>) Computes the discrete Fourier transform of a complex signal.
BackwardTransform(Vector<Complex<T>>, Vector<T>) Computes the discrete Fourier transform of a real signal.
BackwardTransform(Vector<Complex<T>>, Vector<Complex<T>>) Computes the discrete Fourier transform of a complex signal.
BackwardTransform(Vector<Complex<T>>, Vector<T>, RealFftFormat) Computes the inverse discrete Fourier transform of a real signal.
BackwardTransform(ReadOnlySpan<Complex<T>>, Int32, Span<T>, Int32) Computes the discrete Fourier transform of a real signal.
BackwardTransform(ReadOnlySpan<Complex<T>>, Int32, Span<Complex<T>>, Int32) Computes the discrete Fourier transform of a complex signal.

BackwardTransform(ComplexConjugateSignalVector<T>)

Computes the discrete Fourier transform of a real signal and returns the result.
C#
public DenseVector<T> BackwardTransform(
	ComplexConjugateSignalVector<T> input
)

Parameters

input  ComplexConjugateSignalVector<T>
A ComplexConjugateSignalVector<T> vector to hold the transformed signal.

Return Value

DenseVector<T>

BackwardTransform(Vector<Complex<T>>)

Computes the discrete Fourier transform of a complex signal and returns the result..
C#
public DenseVector<Complex<T>> BackwardTransform(
	Vector<Complex<T>> input
)

Parameters

input  Vector<Complex<T>>
A complex vector containing the input signal.

Return Value

DenseVector<Complex<T>>
A dense complex vector containing the transformed signal.

BackwardTransform(ArraySlice<Complex<T>>, ArraySlice<T>)

Computes the discrete Fourier transform of a real signal.
C#
public void BackwardTransform(
	ArraySlice<Complex<T>> input,
	ArraySlice<T> output
)

Parameters

input  ArraySlice<Complex<T>>
A complex array slice that contains the transformed signal.
output  ArraySlice<T>
A real array slice to contain the original signal.

Exceptions

ArgumentNullException

input is null.

-or-

output is null.

DimensionMismatchException

The length of input does not equal the length of output.

BackwardTransform(ArraySlice<Complex<T>>, ArraySlice<Complex<T>>)

Computes the discrete Fourier transform of a complex signal.
C#
public void BackwardTransform(
	ArraySlice<Complex<T>> input,
	ArraySlice<Complex<T>> output
)

Parameters

input  ArraySlice<Complex<T>>
A complex array slice containing the input signal.
output  ArraySlice<Complex<T>>
A complex array slice to hold the transformed signal.

Exceptions

InvalidOperationException

The Fourier transform implementation is not configured to accept real input.

ArgumentNullException

input is null.

-or-

output is null.

DimensionMismatchException

The length of input does not equal the length of output.

BackwardTransform(ComplexConjugateSignalVector<T>, DenseVector<T>)

Computes the discrete Fourier transform of a real signal.
C#
public void BackwardTransform(
	ComplexConjugateSignalVector<T> input,
	DenseVector<T> output
)

Parameters

input  ComplexConjugateSignalVector<T>
A dense complex vector to hold the transformed signal.
output  DenseVector<T>
A Double vector containing the input signal.

Exceptions

ArgumentNullException

input is null.

-or-

output is null.

DimensionMismatchException

The length of input does not equal the length of output.

BackwardTransform(DenseVector<Complex<T>>, DenseVector<Complex<T>>)

Computes the discrete Fourier transform of a complex signal.
C#
public void BackwardTransform(
	DenseVector<Complex<T>> input,
	DenseVector<Complex<T>> output
)

Parameters

input  DenseVector<Complex<T>>
A dense complex vector containing the input signal.
output  DenseVector<Complex<T>>
A dense complex vector to hold the transformed signal.

Exceptions

InvalidOperationException

The Fourier transform implementation is not configured to accept real input.

ArgumentNullException

input is null.

-or-

output is null.

DimensionMismatchException

The length of input does not equal the length of output.

BackwardTransform(Vector<Complex<T>>, Vector<T>)

Computes the discrete Fourier transform of a real signal.
C#
public void BackwardTransform(
	Vector<Complex<T>> input,
	Vector<T> output
)

Parameters

input  Vector<Complex<T>>
A complex vector to hold the transformed signal.
output  Vector<T>
A Double vector containing the input signal.

Remarks

This method transforms a complex signal to a real signal. Only the values in the first half of input are used. The second half of the input vector is assumed to be the complex conjugate of the first half.

Exceptions

InvalidOperationException

The Fourier transform implementation is not configured to accept real input.

ArgumentNullException

input is null.

-or-

output is null.

BackwardTransform(Vector<Complex<T>>, Vector<Complex<T>>)

Computes the discrete Fourier transform of a complex signal.
C#
public void BackwardTransform(
	Vector<Complex<T>> input,
	Vector<Complex<T>> output
)

Parameters

input  Vector<Complex<T>>
A complex vector containing the input signal.
output  Vector<Complex<T>>
A complex vector to hold the transformed signal.

BackwardTransform(Vector<Complex<T>>, Vector<T>, RealFftFormat)

Computes the inverse discrete Fourier transform of a real signal.
C#
public void BackwardTransform(
	Vector<Complex<T>> input,
	Vector<T> output,
	RealFftFormat outputFormat
)

Parameters

input  Vector<Complex<T>>
A complex vector containing the transformed signal.
output  Vector<T>
A Double vector to hold the restored real signal.
outputFormat  RealFftFormat
A RealFftFormat value that specifies whether to return a one-sided or a two-sided transform.

Remarks

Use this method to compute the inverse Fourier transform of a real signal. The outputFormat specifies whether the input contains the full complex transform (TwoSided), or only the first n/2+1 terms of the transformed signal (OneSided), where n is the length of the transform.

Exceptions

InvalidOperationException

The Fourier transform implementation is not configured to accept real input.

ArgumentNullException

input is null.

-or-

output is null.

ArgumentOutOfRangeException

outputFormat is not a valid RealFftFormat value.

DimensionMismatchException

outputFormat equals OneSided and the length of input does not equal half the length of output plus one.

-or-

outputFormat equals TwoSided and the length of input does not equal the length of output.

BackwardTransform(ReadOnlySpan<Complex<T>>, Int32, Span<T>, Int32)

Computes the discrete Fourier transform of a real signal.
C#
public abstract void BackwardTransform(
	ReadOnlySpan<Complex<T>> input,
	int inputStride,
	Span<T> output,
	int outputStride
)

Parameters

input  ReadOnlySpan<Complex<T>>
A complex span that contains the transformed signal.
inputStride  Int32
The distance between successive elements in input.
output  Span<T>
A real span to contain the original signal.
outputStride  Int32
The distance between successive elements in output.

Exceptions

ArgumentNullException

input is null.

-or-

output is null.

DimensionMismatchException

The length of input does not equal the length of output.

BackwardTransform(ReadOnlySpan<Complex<T>>, Int32, Span<Complex<T>>, Int32)

Computes the discrete Fourier transform of a complex signal.
C#
public abstract void BackwardTransform(
	ReadOnlySpan<Complex<T>> input,
	int inputStride,
	Span<Complex<T>> output,
	int outputStride
)

Parameters

input  ReadOnlySpan<Complex<T>>
A complex span containing the input signal.
inputStride  Int32
The distance between successive elements in input.
output  Span<Complex<T>>
A complex span to hold the transformed signal.
outputStride  Int32
The distance between successive elements in output.

Exceptions

InvalidOperationException

The Fourier transform implementation is not configured to accept real input.

ArgumentNullException

input is null.

-or-

output is null.

DimensionMismatchException

The length of input does not equal the length of output.

See Also