The first option, which is also the default option, constructs an optimal modulated Gaussian pulse waveform based on your project's specified center frequency and bandwidth. This optimal waveform guarantees the most accurate frequency domain computations for your simulation. The second option gives you a choice of the three standard waveforms and lets you define their waveform [[parameters]] in terms of frequency domain characteristics like center frequency and bandwidth and spectral contents. The third option lets you define a completely arbitrary temporal waveform for your source.
Select the third option of waveform definition and then choose the '''Custom''' option from the '''Waveform Type''' dropdown list. Enter a mathematical expression for your custom waveform a function of the time variable "T" or "t" in the box labeled '''Expression'''. You can use arithmetic operation, standard and library functions as well as you models and [[variables]]. For example, in the figure on the right, we have defined a modulated Bessel waveform in the form of "sin(2*pi*Fc*T-pi/4)*Jn(0,pi*Fc*T/4)", where Fc is the center frequency of the project and one of the project's default [[variables]] and Jn(n,x) denotes the Bessel function of the first kind and order n, which is one of [[EM.Cube]]'s library functions.
{{Note| If you define a custom excitation waveform for your source based on arbitrary time domain specifications, none of the standard frequency domain output data and [[parameters]] will be computed at the end of your FDTD simulation.}}