# 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 [[fdtd-cuda-sources|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.