Fourier Transforms 

The ability to analyze various types of waveforms is an important engineering skill. Both the Laplace transform and the Fourier transform are important integral transforms in engineering.
Fourier transform is used extensively in communications engineering and signal processing.
 

The Fourier transform can be obtained from the complex Fourier integral representation in the foregoing section.  The complex Fourier integral 

`/`(`+`(`*`(2, `*`(Pi)))) `*`(f(s), `*`(`^`(e, `*`(i, `*`(w(`+`(x, `-`(s)))))), `*`(ds, `*`(dw)))) 

can be rewritten as an iterated integral 

`/`(`+`(`*`(2, `*`(Pi)))) `*`(`^`(e, `*`(i, `*`(wx))), `*`(dw)) 

The variable s is a dummy variable and will be replaced by Thus we have a pair of integrals called a Fourier transform pair.  

 

Fourier Transform Pair 

 

i = sqrt(-1) 

 

    `/`(`*`({F(w)}), `*`(`𝔉`)) = `/`(`+`(`*`(2, `*`(Pi)))) 

Image 

Fourier Transform Pair 

 

Note: The scaling factor `/`(`+`(`*`(2, `*`(Pi)))) in the second integral is fairly standard (also used by Maple). But  some authors in math textbooks write the factor `/`(`+`(`*`(2, `*`(Pi)))) in the first integral while others place a factor `/`(1, `*`(sqrt(`+`(`*`(2, `*`(Pi)))))) in both giving some symmetry to the equations. In all cases the pair combine to give the the complex Fourier integral. 

 

The Fourier sine and cosine integral pairs can also be interpreted as pairs of mutually inverse transforms. For reasons of symmetry, this is usually done by splitting the numerical factor `+`(`/`(`*`(2), `*`(Pi))) in A(w) and B(w) into two equal factors and assigning  one factor to each integral in the pair. 

 

Fourier Cosine and Sine Transform Pairs 

 

sqrt(`+`(`/`(`*`(2), `*`(Pi))))  

 

    sqrt(`+`(`/`(`*`(2), `*`(Pi))))  

 

sqrt(`+`(`/`(`*`(2), `*`(Pi))))  

 

    sqrt(`+`(`/`(`*`(2), `*`(Pi))))  

Fourier Cosine and Sine Transform Pairs 

 

 

 

 

 

 

 

Note:  The fouriercos and fouriersin commands are self-inverting. 

When we use Maple, the Fourier transform, the inverse Fourier transform,  the Fourier cosine transform, and the Fourier sine transform operators `𝔉` ,`/`(1, `*`(`𝔉`)), `𝔉`[c], and  are replaced by and Fs, respectively.   

To facilitate the use of these operators, as defined below, they are included in the initialization procedure.  

> restart:MathMaple:-ini():
 

> Fo:=f->fourier(f,x,w):
invFo:=F->invfourier(F,w,x):
alias(F(w)=Fo(f(x)),G(w)=Fo(g(x))):
 

> Fs:=f->fouriersin(f,x,w):
invFs:=F->fouriersin(F,w,x):
Fc:=f->fouriercos(f,x,w):
invFc:=F->fouriercos(F,w,x):
alias(F[s](w)=Fs(f(x)),F[c](w)=Fc(f(x))):
 

> 'Fo'(f(x))=Fo(f(x));
 

Fo(f(x)) = F(w)
 

> 'invFo'(F(w))=invFo(F(w));
 

invFo(F(w)) = f(x)
 

> 'Fs'(f(x))=Fs(f(x));
 

Fs(f(x)) = F[s](w)
 

> 'invFs'(F[s](w))=invFs(F[s](w));
 

invFs(F[s](w)) = f(x)
 

> 'Fc'(f(x))=Fc(f(x));
 

Fc(f(x)) = F[c](w)
 

> 'invFc'(F[c](w))=invFc(F[c](w));
 

invFc(F[c](w)) = f(x)
 

 

 

 

Fourier transform 

> F(w)=convert(fourier(f(x),x,w),Int);
 

F(w) = Int(`*`(f(x), `*`(exp(`+`(`-`(`*`(`+`(I), `*`(x, `*`(w)))))))), x = `+`(`-`(infinity)) .. infinity)
 

Inverse Fourier transform 

> f(x)=convert(invfourier('F'(w),w,x),Int);
 

f(x) = `+`(`/`(`*`(`/`(1, 2), `*`(Int(`*`(F(w), `*`(exp(`*`(I, `*`(w, `*`(x)))))), w = `+`(`-`(infinity)) .. infinity))), `*`(Pi)))
 

Fourier sine transform 

> F[s](w)=convert(fouriersin(f(x),x,w),Int);
 

F[s](w) = `/`(`*`(`^`(2, `/`(1, 2)), `*`(Int(`*`(f(x), `*`(sin(`*`(x, `*`(w))))), x = 0 .. infinity))), `*`(`^`(Pi, `/`(1, 2))))
 

Inverse Fourier sine transform 

> f(x)=convert(fouriersin('F'[s](w),w,x),Int);
 

f(x) = `/`(`*`(`^`(2, `/`(1, 2)), `*`(Int(`*`(F[s](w), `*`(sin(`*`(x, `*`(w))))), w = 0 .. infinity))), `*`(`^`(Pi, `/`(1, 2))))
 

Fourier cosine transform 

> F[c](w)=convert(fouriercos(f(x),x,w),Int);
 

F[c](w) = `/`(`*`(`^`(2, `/`(1, 2)), `*`(Int(`*`(f(x), `*`(cos(`*`(x, `*`(w))))), x = 0 .. infinity))), `*`(`^`(Pi, `/`(1, 2))))
 

Inverse Fourier cosine transform 

> f(x)=convert(fouriercos('F'[c](w),w,x),Int);
 

f(x) = `/`(`*`(`^`(2, `/`(1, 2)), `*`(Int(`*`(F[c](w), `*`(cos(`*`(x, `*`(w))))), w = 0 .. infinity))), `*`(`^`(Pi, `/`(1, 2))))
 

 

Fourier transforms of some basic functions 

f(x) 

`*`(`𝔉`, `*`({f(x)})) = F(w) 

f(x) 

`*`(`𝔉`, `*`({f(x)})) = F(w) 

> k;
 

k
 

> Fo(%);
 

`+`(`*`(2, `*`(k, `*`(Pi, `*`(delta(w))))))
 

> assume(a>0):
 

> k*H(x)*exp(-a*x);
 

 

> Fo(%);
 

`/`(`*`(k), `*`(`+`(a, `*`(I, `*`(w)))))
 

> k*H(x);
 

`*`(k, `*`(H(x)))
 

> Fo(%);
 

`*`(k, `*`(`+`(`*`(Pi, `*`(delta(w))), `-`(`/`(`*`(`+`(I)), `*`(w))))))
 

> f:=piecewise(x>b and x<c,exp(a*x),0);
 

piecewise(`and`(`<`(b, x), `<`(x, c)), exp(`*`(a, `*`(x))), 0)
piecewise(`and`(`<`(b, x), `<`(x, c)), exp(`*`(a, `*`(x))), 0)
 

> Fo(%) assuming b<c;
 

`/`(`*`(`+`(exp(`+`(`*`(a, `*`(b)), `*`(I, `*`(c, `*`(w))))), `-`(exp(`+`(`*`(a, `*`(c)), `*`(I, `*`(b, `*`(w))))))), `*`(exp(`+`(`-`(`*`(`+`(I), `*`(b, `*`(w)))), `-`(`*`(`+`(I), `*`(c, `*`(w))))))))...
`/`(`*`(`+`(exp(`+`(`*`(a, `*`(b)), `*`(I, `*`(c, `*`(w))))), `-`(exp(`+`(`*`(a, `*`(c)), `*`(I, `*`(b, `*`(w))))))), `*`(exp(`+`(`-`(`*`(`+`(I), `*`(b, `*`(w)))), `-`(`*`(`+`(I), `*`(c, `*`(w))))))))...
`/`(`*`(`+`(exp(`+`(`*`(a, `*`(b)), `*`(I, `*`(c, `*`(w))))), `-`(exp(`+`(`*`(a, `*`(c)), `*`(I, `*`(b, `*`(w))))))), `*`(exp(`+`(`-`(`*`(`+`(I), `*`(b, `*`(w)))), `-`(`*`(`+`(I), `*`(c, `*`(w))))))))...
 

> delta(x-a);
 

delta(`+`(x, `-`(a)))
 

> Fo(%);
 

exp(`+`(`-`(`*`(`+`(I), `*`(a, `*`(w))))))
 

> cos(a*x);
 

cos(`*`(a, `*`(x)))
 

> Fo(%);
 

`*`(Pi, `*`(`+`(delta(`+`(w, a)), delta(`+`(w, `-`(a))))))
`*`(Pi, `*`(`+`(delta(`+`(w, a)), delta(`+`(w, `-`(a))))))
 

> sin(a*x);
 

sin(`*`(a, `*`(x)))
 

> Fo(%);
 

`*`(I, `*`(Pi, `*`(`+`(delta(`+`(w, a)), `-`(delta(`+`(w, `-`(a))))))))
`*`(I, `*`(Pi, `*`(`+`(delta(`+`(w, a)), `-`(delta(`+`(w, `-`(a))))))))
 

> assume(a>0):
 

> x*exp(-a*x)*H(x);
 

 

> Fo(%);
 

`/`(1, `*`(`^`(`+`(a, `*`(I, `*`(w))), 2)))
 

> exp(-a*abs(x));
 

exp(`+`(`-`(`*`(a, `*`(abs(x))))))
 

> assume(a>0):
 

> Fo(%);
 

 

> assume(a>0):
 

> exp(-a*x^2);
 

 

> Fo(%);
 

`*`(exp(`+`(`-`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a))))), `*`(`^`(`/`(`*`(Pi), `*`(a)), `/`(1, 2))))
 

> exp(I*a*x)*(H(x+b)-H(x-b));
 

`*`(exp(`*`(I, `*`(a, `*`(x)))), `*`(`+`(H(`+`(x, b)), `-`(H(`+`(x, `-`(b)))))))
`*`(exp(`*`(I, `*`(a, `*`(x)))), `*`(`+`(H(`+`(x, b)), `-`(H(`+`(x, `-`(b)))))))
 

> Fo(%);
 

`+`(`/`(`*`(2, `*`(sin(`*`(b, `*`(`+`(`-`(w), a)))))), `*`(`+`(`-`(w), a))))
 

> H(x-b)-H(x-c);
 

`+`(H(`+`(x, `-`(b))), `-`(H(`+`(x, `-`(c)))))
 

> Fo(%) ;
 

`/`(`*`(I, `*`(`+`(`-`(exp(`+`(`-`(`*`(`+`(I), `*`(b, `*`(w))))))), exp(`+`(`-`(`*`(`+`(I), `*`(c, `*`(w))))))))), `*`(w))
 

 

Fourier cosine transforms of some basic functions 

f(x) 

`*`(`𝔉`[c], `*`({f(x)})) = F[c](w) 

f(x) 

`*`(`𝔉`[c], `*`({f(x)})) = F[c](w) 

> assume(a>0):
 

> f:=piecewise(x>0 and x<a,1,0):
 

> Fc(%);
 

`/`(`*`(`^`(2, `/`(1, 2)), `*`(sin(`*`(w, `*`(a))))), `*`(`^`(Pi, `/`(1, 2)), `*`(w)))
 

> assume(a>0 and a<1):
 

> x^(a-1);
 

 

> simplify(Fc(%));
 

`+`(`-`(`/`(`*`(`^`(2, `/`(1, 2)), `*`(`^`(w, `+`(`-`(a))), `*`(sin(`+`(`*`(`/`(1, 2), `*`(Pi, `*`(`+`(a, `-`(1))))))), `*`(GAMMA(a))))), `*`(`^`(Pi, `/`(1, 2))))))
`+`(`-`(`/`(`*`(`^`(2, `/`(1, 2)), `*`(`^`(w, `+`(`-`(a))), `*`(sin(`+`(`*`(`/`(1, 2), `*`(Pi, `*`(`+`(a, `-`(1))))))), `*`(GAMMA(a))))), `*`(`^`(Pi, `/`(1, 2))))))
 

> exp(-x^2/2);
 

exp(`+`(`-`(`*`(`/`(1, 2), `*`(`^`(x, 2))))))
 

> Fc(%);
 

exp(`+`(`-`(`*`(`/`(1, 2), `*`(`^`(w, 2))))))
 

> assume(a>0):
exp(-a*x^2);
 

exp(`+`(`-`(`*`(a, `*`(`^`(x, 2))))))
 

> simplify(Fc(%));
 

`+`(`/`(`*`(`/`(1, 2), `*`(`^`(2, `/`(1, 2)), `*`(exp(`+`(`-`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))))))), `*`(`^`(a, `/`(1, 2)))))
 

> sin(a*x^2);
 

sin(`*`(a, `*`(`^`(x, 2))))
 

> assume(a>0):Fc(%);
 

`+`(`/`(`*`(`/`(1, 2), `*`(`^`(`/`(`*`(Pi), `*`(a)), `/`(1, 2)), `*`(`+`(cos(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))), `-`(sin(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a))))))))), `*`(`^`(...
`+`(`/`(`*`(`/`(1, 2), `*`(`^`(`/`(`*`(Pi), `*`(a)), `/`(1, 2)), `*`(`+`(cos(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))), `-`(sin(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a))))))))), `*`(`^`(...
`+`(`/`(`*`(`/`(1, 2), `*`(`^`(`/`(`*`(Pi), `*`(a)), `/`(1, 2)), `*`(`+`(cos(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))), `-`(sin(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a))))))))), `*`(`^`(...
 

> cos(a*x^2);
 

cos(`*`(a, `*`(`^`(x, 2))))
 

> assume(a>0):Fc(%);
 

`+`(`/`(`*`(`/`(1, 2), `*`(`^`(`/`(`*`(Pi), `*`(a)), `/`(1, 2)), `*`(`+`(cos(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))), sin(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))))))), `*`(`^`(Pi, `...
`+`(`/`(`*`(`/`(1, 2), `*`(`^`(`/`(`*`(Pi), `*`(a)), `/`(1, 2)), `*`(`+`(cos(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))), sin(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))))))), `*`(`^`(Pi, `...
`+`(`/`(`*`(`/`(1, 2), `*`(`^`(`/`(`*`(Pi), `*`(a)), `/`(1, 2)), `*`(`+`(cos(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))), sin(`+`(`/`(`*`(`/`(1, 4), `*`(`^`(w, 2))), `*`(a)))))))), `*`(`^`(Pi, `...
 

> sin(a*x)/x;
 

`/`(`*`(sin(`*`(a, `*`(x)))), `*`(x))
 

> assume(a>0):
 

> Fc(%);
 

 

> exp(-x)*sin(x)/x;
 

`/`(`*`(exp(`+`(`-`(x))), `*`(sin(x))), `*`(x))
 

> Fc(%);
 

`+`(`/`(`*`(`/`(1, 2), `*`(`^`(2, `/`(1, 2)), `*`(arctan(`+`(`/`(`*`(2), `*`(`^`(w, 2)))))))), `*`(`^`(Pi, `/`(1, 2)))))
 

 

Fourier sine transforms of some basic functions 

f(x) 

`*`(`𝔉`[s], `*`({f(x)})) = F[s](w) 

f(x) 

`*`(`𝔉`[s], `*`({f(x)})) = F[s](w) 

> assume(a>0):
 

> f:=piecewise(x>0 and x<a,1,0):
 

> Fs(%);
 

`+`(`-`(`/`(`*`(`^`(2, `/`(1, 2)), `*`(`+`(`-`(1), cos(`*`(w, `*`(a)))))), `*`(`^`(Pi, `/`(1, 2)), `*`(w)))))
 

> 1/sqrt(x);
 

`/`(1, `*`(`^`(x, `/`(1, 2))))
 

> Fs(%);
 

`/`(1, `*`(`^`(w, `/`(1, 2))))
 

> 1/x^(3/2);
 

`/`(1, `*`(`^`(x, `/`(3, 2))))
 

> Fs(%);
 

`+`(`*`(2, `*`(`^`(w, `/`(1, 2)))))
 

> assume(a>0 and a<1):
 

> x^(a-1);
 

 

> simplify(Fs(%));
 

`/`(`*`(`^`(2, `/`(1, 2)), `*`(`^`(w, `+`(`-`(a))), `*`(cos(`+`(`*`(`/`(1, 2), `*`(Pi, `*`(`+`(a, `-`(1))))))), `*`(GAMMA(a))))), `*`(`^`(Pi, `/`(1, 2))))
`/`(`*`(`^`(2, `/`(1, 2)), `*`(`^`(w, `+`(`-`(a))), `*`(cos(`+`(`*`(`/`(1, 2), `*`(Pi, `*`(`+`(a, `-`(1))))))), `*`(GAMMA(a))))), `*`(`^`(Pi, `/`(1, 2))))
 

> exp(-x);
 

exp(`+`(`-`(x)))
 

> Fs(%);
 

`/`(`*`(`^`(2, `/`(1, 2)), `*`(w)), `*`(`^`(Pi, `/`(1, 2)), `*`(`+`(`*`(`^`(w, 2)), 1))))
 

> assume(a>0):
 

> exp(-a*x)/x;
 

 

> Fs(%);
 

`/`(`*`(`^`(2, `/`(1, 2)), `*`(arctan(`/`(`*`(w), `*`(a))))), `*`(`^`(Pi, `/`(1, 2))))
 

> x*exp(-a*x^2);
 

`*`(x, `*`(exp(`+`(`-`(`*`(a, `*`(`^`(x, 2))))))))
 

> assume(a>0):
 

> Fs(%);
 


 

> assume(a>0):
arctan(2*a/x);
 

arctan(`+`(`/`(`*`(2, `*`(a)), `*`(x))))
 

> Fs(%);
 

`/`(`*`(`^`(2, `/`(1, 2)), `*`(`^`(Pi, `/`(1, 2)), `*`(exp(`+`(`-`(`*`(a, `*`(w))))), `*`(sinh(`*`(a, `*`(w))))))), `*`(w))