|x(t) = 0|
This application allows a user to generate a finite-time signal as a combination of standard functions (Sine, Sinc, Square, Pulse Train, etc.), performs a Fourier analysis on the resulting signal, and displays the frequency spectrum as a Bode plot.
This application demonstrates the results of pseudo-continuous-time Fourier analysis on an example signal. Of course, actual continuous-time analysis is unachievable through sampling; this application samples the signal at every horizontal pixel to calculate each complex exponential component.While the available signal components include several that are typically periodic (Sine, Cosine, Square Wave, Pulse Train, etc.), it is important to recall that the periodicity ends at the left and right edges of the application canvas - i.e., these are only finite-time portions of infinite-time periodic signals. As a result, the Fourier transforms will not exactly resemble their infinite continuous-time counterparts. For example, the Fourier transform of a single sine wave should be two deltas; instead, the transform here produces two narrow-band sinc pulses. One of the more interesting features of this application is the ability to manipulate various properties of a signal component, and to view how the resulting frequency spectrum changes in response. For example, for a Pulse Train signal, adjustments to the period have an inverse effect on the corresponding pulses of the Fourier spectrum. In order to play a sound, the sample is repeated x1000 and queued as a 44.1kHz audio buffer. One problem that may arise is where the ends of the sample do not match up - either in position or in first derivative - which produces a noisy, buzzy audio sample, even for a signal that should otherwise be simple and pleasant, such as a pure sine wave. In order to avoid this result, an attempt is made to trim the end of the signal at a point that produces a smooth loop. (A small vertical line is shown on the signal axis at the trim point.)