Table of Contents

Gaussian pulse (2D FDTD)

A Gaussian pulse is a smooth excitation localized in time. FDTD CUDA's Gaussian waveform evaluates:

$$ f(t)=A\exp\left[-\left(\frac{t-t_0}{\tau}\right)^2\right] $$

$A$ sets the amplitude, $t_0$ the peak time, and $\tau$ the width. At one width from the peak, the value is $A/e$. A wider pulse varies more slowly and has a narrower frequency spectrum.

The constructor accepts these parameters directly. Gaussian::from_steps(dt, widthSteps) instead defines the width in simulation steps:

$$ \tau=\mathrm{widthSteps}\,\Delta t,\qquad t_0=3\tau $$

This places the peak three widths after the start. The waveform has a small nonzero value at time zero because a Gaussian has no finite cutoff.

Register the waveform with a source to inject it into $E_z$, $H_x$, or $H_y$. Source sampling follows the component's staggered time. The exponential is evaluated in double precision before conversion to the field type. Changing the time step changes the physical width when widthSteps is held fixed.