Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

ifourier

Inverse Fourier transform

Syntax

Description

example

ifourier(F) returns the inverse Fourier transform of F using the default independent variable w for the default transformation variable x. If F does not contain w, ifourier uses symvar.

example

ifourier(F,transVar) uses the specified transformation variable transVar instead of x.

example

ifourier(F,var,transVar) uses the specified independent variable var and transformation variable transVar instead of w and x respectively.

Examples

Inverse Fourier Transform of Symbolic Expression

Compute the inverse Fourier transform of this expression with respect to the variable y for the transformation variable x.

syms x y
F = sqrt(sym(pi))*exp(-y^2/4);
ifourier(F, y, x)
ans =
exp(-x^2)

Default Independent Variable and Transformation Variable

Compute the inverse Fourier transform of this expression calling the ifourier function with one argument. If you do not specify the independent variable, ifourier uses the variable w.

syms a w t real
F = exp(-w^2/(4*a^2));
ifourier(F, t)
ans =
exp(-a^2*t^2)/(2*pi^(1/2)*(1/(4*a^2))^(1/2))

If you also do not specify the transformation variable, ifourier uses the variable x:

ifourier(F)
ans =
exp(-a^2*x^2)/(2*pi^(1/2)*(1/(4*a^2))^(1/2))

For further computations, remove the assumptions:

syms a w t clear

Inverse Fourier Transforms Involving Dirac and Heaviside Functions

Compute the following inverse Fourier transforms that involve the Dirac and Heaviside functions.

syms t w
ifourier(dirac(w), w, t)
ans =
1/(2*pi)
ifourier(2*exp(-abs(w)) - 1, w, t)
ans =
-(2*pi*dirac(t) - 4/(t^2 + 1))/(2*pi)
ifourier(exp(-w)*heaviside(w), w, t)
ans =
-1/(2*pi*(- 1 + t*1i))

Parameters of Inverse Fourier Transform

Specify parameters of the inverse Fourier transform.

Compute the inverse Fourier transform of this expression using the default values c = 1, s = -1 of the Fourier parameters. (For details, see Inverse Fourier Transform.)

syms t w
ifourier(-(sqrt(sym(pi))*w*exp(-w^2/4)*i)/2, w, t)
ans =
t*exp(-t^2)

Change the values of the Fourier parameters to c = 1s = 1 by using sympref. Then compute the inverse Fourier transform of the same expression again.

sympref('FourierParameters', [1, 1]);
ifourier(-(sqrt(sym(pi))*w*exp(-w^2/4)*i)/2, w, t)
ans =
-t*exp(-t^2)

Change the values of the Fourier parameters to c = 1/2πs = 1 by using sympref. Compute the inverse Fourier transform using these values.

sympref('FourierParameters', [1/(2*sym(pi)), 1]);
ifourier(-(sqrt(sym(pi))*w*exp(-w^2/4)*i)/2, w, t)
ans =
-2*t*pi*exp(-t^2)

The preferences set by sympref persist through your current and future MATLAB® sessions. To restore the default values of c and s, set sympref to 'default'.

sympref('FourierParameters','default');

Inverse Fourier Transform of Matrix

Find the inverse Fourier transform of this matrix. Use matrices of the same size to specify the independent variables and transformation variables.

syms a b c d w x y z
ifourier([exp(x), 1; sin(y), i*z],[w, x; y, z],[a, b; c, d])
ans =
[                         exp(x)*dirac(a),    dirac(b)]
[ (dirac(c - 1)*1i)/2 - (dirac(c + 1)*1i)/2, dirac(1, d)]

When the input arguments are nonscalars, ifourier acts on them element-wise. If ifourier is called with both scalar and nonscalar arguments, then ifourier expands the scalar arguments into arrays of the same size as the nonscalar arguments with all elements of the array equal to the scalar.

syms w x y z a b c d
ifourier(x,[x, w; y, z],[a, b; c, d])
ans =
[ -dirac(1, a)*1i, x*dirac(b)]
[     x*dirac(c), x*dirac(d)]

Note that nonscalar input arguments must have the same size.

Inverse Fourier Transform of Vector of Symbolic Functions

When the first argument is a symbolic function, the second argument must be a scalar.

syms f1(x) f2(x) a b
f1(x) = exp(x);
f2(x) = x;
ifourier([f1, f2],x,[a, b])
ans =
[ fourier(exp(x), x, -a)/(2*pi), -dirac(1, b)*1i]

If Inverse Fourier Transform Cannot be Found

If ifourier cannot find an explicit representation of the transform, it returns results in terms of the direct Fourier transform.

syms F(w) t
f = ifourier(F, w, t)
f =
fourier(F(w), w, -t)/(2*pi)

Input Arguments

collapse all

Input function, specified as a symbolic expression or function or a vector or matrix of symbolic expressions or functions.

Independent variable, specified as a symbolic variable. This variable is often called the "frequency variable".

If you do not specify the independent variable, ifourier uses the variable w by default. If F does not contain w, then the default variable is determined by symvar.

Transformation variable, specified as a symbolic variable, expression, or vector or matrix of symbolic variables or expressions. This is often called the "time variable" or the "space variable".

If you do not specify the transformation variable, ifourier uses the variable x by default. If x is the independent variable of F, then the default transformation variable is the variable t.

More About

collapse all

Inverse Fourier Transform

The inverse Fourier transform of the expression F = F(w) with respect to the variable w at the point x is defined as follows:

f(x)=|s|2πcF(w)eiswxdw.

Here, c and s are parameters of the inverse Fourier transform. The ifourier function uses c = 1, s = –1.

Tips

  • If F is a matrix, ifourier acts element-wise on all components of the matrix.

  • If transVar is a matrix, ifourier acts element-wise on all components of the matrix.

  • The toolbox computes the inverse Fourier transform via the direct Fourier transform:

    ifourier(F,w,t)=12πfourier(F,w,t)

    If ifourier cannot find an explicit representation of the inverse Fourier transform, it returns results in terms of the direct Fourier transform.

  • To compute the direct Fourier transform, use fourier.

References

[1] Oberhettinger, F. "Tables of Fourier Transforms and Fourier Transforms of Distributions", Springer, 1990.

Introduced before R2006a

Was this topic helpful?