---
title: "FourierTransform"
language: "en"
type: "Symbol"
summary: "FourierTransform[f[t], t, \\[Omega]] gives the symbolic Fourier transform of f[t] in the variable t as F[\\[Omega]] in the variable \\[Omega]. FourierTransform[f[t], t, OverscriptBox[StyleBox[\\[Omega], TI, FontSlant->Plain], ^]] gives the numeric Fourier transform at the numerical value OverscriptBox[StyleBox[\\[Omega], TI, FontSlant->Plain], ^]. FourierTransform[f[t1, ..., tn], {t1, ..., tn}, {\\[Omega] 1, ..., \\[Omega] n}] gives the multidimensional Fourier transform of f[t1, ..., tn]."
keywords: 
- distribution
- Fourier transform
- frequency dimension
- function transform
- integral operator
- integral transform
- Integrate
- inverse Fourier transform
- power spectrum
- spectrum
- transform
- fourier
canonical_url: "https://reference.wolfram.com/language/ref/FourierTransform.html"
source: "Wolfram Language Documentation"
related_guides: 
  - 
    title: "Integral Transforms"
    link: "https://reference.wolfram.com/language/guide/IntegralTransforms.en.md"
  - 
    title: "Fourier Analysis"
    link: "https://reference.wolfram.com/language/guide/FourierAnalysis.en.md"
  - 
    title: "Signal Transforms"
    link: "https://reference.wolfram.com/language/guide/SignalTransforms.en.md"
  - 
    title: "Generalized Functions"
    link: "https://reference.wolfram.com/language/guide/GeneralizedFunctions.en.md"
  - 
    title: "Calculus"
    link: "https://reference.wolfram.com/language/guide/Calculus.en.md"
  - 
    title: "Summation Transforms"
    link: "https://reference.wolfram.com/language/guide/SummationTransforms.en.md"
related_functions: 
  - 
    title: "FourierSinTransform"
    link: "https://reference.wolfram.com/language/ref/FourierSinTransform.en.md"
  - 
    title: "FourierCosTransform"
    link: "https://reference.wolfram.com/language/ref/FourierCosTransform.en.md"
  - 
    title: "FourierSeries"
    link: "https://reference.wolfram.com/language/ref/FourierSeries.en.md"
  - 
    title: "FourierCoefficient"
    link: "https://reference.wolfram.com/language/ref/FourierCoefficient.en.md"
  - 
    title: "Fourier"
    link: "https://reference.wolfram.com/language/ref/Fourier.en.md"
  - 
    title: "InverseFourierTransform"
    link: "https://reference.wolfram.com/language/ref/InverseFourierTransform.en.md"
  - 
    title: "FourierSequenceTransform"
    link: "https://reference.wolfram.com/language/ref/FourierSequenceTransform.en.md"
  - 
    title: "Convolve"
    link: "https://reference.wolfram.com/language/ref/Convolve.en.md"
  - 
    title: "LaplaceTransform"
    link: "https://reference.wolfram.com/language/ref/LaplaceTransform.en.md"
  - 
    title: "Integrate"
    link: "https://reference.wolfram.com/language/ref/Integrate.en.md"
  - 
    title: "Piecewise"
    link: "https://reference.wolfram.com/language/ref/Piecewise.en.md"
  - 
    title: "CharacteristicFunction"
    link: "https://reference.wolfram.com/language/ref/CharacteristicFunction.en.md"
related_tutorials: 
  - 
    title: "Integral Transforms and Related Operations"
    link: "https://reference.wolfram.com/language/tutorial/Calculus.en.md#26017"
---
# FourierTransform

FourierTransform[f[t], t, ω] gives the symbolic Fourier transform of f[t] in the variable t as F[ω] in the variable ω.

FourierTransform[f[t], t, Overscript[ω,  ^ ]] gives the numeric Fourier transform at the numerical value Overscript[ω,  ^ ].

FourierTransform[f[t1, …, tn], {t1, …, tn}, {ω1, …, ωn}] gives the multidimensional Fourier transform of f[t1, …, tn].

## Details and Options

* The Fourier transform and its inverse are a way to transform between the time domain and the frequency domain.

* Fourier transforms are typically used to reduce ordinary and partial differential equations to algebraic or ordinary differential equations, respectively. They are also used extensively in control theory and signal processing. Finally, they have applications in studying quantum mechanical phenomena, noise filtering, etc.

* The Fourier transform of the time domain function $f(t)$ is the frequency domain function $F(ω)$ :

[image]

* The Fourier transform of a function $f(t)$ is by default defined to be $(1/Sqrt[2 π])Subsuperscript[∫, -∞, ∞]f(t)e^i ω tdt$.

* The multidimensional Fourier transform of a function $f(Subscript[t, 1], Subscript[t, 2], …, Subscript[t, n])$ is by default defined to be $(1/(2 π)^n / 2)Subsuperscript[∫, -∞, ∞]⋯Subsuperscript[∫, -∞, ∞]Subsuperscript[∫, -∞, ∞] f(Subscript[t, 1], Subscript[t, 2], …, Subscript[t, n])e^i (Subscript[t, 1]Subscript[ω, 1] + Subscript[t, 2]Subscript[ω, 2] + … + Subscript[t, n]Subscript[ω, n])\[DifferentialD]Subscript[t, 1]\[DifferentialD]Subscript[t, 2]…\[DifferentialD]Subscript[t, n]$ or when using vector notation $(1/(2 π)^n / 2)Subscript[∫, t∈\[DoubleStruckCapitalR]^n]f(t) E^I ω.t\[DifferentialD]t$.

* Different choices of definitions can be specified using the option ``FourierParameters``.

* The integral is computed using numerical methods if the third argument, $ω$, is given a numerical value.

* The asymptotic Fourier transform can be computed using ``Asymptotic``.

* There are several related Fourier transformations:

|                          |                                         |
| ------------------------ | --------------------------------------- |
| FourierTransform         | infinite continuous-time functions (FT) |
| FourierSequenceTransform | infinite discrete-time functions (DTFT) |
| FourierCoefficient       | finite continuous-time functions (FS)   |
| Fourier                  | finite discrete-time functions (DFT)    |

* The Fourier transform is an automorphism in the Schwartz vector space of functions whose derivatives are rapidly decreasing and thus induces an automorphism in its dual: the space of tempered distributions. These include absolutely integrable functions, well-behaved functions of polynomial growth and compactly supported distributions.

* Hence, ``FourierTransform`` not only works with absolutely integrable functions, but it can also handle a variety of tempered distributions such as ``DiracDelta`` to enlarge the pool of functions or generalized functions it can effectively transform.

* The following options can be given:

|                     |                   |                                                                   |
| ------------------- | ----------------- | ----------------------------------------------------------------- |
| AccuracyGoal        | Automatic         | digits of absolute accuracy sought                                |
| Assumptions         | \$Assumptions     | assumptions to make about parameters                              |
| FourierParameters   | {0, 1}            | parameters to define the Fourier transform                        |
| GenerateConditions  | False             | whether to generate answers that involve conditions on parameters |
| PerformanceGoal     | \$PerformanceGoal | aspects of performance to optimize                                |
| PrecisionGoal       | Automatic         | digits of precision sought                                        |
| WorkingPrecision    | Automatic         | the precision used in internal computations                       |

* Common settings for ``FourierParameters`` include:

|           |                                                                                |                                 |
| --------- | ------------------------------------------------------------------------------ | ------------------------------- |
| {0, 1}    | $(1/Sqrt[2 π])Subsuperscript[∫, -∞, ∞]f(t)e^i ω tdt$ | default setting/physics         |
| {1, -1}   | $∫-∞∞f(t)e^-i ω tdt$                                 | systems engineering/mathematics |
| {-1, 1}   | $(1/2 π)∫-∞∞f(t)e^i ω tdt$                           | classical physics               |
| {0, -2Pi} | $∫-∞∞f(t)e^-i2 π ω tdt$                              | ordinary frequency              |
| {a, b}    | $Sqrt[(\[LeftBracketingBar]b\[RightBracketingBar]/(2π)^1 - a)]∫-∞∞f(t) e^i b ω tdt$         | general setting                 |

* In ``TraditionalForm``, ``FourierTransform`` is output using ``ℱ``. »

## Examples (76)

### Basic Examples (6)

Compute the Fourier transform of a function:

```wl
In[1]:= FourierTransform[UnitBox[t / 2], t, ω]

Out[1]= Sqrt[(2/π)] Sinc[ω]
```

Plot the function and its Fourier transform:

```wl
In[2]:= {Plot[UnitBox[t / 2], {t, -2, 2}, Exclusions -> None], Plot[%, {ω, -10, 10}]}

Out[2]= {[image], [image]}
```

---

Fourier transform of $δ(t)$ :

```wl
In[1]:= FourierTransform[DiracDelta[t], t, ω]

Out[1]= (1/Sqrt[2 π])
```

---

For the systems engineering convention, change the parameters:

```wl
In[1]:= FourierTransform[DiracDelta[t], t, ω, FourierParameters -> {1, -1}]

Out[1]= 1
```

---

The Fourier transform of a Gaussian is another Gaussian:

```wl
In[1]:= FourierTransform[E ^ (-t ^ 2), t, ω]

Out[1]= (E^-(ω^2/4)/Sqrt[2])
```

Plot both Gaussians:

```wl
In[2]:= {Plot[E ^ (-t ^ 2), {t, -5, 5}, PlotRange -> Full], Plot[%, {ω, -5, 5}, PlotRange -> Full]}

Out[2]= {[image], [image]}
```

---

Compute the Fourier transform of a multivariate function:

```wl
In[1]:= FourierTransform[1 / Sqrt[x ^ 2 + y ^ 2], {x, y}, {u, v}]

Out[1]= (1/Sqrt[u^2 + v^2])
```

Plot the result:

```wl
In[2]:= Plot3D[%, {u, -2, 2}, {v, -2, 2}, PlotRange -> {0, 10}, Mesh -> None]

Out[2]= [image]
```

---

Compute the transform at a single point:

```wl
In[1]:= FourierTransform[Exp[-t ^ 6] Sin[t ^ 2], t, 0.3]

Out[1]= 0.210261  - 5.984887656489812`*^-15 I
```

### Scope (44)

#### Basic Uses (4)

Fourier transform of a function for a symbolic parameter $ω$ :

```wl
In[1]:= FourierTransform[HeavisideTheta[t], t, ω]

Out[1]= (I/Sqrt[2 π] ω) + Sqrt[(π/2)] DiracDelta[ω]
```

---

Fourier transforms of trigonometric functions:

```wl
In[1]:= FourierTransform[Sin[α t], t, ω]

Out[1]= I Sqrt[(π/2)] DiracDelta[-α + ω] - I Sqrt[(π/2)] DiracDelta[α + ω]

In[2]:= FourierTransform[Cos[α t], t, ω]

Out[2]= Sqrt[(π/2)] DiracDelta[-α + ω] + Sqrt[(π/2)] DiracDelta[α + ω]
```

---

Evaluate the Fourier transform for a numerical value of the parameter $ω$ :

```wl
In[1]:= FourierTransform[Exp[-t ^ 2 + t], t, 0.3]

Out[1]= 0.877774  + 0.132663 I
```

---

``TraditionalForm`` formatting:

```wl
In[1]:= FourierTransform[f[t], t, ω]//TraditionalForm

Out[1]//TraditionalForm= Subscript[ℱ, t][f(t)](ω)
```

#### Elementary Functions (8)

Fourier transform of a power function:

```wl
In[1]:= FourierTransform[t ^ 2, t, ω]

Out[1]= -Sqrt[2 π] Derivative[2][DiracDelta][ω]
```

---

Polynomial:

```wl
In[1]:= FourierTransform[3t ^ 2 + 5t - 7, t, ω]

Out[1]= -7 Sqrt[2 π] DiracDelta[ω] - 5 I Sqrt[2 π] Derivative[1][DiracDelta][ω] - 3 Sqrt[2 π] Derivative[2][DiracDelta][ω]
```

---

Fourier transform of rational functions:

```wl
In[1]:= FourierTransform[1 / (1 + t ^ 2), t, ω]

Out[1]= E^-Abs[ω] Sqrt[(π/2)]
```

Plot the transform:

```wl
In[2]:= Plot[%, {ω, -5, 5}]

Out[2]= [image]

In[3]:= FourierTransform[t / (1 + t ^ 3), t, ω]

Out[3]= (1/3) Sqrt[(π/2)] (-2 (-1)^5 / 6 E^(1/2) (I + Sqrt[3]) ω HeavisideTheta[-ω] + (6 I E^(-1)^5 / 6 ω HeavisideTheta[ω]/(1 + (-1)^1 / 3)^2) - I E^-I ω Sign[ω])
```

Plot the real and imaginary parts:

```wl
In[4]:= ReImPlot[%, {ω, -4, 4}]

Out[4]= [image]
```

---

Reciprocal of square root:

```wl
In[1]:= FourierTransform[1 / Sqrt[Abs[t]], t, ω]

Out[1]= (1/Sqrt[Abs[ω]])
```

Plot the transform:

```wl
In[2]:= Plot[%, {ω, -5, 5}]

Out[2]= [image]
```

---

Expressions involving trigonometric functions:

```wl
In[1]:= FourierTransform[Cos[t] ^ 2, t, ω]

Out[1]= (1/2) Sqrt[(π/2)] DiracDelta[-2 + ω] + Sqrt[(π/2)] DiracDelta[ω] + (1/2) Sqrt[(π/2)] DiracDelta[2 + ω]

In[2]:= FourierTransform[Exp[α t] Sin[ β t], t, ω]

Out[2]= I Sqrt[(π/2)] DiracDelta[I α + β - ω] - I Sqrt[(π/2)] DiracDelta[-I α + β + ω]

In[3]:= FourierTransform[Exp[-t ^ 2] Sin[t], t, ω]

Out[3]= (I (-1 + Cosh[ω] + Sinh[ω]) (Cosh[(1/4) (1 + ω)^2] - Sinh[(1/4) (1 + ω)^2])/2 Sqrt[2])

In[4]:= FourierTransform[(1/2α)(Sin[α t] + α t Cos[α t]), t, ω]

Out[4]= (I Sqrt[(π/2)] DiracDelta[-α + ω]/2 α) - (I Sqrt[(π/2)] DiracDelta[α + ω]/2 α) - (1/2) I Sqrt[(π/2)] Derivative[1][DiracDelta][-α + ω] - (1/2) I Sqrt[(π/2)] Derivative[1][DiracDelta][α + ω]

In[5]:= FourierTransform[Sin[t] + Cos[t], t, ω]

Out[5]= (1 + I) Sqrt[(π/2)] DiracDelta[-1 + ω] + (1 - I) Sqrt[(π/2)] DiracDelta[1 + ω]
```

---

Ratio of sine and linear function:

```wl
In[1]:= FourierTransform[(Sin[3 t]/t), t, ω]

Out[1]= (1/2) Sqrt[(π/2)] (Sign[3 - ω] + Sign[3 + ω])
```

Plot the transform:

```wl
In[2]:= Plot[%, {ω, -5, 5}, Exclusions -> None]

Out[2]= [image]
```

---

Composition of elementary functions:

```wl
In[1]:= FourierTransform[Sin[t ^ 2], t, ω]

Out[1]= (1/2) (Cos[(ω^2/4)] - Sin[(ω^2/4)])
```

Plot the transform:

```wl
In[2]:= Plot[%, {ω, -5, 5}]

Out[2]= [image]
```

---

Logarithmic function:

```wl
In[1]:= FourierTransform[Log[Abs[t]], t, ω]

Out[1]= -(Sqrt[(π/2)]/Abs[ω]) - EulerGamma Sqrt[2 π] DiracDelta[ω]
```

Plot the transform:

```wl
In[2]:= Plot[%, {ω, -5, 5}]

Out[2]= [image]
```

#### Special Functions (5)

``Sinc`` function:

```wl
In[1]:= FourierTransform[Sinc[t], t, ω]

Out[1]= (1/2) Sqrt[(π/2)] (Sign[1 - ω] + Sign[1 + ω])
```

Plot the transform:

```wl
In[2]:= Plot[%, {ω, -5, 5}, Exclusions -> None]

Out[2]= [image]
```

---

Expressions involving Bessel functions:

```wl
In[1]:= FourierTransform[BesselJ[2, t], t, ω]

Out[1]= -(Sqrt[(2/π)] (-1 + 2 ω^2) (-HeavisideTheta[-1 + ω] + HeavisideTheta[1 + ω])/Sqrt[1 - ω^2])
```

Plot the transform:

```wl
In[2]:= Plot[%, {ω, -5, 5}]

Out[2]= [image]
```

---

``SinIntegral`` function:

```wl
In[1]:= FourierTransform[SinIntegral[t], t, ω, Assumptions -> -1 < ω < 1]

Out[1]= (I Sqrt[(π/2)]/ω)
```

---

Laguerre polynomial:

```wl
In[1]:= FourierTransform[LaguerreL[5, t], t, ω]

Out[1]= Sqrt[2 π] DiracDelta[ω] + 5 I Sqrt[2 π] Derivative[1][DiracDelta][ω] - 5 Sqrt[2 π] Derivative[2][DiracDelta][ω] - (5/3) I Sqrt[2 π] Derivative[3][DiracDelta][ω] + (5/12) Sqrt[(π/2)] Derivative[4][DiracDelta][ω] + (1/60) I Sqrt[(π/2)] Derivative[5][DiracDelta][ω]
```

---

Airy function:

```wl
In[1]:= FourierTransform[AiryAi[t], t, ω]

Out[1]= (E^-(I ω^3/3)/Sqrt[2 π])
```

Plot the magnitude of the Fourier transform for complex $ω$ :

```wl
In[2]:= Plot3D[Abs[%] /. ω -> a + b I, {a, -5, 5}, {b, -5, 5}]

Out[2]= [image]
```

#### Piecewise Functions and Distributions (7)

Fourier transform of a piecewise function:

```wl
In[1]:=
f[t_] = Piecewise[{{t, 0 ≤ t ≤ 1}, {1, t > 1}}];
Plot[f[t], {t, 0, 3}]

Out[1]= [image]

In[2]:= FourierTransform[f[t], t, ω]

Out[2]= (-(1/ω^2) + (Cos[ω]/ω^2) + π DiracDelta[ω] + (I Sinc[ω]/ω)/Sqrt[2 π])
```

---

Absolute value using ``Sign`` function:

```wl
In[1]:=
f[t_] = t Sign[t];
Plot[f[t], {t, -2, 2}]

Out[1]= [image]

In[2]:= FourierTransform[f[t], t, ω]

Out[2]= -(Sqrt[(2/π)]/ω^2)
```

---

Restriction of a sine function to a half-period:

```wl
In[1]:= Plot[Sin[α t]UnitBox[α t / π] /. α -> π, {t, -1, 1}]

Out[1]= [image]

In[2]:= Simplify[FourierTransform[Sin[α t]UnitBox[α t / π], t, ω], α > 0]

Out[2]= (I Sqrt[(π/2)] (Sinc[(π (α - ω)/2 α)] - Sinc[(π (α + ω)/2 α)])/2 α)
```

---

Triangular function:

```wl
In[1]:=
f[t_] = Piecewise[{{t, 0 ≤ t ≤ 1}, {2 - t, 1 < t ≤ 2}, {0, 2 < t }}]; 
Plot[f[t], {t, 0, 4}]

Out[1]= [image]

In[2]:= FourierTransform[f[t], t, ω]

Out[2]= -((-1 + E^I ω)^2/Sqrt[2 π] ω^2)
```

---

``Ramp`` :

```wl
In[1]:= FourierTransform[Ramp[t - α], t, ω]

Out[1]= -(E^I α ω/Sqrt[2 π] ω^2) - Sqrt[(π/2)] α DiracDelta[ω] - I Sqrt[(π/2)] Derivative[1][DiracDelta][ω]
```

---

``UnitStep`` :

```wl
In[1]:= FourierTransform[UnitStep[t - α], t, ω]

Out[1]= (I E^I α ω/Sqrt[2 π] ω) + Sqrt[(π/2)] DiracDelta[ω]
```

---

Product of ``UnitStep`` and cosine functions:

```wl
In[1]:= FourierTransform[UnitStep[t - π]Cos[t - π], t, ω]

Out[1]= (I E^I π ω/2 Sqrt[2 π] (-1 + ω)) + (I E^I π ω/2 Sqrt[2 π] (1 + ω)) - (1/2) Sqrt[(π/2)] DiracDelta[-1 + ω] - (1/2) Sqrt[(π/2)] DiracDelta[1 + ω]
```

Plot the magnitude and phase:

```wl
In[2]:= GraphicsRow[{Plot[Abs[%], {ω, -5, 5}, ...], Plot[Arg[%], {ω, -5, 5}, ...]}]

Out[2]= [image]
```

#### Periodic Functions (5)

Fourier transform of ``SquareWave`` :

```wl
In[1]:= Plot[SquareWave[t], {t, 0, 4}, Exclusions -> None]

Out[1]= [image]

In[2]:= FourierTransform[SquareWave[t], t, ω]

Out[2]= Underoverscript[∑, K[1] = -∞, ∞]Sqrt[2 π] DiracDelta[ω + π K[1]] (Piecewise[{{0, K[1] == 0}}, -((I*(-1)^K[1]*(1 + (-1)^K[1])*(-1 + I^K[1])^2)/(2*Pi*K[1]))])
```

---

``TriangleWave`` :

```wl
In[1]:= Plot[TriangleWave[t], {t, 0, 4}]

Out[1]= [image]

In[2]:= FourierTransform[TriangleWave[t], t, ω]

Out[2]=
Underoverscript[∑, K[1] = -∞, ∞]Sqrt[2 π] DiracDelta[ω + π K[1]] (Piecewise[{{0, K[1] == 0}}, (1/(2*Pi^2))*
  (I*((2*Pi*(4*(-1)^Abs[K[1]] + Cos[(1/4)*Pi*Abs[K[1]]] - 6*Cos[(3/4)*Pi*Abs[K[1]]])*Sign[K[1]])/
     Abs[K[1]] - (1/K[1]^2)*((-1)^K[1]*(8* ... E^((1/4)*I*Pi*K[1])*Pi*K[1] - 
       6*E^((7/4)*I*Pi*K[1])*Pi*K[1] + E^((5/4)*I*Pi*K[1])*(-4*I + Pi*K[1]) + 
       E^((3/4)*I*Pi*K[1])*(4*I + Pi*K[1]) + 8*(-1)^K[1]*Sign[K[1]]*(Sin[(1/4)*Pi*Abs[K[1]]] - 
         2*Sin[(3/4)*Pi*Abs[K[1]]])))))])
```

---

``SawtoothWave`` :

```wl
In[1]:= Plot[SawtoothWave[t], {t, 0, 6}, Exclusions -> None]

Out[1]= [image]

In[2]:= FourierTransform[SawtoothWave[t], t, ω]

Out[2]=
Underoverscript[∑, K[1] = -∞, ∞]Sqrt[2 π] DiracDelta[ω + π K[1]] (Piecewise[{{1/2, K[1] == 0}}, -(((-1)^K[1]*(1 + (-1)^K[1])*(-1 + (-1)^K[1] - I*Pi*K[1]))/
   (2*Pi^2*K[1]^2))])
```

---

Full-wave-rectified function with period $π$ :

```wl
In[1]:= Plot[RealAbs[Sin[t]], {t, -2π, 2π}]

Out[1]= [image]

In[2]:= FourierTransform[RealAbs[Sin[t]], t, ω]

Out[2]= Underoverscript[∑, K[1] = -∞, ∞]-(2 (-1)^K[1] (1 + (-1)^K[1]) (1 + I^K[1])^2 Sqrt[(2/π)] DiracDelta[2 ω + K[1]]/-4 + K[1]^2)
```

---

Rectified wave:

```wl
In[1]:=
f[t_] = Piecewise[{{Sin[t], 0 ≤ Mod[(t/π), 2] ≤ 1}, {0, 1 < Mod[(t/π), 2] < 2}}];
Plot[f[t], {t, 0, 10}]

Out[1]= [image]

In[2]:= FourierTransform[f[t], t, ω]

Out[2]= Underoverscript[∑, K[1] = -∞, ∞]-(2 I^-K[1] (1 + (-1)^K[1]) (1 + I^K[1]) Sqrt[(2/π)] DiracDelta[2 ω + K[1]]/-4 + K[1]^2)
```

#### Generalized Functions (5)

Fourier transform involving ``HeavisideTheta`` :

```wl
In[1]:= FourierTransform[HeavisideTheta[t], t, ω]

Out[1]= (I/Sqrt[2 π] ω) + Sqrt[(π/2)] DiracDelta[ω]

In[2]:= FourierTransform[HeavisideTheta[t] HeavisideTheta[1 - t], t, ω]

Out[2]= (I - I Cos[ω] + Sin[ω]/Sqrt[2 π] ω)
```

Plot the magnitude and phase:

```wl
In[3]:= GraphicsRow[{Plot[Abs[%], {ω, -10, 10}, ...], Plot[Arg[%], {ω, -10, 10}, ...]}]

Out[3]= [image]
```

---

``DiracDelta`` :

```wl
In[1]:= FourierTransform[DiracDelta[t], t, ω]

Out[1]= (1/Sqrt[2 π])
```

---

Derivative of ``DiracDelta`` :

```wl
In[1]:= FourierTransform[DiracDelta'[t], t, ω]

Out[1]= -(I ω/Sqrt[2 π])
```

---

``HeavisideLambda`` :

```wl
In[1]:= Plot[HeavisideLambda[t - 1], {t, 0, 4}]

Out[1]= [image]

In[2]:= FourierTransform[HeavisideLambda[t - 1], t, ω]

Out[2]= -((-1 + E^I ω)^2/Sqrt[2 π] ω^2)
```

---

``HeavisidePi`` :

```wl
In[1]:= Plot[HeavisidePi[t - (3/2)], {t, 0, 3}, Exclusions -> None]

Out[1]= [image]

In[2]:= FourierTransform[HeavisidePi[t - (3/2)], t, ω]

Out[2]= -(I E^I ω (-1 + E^I ω)/Sqrt[2 π] ω)
```

#### Multivariate Functions (5)

Bivariate Fourier transform of a constant:

```wl
In[1]:= FourierTransform[1, {x, y}, {u, v}]

Out[1]= 2 π DiracDelta[u] DiracDelta[v]
```

---

Exponential function:

```wl
In[1]:= FourierTransform[Exp[α x + β y], {x, y}, {u, v}]

Out[1]= 2 π DiracDelta[u - I α] DiracDelta[v - I β]
```

---

Trivariate cosine:

```wl
In[1]:= FourierTransform[Cos[x + y + z], {x, y, z}, {u, v, w}]

Out[1]= Sqrt[2] π^3 / 2 DiracDelta[-1 + u] DiracDelta[-1 + v] DiracDelta[-1 + w] + Sqrt[2] π^3 / 2 DiracDelta[1 + u] DiracDelta[1 + v] DiracDelta[1 + w]
```

---

Product of power and exponential:

```wl
In[1]:= FourierTransform[(x y z) ^ 3 Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {x, y, z}, {u, v, w}]

Out[1]= (I E^-(u^2/4) - (v^2/4) - (w^2/4) u (-6 + u^2) v (-6 + v^2) w (-6 + w^2)/1024 Sqrt[2])
```

---

Fourier transform of a product of exponential and ``SquareWave`` functions:

```wl
In[1]:= Plot3D[E ^ (-Abs[x])SquareWave[y / (2π)], {x, -2π, 2π}, {y, -2π, 2π}, PlotRange -> All, Mesh -> None]

Out[1]= [image]

In[2]:= FourierTransform[E ^ (-Abs[x]) SquareWave[y / (2 Pi)], {x, y}, {u, v}]

Out[2]= (1/1 + u^2)Sqrt[(2/π)] Underoverscript[∑, K[1] = -∞, ∞]2 Sqrt[2 π] DiracDelta[2 v + K[1]] (Piecewise[{{0, K[1] == 0}}, -((I*(-1)^K[1]*(1 + (-1)^K[1])*(-1 + I^K[1])^2)/(2*Pi*K[1]))])
```

#### Formal Properties (3)

Fourier transform of a first-order derivative:

```wl
In[1]:= FourierTransform[f'[t], t, ω]

Out[1]= -I ω FourierTransform[f[t], t, ω]
```

---

Fourier transform of a second-order derivative:

```wl
In[1]:= FourierTransform[f''[t], t, ω]

Out[1]= -ω^2 FourierTransform[f[t], t, ω]
```

---

Fourier transform threads itself over equations:

```wl
In[1]:= FourierTransform[f'[t] == Log[t], t, ω]

Out[1]= -I ω FourierTransform[f[t], t, ω] == (Sqrt[(π/2)]/ω) - (Sqrt[(π/2)]/Abs[ω]) + (I π^3 / 2 DiracDelta[ω]/Sqrt[2]) - EulerGamma Sqrt[2 π] DiracDelta[ω]
```

#### Numerical Evaluation (2)

Calculate the Fourier transform at a single point:

```wl
In[1]:= FourierTransform[(1/Sqrt[t]), t, -.9]

Out[1]= 1.05409  - 1.05409 I
```

---

Alternatively, calculate the Fourier transform symbolically:

```wl
In[1]:= FourierTransform[(1/Sqrt[t]), t, ω]

Out[1]= -(((1/2) - (I/2)) (-1 + Sign[ω])/Sqrt[Abs[ω]])
```

Then evaluate it for the specific value of $ω$ :

```wl
In[2]:= N[% /. ω -> -.9]

Out[2]= 1.05409  - 1.05409 I
```

### Options (6)

#### AccuracyGoal (1)

The option ``AccuracyGoal`` sets the number of digits of accuracy:

```wl
In[1]:= exact = FourierTransform[HeavisideLambda[t - 1], t, -9 / 10]

Out[1]= -(50/81) (-1 + E^9 I / 10)^2 E^-9 I / 5 Sqrt[(2/π)]

In[2]:= FourierTransform[HeavisideLambda[t - 1], t, -.9, AccuracyGoal -> 5] - exact

Out[2]= 5.546899278785489`*^-8 + 5.2648017057066454`*^-8 I
```

With default settings:

```wl
In[3]:= FourierTransform[HeavisideLambda[t - 1], t, -.9] - exact

Out[3]= 3.1922080812041287`*^-9 + 1.335343013941781`*^-8 I
```

#### Assumptions (1)

Specify the range of a variable using ``Assumptions`` :

```wl
In[1]:= FourierTransform[BesselJ[3, t], t, ω, Assumptions -> -1 < ω < 1 ]

Out[1]= -(I Sqrt[(2/π)] ω (-3 + 4 ω^2)/Sqrt[1 - ω^2])

In[2]:= FourierTransform[BesselJ[3, t], t, ω, Assumptions -> ω > 1 ]

Out[2]= 0

In[3]:= FourierTransform[BesselJ[3, t], t, ω, Assumptions -> ω < -1 ]

Out[3]= 0
```

#### FourierParameters (1)

Fourier transform for the unit box function with different parameters:

```wl
In[1]:=
params = {{0, 1}, {1, 1}, {-1, 1}, {0, 2 π}};
funs = funs = Table[FourierTransform[UnitBox[t - (1/2)], t, ω, FourierParameters -> p], {p, params}]

Out[1]= {(I - I Cos[ω] + ω Sinc[ω]/Sqrt[2 π] ω), (I - I Cos[ω] + ω Sinc[ω]/ω), (I - I Cos[ω] + ω Sinc[ω]/2 π ω), -(I (-1 + E^2 I π ω)/2 π ω)}
```

Create a nicely formatted table of the results:

```wl
In[2]:=
header = { "Parameters", HoldForm@FourierTransform[UnitBox[t - (1/2)], t, ω]};
Grid[Prepend[Transpose[{params, funs}], header], IconizedObject[«Grid options»]]//TraditionalForm

Out[2]//TraditionalForm=
|              |                                        |
| ------------ | -------------------------------------- |
| "Parameters" | ℱt[UnitBox[t - (1/2)]](ω)              |
| {0, 1}       | (ω sinc(ω) - I cos(ω) + I/Sqrt[2 π] ω) |
| {1, 1}       | (ω sinc(ω) - I cos(ω) + I/ω)           |
| {-1, 1}      | (ω sinc(ω) - I cos(ω) + I/2 π ω)       |
| {0, 2 π}     | -(I (-1 + E^2 I π ω)/2 π ω)            |
```

#### GenerateConditions (1)

Use ``GenerateConditions -> True`` to get parameter conditions for when a result is valid:

```wl
In[1]:= FourierTransform[E ^ (-α t ^ 2), t, ω, GenerateConditions -> True]

Out[1]= ConditionalExpression[1/(E^(ω^2/(4*α))*(Sqrt[2]*Sqrt[α])), Re[α] > 0]
```

#### PrecisionGoal (1)

The option ``PrecisionGoal`` sets the relative tolerance in the integration:

```wl
In[1]:= exact = FourierTransform[8 / (t ^ 2 + 1), t, 1 / 2]

Out[1]= 4 Sqrt[(2 π/E)]

In[2]:= FourierTransform[8 / (t ^ 2 + 1), t, .5, PrecisionGoal -> 15] - exact

Out[2]= -0.00895564 + 0. I
```

With default settings:

```wl
In[3]:= FourierTransform[8 / (t ^ 2 + 1), t, .5] - exact

Out[3]= -7.219056641361021`*^-8 + 0. I
```

#### WorkingPrecision (1)

If ``WorkingPrecision`` is specified, the computation is done at that working precision:

```wl
In[1]:= exact = FourierTransform[8 / (t ^ 2 + 1), t, 1 / 2]

Out[1]= 4 Sqrt[(2 π/E)]

In[2]:= FourierTransform[8 / (t ^ 2 + 1), t, .5, WorkingPrecision -> 18] - exact

Out[2]= -5.95001651314676726259145`2.990515486477118*^-15
```

With default settings:

```wl
In[3]:= FourierTransform[8 / (t ^ 2 + 1), t, .5] - exact

Out[3]= -7.219056641361021`*^-8 + 0. I
```

### Applications (11)

#### Signals and Systems (3)

Find the convolution of signals:

```wl
In[1]:=
h[t_] := UnitStep[t + 1 / 2] - UnitStep[t - 1 / 2];
x[t_] := Cos[π t];
```

The product of their Fourier transforms:

```wl
In[2]:= FourierTransform[h[t], t, ω, FourierParameters -> {1, -1}] * FourierTransform[x[t], t, ω, FourierParameters -> {1, -1}]

Out[2]= (2 (π DiracDelta[π - ω] + π DiracDelta[π + ω]) Sin[(ω/2)]/ω)
```

Find the inverse transform:

```wl
In[3]:= InverseFourierTransform[%, ω, t, FourierParameters -> {1, -1}]

Out[3]= (2 Cos[π t]/π)
```

Compare with ``Convolve`` :

```wl
In[4]:= Convolve[h[τ], x[τ], τ, t]

Out[4]= (2 Cos[π t]/π)
```

---

Spectrum of the product of two signals, with one given in the frequency domain by:

```wl
In[1]:= Plot[UnitTriangle[ω], {ω, -1.2, 1.2}]

Out[1]= [image]
```

The Fourier transform of the signal $y(t) = cos(2t)$ :

```wl
In[2]:= FourierTransform[Cos[2 t], t, ω, FourierParameters -> {1, -1}]

Out[2]= π DiracDelta[-2 + ω] + π DiracDelta[2 + ω]
```

The Fourier transform of the product of $y(t)$ with the original signal is the convolution of its transforms:

```wl
In[3]:= 1 / 2π Convolve[UnitTriangle[t], % /. ω -> t, t, ω]

Out[3]= (1/2) π (π UnitTriangle[2 - ω] + π UnitTriangle[2 + ω])
```

Its spectrum:

```wl
In[4]:= Plot[%, {ω, -5, 5}]

Out[4]= [image]
```

---

Frequency response of an LTI system defined by an ODE:

```wl
In[1]:= eqn = y'[t] + y[t] == x'[t];
```

Apply the Fourier transform over the equation:

```wl
In[2]:= FourierTransform[eqn, t, ω]

Out[2]= FourierTransform[y[t], t, ω] - I ω FourierTransform[y[t], t, ω] == -I ω FourierTransform[x[t], t, ω]
```

Solve for the Fourier transform of $y(t)$ :

```wl
In[3]:= Solve[%, FourierTransform[y[t], t, ω]]

Out[3]= {{FourierTransform[y[t], t, ω] -> (ω FourierTransform[x[t], t, ω]/I + ω)}}
```

The frequency response of the LTI system is the ratio of the Fourier transforms of the output function $y(t)$ over the input function $x(t)$ :

```wl
In[4]:= %[[1]][[1, 2]] / FourierTransform[x[t], t, ω]

Out[4]= (ω/I + ω)
```

#### Ordinary Differential Equations (1)

Solve a differential equation using Fourier transforms:

```wl
In[1]:= eqn = y'[t] + y[t] == Sin[t];
```

Apply the Fourier transform over the equation:

```wl
In[2]:= FourierTransform[eqn, t, ω]

Out[2]= FourierTransform[y[t], t, ω] - I ω FourierTransform[y[t], t, ω] == I Sqrt[(π/2)] DiracDelta[-1 + ω] - I Sqrt[(π/2)] DiracDelta[1 + ω]
```

Solve for the Fourier transform:

```wl
In[3]:= SolveValues[%, FourierTransform[y[t], t, ω]]

Out[3]= {(-Sqrt[2 π] DiracDelta[-1 + ω] + Sqrt[2 π] DiracDelta[1 + ω]/2 (I + ω))}
```

Find the inverse transform to get the solution:

```wl
In[4]:= InverseFourierTransform[%[[1]], ω, t]

Out[4]= (1/2) (-Cos[t] + Sin[t])
```

Compare with ``DSolveValue`` :

```wl
In[5]:= DSolveValue[{eqn, y[0] == -1 / 2}, y[t], t]

Out[5]= (1/2) (-Cos[t] + Sin[t])
```

#### Partial Differential Equations (1)

Consider the heat equation: $Subscript[``u``, ``t``]=α^2Subscript[``u``, ``xx``]$ with initial condition $``u``(``x``, 0)$ :

```wl
In[1]:= eqn = D[u[x, t], t] == α ^ 2 D[u[x, t], x, x];
```

Fourier transform with respect to $x$ :

```wl
In[2]:= FourierTransform[eqn, x, ω]

Out[2]= FourierTransform[u^(0, 1)[x, t], x, ω] == -α^2 ω^2 FourierTransform[u[x, t], x, ω]
```

With $u1(ω, t) = Subscript[ℱ, x][u(x, t)](ω)$ and $u1(ω, 0) = Subscript[ω, 0]$, solve this ODE:

```wl
In[3]:= DSolveValue[{D[u1[ω, t], t] == -α^2 ω^2 u1[ω, t], u1[ω, 0] == Subscript[ω, 0]}, u1[ω, t], t]

Out[3]= E^-t α^2 ω^2 Subscript[ω, 0]
```

Compute the inverse Fourier transform:

```wl
In[4]:= InverseFourierTransform[1 / Sqrt[2 π]E ^ (-ω ^ 2α ^ 2t), ω, x]

Out[4]= (E^-(x^2/4 t α^2)/2 Sqrt[π] Sqrt[t α^2])
```

And convolution to get the solution:

```wl
In[5]:= Convolve[(E^-(x^2/4 t α^2)/2 Sqrt[π] Sqrt[t α^2]) /. x -> y, u[y, 0], y, x]

Out[5]= (Convolve[E^-(y^2/4 t α^2), u[y, 0], y, x]/2 Sqrt[π] Sqrt[t α^2])
```

Consider the special case with initial condition $``u``(``x``, 0) = UnitBox[x]$ and $α = 1$ :

```wl
In[6]:= % /. {u[y, 0] -> UnitBox[y], α -> 1}

Out[6]= (1/2) (Erf[(1 - 2 x/4 Sqrt[t])] + Erf[(1 + 2 x/4 Sqrt[t])])
```

Compare with ``DSolveValue`` :

```wl
In[7]:= DSolveValue[{eqn /. {α -> 1}, {u[x, 0] == UnitBox[x]}}, u[x, t], {x, t}]

Out[7]= (1/2) (-Erf[(-1 + 2 x/4 Sqrt[t])] + Erf[(1 + 2 x/4 Sqrt[t])])
```

Plot the initial conditions and solutions for different values of $t$ :

```wl
In[8]:= Plot[{UnitBox[x], Evaluate@Table[%, {t, {.005, .1, .3, .8}}]}, {x, -3, 3}, PlotLegends -> {UnitBox[x], .005, .1, .3, .8}, Exclusions -> None]

Out[8]= [image]
```

Plot the solution over the $x$ - $t$ plane.

```wl
In[9]:= Plot3D[Evaluate[(1/2) (Erf[(1 - 2 x/4 Sqrt[t])] + Erf[(1 + 2 x/4 Sqrt[t])])], {x, -2, 2}, {t, 0, 1}, ...]

Out[9]= [image]
```

#### Evaluation of Integrals (1)

Calculate the following definite integral:

```wl
In[1]:= Inactive[Integrate][(u Cos[t u]/1 + u^2), {u, 0, ∞}]

Out[1]= Inactive[Integrate][(u*Cos[t*u])/(1 + u^2), {u, 0, Infinity}]
```

Compute the Fourier transform with respect to $t$ and interchange the order of transform and integration:

```wl
In[2]:= Inactive[Integrate][FourierTransform[(u Cos[t u]/1 + u^2), t, ω], {u, 0, ∞}]

Out[2]=
Inactive[Integrate][(Sqrt[Pi/2]*u*DiracDelta[-u + ω])/(1 + u^2) + 
  (Sqrt[Pi/2]*u*DiracDelta[u + ω])/(1 + u^2), {u, 0, Infinity}]
```

Integrate over $u$ :

```wl
In[3]:= Activate[%]

Out[3]=
ConditionalExpression[(Sqrt[Pi/2]*ω*(-HeavisideTheta[-ω] + HeavisideTheta[ω]))/(1 + ω^2), 
 Element[ω, Reals]]
```

Use the inverse Fourier transform to get the result:

```wl
In[4]:= FullSimplify[InverseFourierTransform[%, ω, t], Assumptions -> t > 0]

Out[4]= -Cosh[t] CoshIntegral[t] + Sinh[t] SinhIntegral[t]
```

Compare with ``Integrate`` :

```wl
In[5]:= Integrate[(u Cos[t u]/1 + u^2), {u, 0, ∞}, Assumptions -> t > 0]

Out[5]= -Cosh[t] CoshIntegral[t] + Sinh[t] SinhIntegral[t]
```

#### Other Applications (5)

The power spectrum of a damped sinusoid:

```wl
In[1]:= FourierTransform[Sin[10 ^ 3 t]Exp[-t / 10]UnitStep[t], t, ω]

Out[1]= (50000 Sqrt[(2/π)]/100000001 - 20 I ω - 100 ω^2)

In[2]:= LogLogPlot[Evaluate@Abs[%], {ω, 1*^-1, 1*^5}, PlotRange -> All]

Out[2]= [image]
```

---

The Fourier transform of a radially symmetric function in the plane can be expressed as a Hankel transform. Verify this relation for the function defined by:

```wl
In[1]:= f[x_, y_] := (x ^ 2 + y ^ 2) E ^ (-Sqrt[x ^ 2 + y ^ 2])
```

Plot the function:

```wl
In[2]:= Plot3D[f[x, y], {x, -3, 3}, {y, -3, 3}, PlotRange -> All, Mesh -> False]

Out[2]= [image]
```

Compute its Fourier transform:

```wl
In[3]:= FourierTransform[f[x, y], {x, y}, {u, v}]

Out[3]= (6 - 9 (u^2 + v^2)/(1 + u^2 + v^2)^7 / 2)
```

Obtain the same result using ``HankelTransform`` :

```wl
In[4]:= HankelTransform[f[x, y] /. {x -> r Cos[m], y  -> r Sin[m]}//Simplify, r, s] /.  {s -> Sqrt[u^2 + v^2]}

Out[4]= (6 - 9 (u^2 + v^2)/(1 + u^2 + v^2)^7 / 2)
```

Plot the Fourier transform:

```wl
In[5]:= Plot3D[%, {u, -3, 3}, {v, -3, 3}, PlotRange -> All, Mesh -> False]

Out[5]= [image]
```

---

Generate a gallery of Fourier transforms for a list of radially symmetric functions:

```wl
In[1]:= flist = {(1/Sqrt[r^2 + 1]), (Cos[2 π r]/r), (1/r), E^-r, BesselJ[0, r]^2, E^-r^2};
```

Compute the Hankel transforms for these functions:

```wl
In[2]:= tlist = FullSimplify[HankelTransform[flist, r, s], Assumptions -> 0 < s < 2]

Out[2]= {(E^-s/s), 0, (1/s), (1/(1 + s^2)^3 / 2), (2/π s Sqrt[4 - s^2]), (1/2) E^-(s^2/4)}
```

Generate the gallery of Fourier transforms as required:

```wl
In[3]:= (Grid[#1, Alignment -> {{Right, {Left}}, Center}, Spacings -> 0]&)[Table[{...}, {i, 6}]]

Out[3]=
|                                                   |         |         |         |                                                      |
| ------------------------------------------------: | :------ | :------ | :------ | :------------------------ ... ^2]]^2]               | [image] | **"\[ShortRightArrow]"** | [image] | Text[(2*1/Sqrt[4 - u^2 - v^2]*1/Sqrt[u^2 + v^2])/Pi] |
| Text[E^(-x^2 - y^2)]                              | [image] | **"\[ShortRightArrow]"** | [image] | Text[Rational[1, 2]*E^(Rational[1, 4]*(-u^2 - v^2))] |
```

---

Calculate the power spectrum of a stationary ``OrnsteinUhlenbeckProcess`` :

```wl
In[1]:= FourierTransform[CovarianceFunction[OrnsteinUhlenbeckProcess[μ, σ, θ], h], h, ω, FourierParameters -> {1, 1}, Assumptions -> θ > 0]

Out[1]= (σ^2/θ^2 + ω^2)
```

---

A quick look at the Heisenberg uncertainty principle:

Consider a fixed-area box function as the position space wavefunction of a particle. Its Fourier transform gives the momentum space wavefunction of the particle:

```wl
In[1]:= Simplify[FourierTransform[1 / Sqrt[2α]UnitBox[x / (2α)], x, k, Assumptions -> α∈PositiveIntegers], α∈PositiveIntegers]

Out[1]= (Sqrt[α] Sinc[k α]/Sqrt[π])
```

When $α$ is small, the height of the fixed-area box is big, and the position of the particle is almost guaranteed. The momentum space wavefunction is approximately $Sqrt[(α/π)]$ for values between its two roots closest to zero, which makes it almost impossible to find its momentum. Similarly, vice versa, as seen here:

```wl
In[2]:= Manipulate[GraphicsRow[{Plot[1 / Sqrt[2α]UnitBox[x / (2α)], {x, -6.1, 6.1}, ...], Plot[...]}], ...]

Out[2]= DynamicModule[«8»]
```

### Properties & Relations (6)

By default, the Fourier transform of $f(t)$ is:

```wl
In[1]:= HoldForm[FourierTransform[f[t], t, ω] = HoldForm[1 / Sqrt[2π]] * Integrate[f[t]E ^ (I ω t), {t, -∞, ∞}]]//TraditionalForm

Out[1]//TraditionalForm= Subscript[ℱ, t][f(t)](ω) = (1/Sqrt[2 π]) Subsuperscript[∫, -∞, ∞]f(t) E^I ω t\[DifferentialD]t
```

---

For $f(t) = E^-t^2cos(t)$, the definite integral becomes:

```wl
In[1]:= 1 / Sqrt[2π]Integrate[Exp[-t ^ 2]Cos[t]Exp[I ω t], {t, -∞, ∞}]//FullSimplify

Out[1]= (E^-(1/4) (1 + ω)^2 (1 + E^ω)/2 Sqrt[2])
```

Compare with ``FourierTransform`` :

```wl
In[2]:= FourierTransform[Exp[-t ^ 2]Cos[t], t, ω]//TrigToExp//Factor//Simplify

Out[2]= (E^-(1/4) (1 + ω)^2 (1 + E^ω)/2 Sqrt[2])
```

---

Use ``Asymptotic`` to compute an asymptotic approximation:

```wl
In[1]:= Asymptotic[Inactive[FourierTransform][E ^ (-t ^ 2 - t ^ 4), t, x], x -> 0]

Out[1]= (E^1 / 8 BesselK[(1/4), (1/8)]/2 Sqrt[2 π])
```

---

``FourierTransform`` and ``InverseFourierTransform`` are mutual inverses:

```wl
In[1]:= InverseFourierTransform[FourierTransform[f[t], t, ω], ω, t]

Out[1]= f[t]

In[2]:= FourierTransform[InverseFourierTransform[G[ ω], ω, t], t, ω]

Out[2]= G[ω]

In[3]:= FourierTransform[1 / (t ^ 2 + 1), t, ω]

Out[3]= E^-Abs[ω] Sqrt[(π/2)]

In[4]:= InverseFourierTransform[%, ω, t]

Out[4]= (1/1 + t^2)
```

---

``FourierTransform`` and ``FourierCosTransform`` are equal for even functions:

```wl
In[1]:= FourierTransform[Exp[-t ^ 2], t, ω]

Out[1]= (E^-(ω^2/4)/Sqrt[2])

In[2]:= FourierCosTransform[Exp[-t ^ 2], t, ω ]

Out[2]= (E^-(ω^2/4)/Sqrt[2])
```

---

``FourierTransform`` and ``FourierSinTransform`` differ by ``I`` for odd functions:

```wl
In[1]:= FourierSinTransform[t Exp[-Abs[t]], t, ω]

Out[1]= (2 Sqrt[(2/π)] ω/(1 + ω^2)^2)

In[2]:= FourierTransform[t Exp[-Abs[t]], t, ω]

Out[2]= (2 I Sqrt[(2/π)] ω/(1 + ω^2)^2)
```

### Possible Issues (1)

The result from an inverse Fourier transform may not have the same form as the original:

```wl
In[1]:= FourierTransform[UnitStep[1 + t]UnitStep[1 - t], t, ω]

Out[1]= (Sqrt[(2/π)] Sin[ω]/ω)

In[2]:= InverseFourierTransform[%, ω, t]

Out[2]= (1/2) (Sign[1 - t] + Sign[1 + t])
```

### Neat Examples (2)

The Fourier transforms of weighted Hermite polynomials have a very simple form:

```wl
In[1]:= FourierTransform[Exp[-t ^ 2]HermiteH[10, t], t, ω]

Out[1]= -(E^-(ω^2/4) ω^10/Sqrt[2])

In[2]:= InverseFourierTransform[%, ω, t]//Factor

Out[2]= 32 E^-t^2 (-945 + 9450 t^2 - 12600 t^4 + 5040 t^6 - 720 t^8 + 32 t^10)
```

---

Create a table of basic Fourier transforms:

```wl
In[1]:= flist = {t ^ n, E ^ (a t), E ^ (-a t), Exp[-t ^ 2], Sin[a t], t Sin[a t], Sinc[t], DiracDelta[t - a], Log[Abs[t]], UnitStep[t], UnitBox[t], BesselJ[2, a t], BesselY[0, Abs[t]]};

In[2]:= Grid[Prepend[{#, Assuming[{a > 0}, Simplify[FourierTransform[#1, t, ω]]]}& /@ flist, {f[t], FourierTransform[f[t], t, ω]}], IconizedObject[«Grid options»]]//TraditionalForm

Out[2]//TraditionalForm=
|                   |                                                                                             |
| ----------------- | ------------------------------------------------------------------------------------------- |
| f(t)           ...               |
| J2(a t)           | Piecewise[{{(Sqrt[2/Pi]*(a^2 - 2*ω^2))/(a^2*Sqrt[a^2 - ω^2]), a^2/ω^2 > 1}}, 0]             |
| Y0(\[LeftBracketingBar]t\[RightBracketingBar])           | Piecewise[{{-(Sqrt[2/Pi]/Sqrt[ω^2 - 1]), ω > 1 \|\| ω < -1}}, 0]                            |
```

## See Also

* [`FourierSinTransform`](https://reference.wolfram.com/language/ref/FourierSinTransform.en.md)
* [`FourierCosTransform`](https://reference.wolfram.com/language/ref/FourierCosTransform.en.md)
* [`FourierSeries`](https://reference.wolfram.com/language/ref/FourierSeries.en.md)
* [`FourierCoefficient`](https://reference.wolfram.com/language/ref/FourierCoefficient.en.md)
* [`Fourier`](https://reference.wolfram.com/language/ref/Fourier.en.md)
* [`InverseFourierTransform`](https://reference.wolfram.com/language/ref/InverseFourierTransform.en.md)
* [`FourierSequenceTransform`](https://reference.wolfram.com/language/ref/FourierSequenceTransform.en.md)
* [`Convolve`](https://reference.wolfram.com/language/ref/Convolve.en.md)
* [`LaplaceTransform`](https://reference.wolfram.com/language/ref/LaplaceTransform.en.md)
* [`Integrate`](https://reference.wolfram.com/language/ref/Integrate.en.md)
* [`Piecewise`](https://reference.wolfram.com/language/ref/Piecewise.en.md)
* [`CharacteristicFunction`](https://reference.wolfram.com/language/ref/CharacteristicFunction.en.md)

## Tech Notes

* [Integral Transforms and Related Operations](https://reference.wolfram.com/language/tutorial/Calculus.en.md#26017)

## Related Guides

* [Integral Transforms](https://reference.wolfram.com/language/guide/IntegralTransforms.en.md)
* [Fourier Analysis](https://reference.wolfram.com/language/guide/FourierAnalysis.en.md)
* [Signal Transforms](https://reference.wolfram.com/language/guide/SignalTransforms.en.md)
* [Generalized Functions](https://reference.wolfram.com/language/guide/GeneralizedFunctions.en.md)
* [`Calculus`](https://reference.wolfram.com/language/guide/Calculus.en.md)
* [Summation Transforms](https://reference.wolfram.com/language/guide/SummationTransforms.en.md)

## History

* Introduced in 1999 (4.0) \| [Updated in 2025 (14.2)](https://reference.wolfram.com/language/guide/SummaryOfNewFeaturesIn142.en.md)