0
0
RosHow-ToBeginner · 3 min read

Fourier Transform of Gaussian Pulse: Formula and Example

The Fourier transform of a Gaussian pulse f(t) = exp(-a t^2) is another Gaussian function F(ω) = sqrt(π/a) exp(-ω^2/(4a)). This means the transform keeps the Gaussian shape but changes its width in the frequency domain.
📐

Syntax

The Gaussian pulse in time domain is defined as f(t) = exp(-a t^2), where a controls the pulse width.

The Fourier transform F(ω) is given by:

F(ω) = ∫ f(t) e-iωt dt = sqrt(π/a) exp(-ω² / (4a))

Here:

  • t is time
  • ω is angular frequency
  • a is a positive constant controlling pulse width
python
import numpy as np
import matplotlib.pyplot as plt

def gaussian_pulse(t, a):
    return np.exp(-a * t**2)

def fourier_transform_gaussian(omega, a):
    return np.sqrt(np.pi / a) * np.exp(-omega**2 / (4 * a))
💻

Example

This example shows how to plot a Gaussian pulse and its Fourier transform using Python.

python
import numpy as np
import matplotlib.pyplot as plt

# Parameters
a = 1.0
 t = np.linspace(-5, 5, 400)
 omega = np.linspace(-10, 10, 400)

# Gaussian pulse in time domain
 f_t = np.exp(-a * t**2)

# Fourier transform of Gaussian pulse
 F_omega = np.sqrt(np.pi / a) * np.exp(-omega**2 / (4 * a))

# Plot
plt.figure(figsize=(10,4))
plt.subplot(1,2,1)
plt.plot(t, f_t)
plt.title('Gaussian Pulse f(t)')
plt.xlabel('Time t')
plt.ylabel('Amplitude')

plt.subplot(1,2,2)
plt.plot(omega, F_omega)
plt.title('Fourier Transform F(ω)')
plt.xlabel('Frequency ω')
plt.ylabel('Amplitude')

plt.tight_layout()
plt.show()
Output
A figure with two plots: left plot shows a bell-shaped Gaussian curve centered at zero in time domain; right plot shows a wider bell-shaped Gaussian curve in frequency domain.
⚠️

Common Pitfalls

One common mistake is forgetting that the Fourier transform of a Gaussian is also Gaussian but with a different width. Another is mixing up the sign in the exponential or the scaling factor.

Also, using the wrong constant a can lead to incorrect width and amplitude in the transform.

python
import numpy as np

# Wrong: missing sqrt(pi/a) factor
def wrong_fourier_transform(omega, a):
    return np.exp(-omega**2 / (4 * a))

# Correct
def correct_fourier_transform(omega, a):
    return np.sqrt(np.pi / a) * np.exp(-omega**2 / (4 * a))
📊

Quick Reference

TermMeaning
f(t) = exp(-a t²)Gaussian pulse in time domain
aControls pulse width (larger a = narrower pulse)
F(ω) = sqrt(π/a) exp(-ω²/(4a))Fourier transform of Gaussian pulse
ωAngular frequency variable
Fourier transformIntegral transform converting time to frequency domain

Key Takeaways

The Fourier transform of a Gaussian pulse is another Gaussian function with a related width.
The parameter 'a' controls the pulse width and affects the transform's width inversely.
Always include the scaling factor sqrt(π/a) in the Fourier transform formula.
Plotting both time and frequency domain helps visualize the transform's effect.
Common errors include missing constants or sign mistakes in the exponential.