Question: I am interested in performing some Fourier analysis simulations on my
circuit. In looking through the manual, I have noticed that there appear to be three
operators that seem to perform similar operations: FFT, FFTS, and HARM. What are the
differences between each of these operators, and in which situations should I use each
operator?
Answer: Each of these operators do produce similar data. The main difference between
them lie in the scale factors used along with whether the operator treats its specified
waveform as a magnitude or a complex number.
FFT operator: The FFT operator calculates the classical Fourier transform of the specified
waveform and returns a complex quantity whose real part contains the scaled Fourier series
An coefficients and imaginary part contains the scaled Fourier series Bn coefficients. The
Fourier coefficients are scaled by N/2 (DC scaled by N) where N is the number of points
calculated during the FFT operation. Since most engineering applications need the unscaled
Fourier coefficients, the FFT operator is most useful when calculating the phase values of
the Fourier transform such as with the expression PH(FFT(V(Out))).
HARM operator: The HARM operator calculates the amplitude of the harmonics for the specified
waveform where the amplitude is the multiplier of the sine or cosine function. It returns
a magnitude rather than a complex quantity. The HARM operator is only useful for plotting
the harmonics of a waveform such as with the expression HARM(V(Out)) or
dB(Harm(V(Out))).
FFTS operator: The FFTS operator is similar in operation to the HARM operator. It can
also be used to plot the harmonics of a waveform such as with the expression FFTS(V(Out)).
The difference between the two is that the FFTS operator returns a complex quantity so that
it can be used to plot the Fourier series sine and cosine coefficients. The Fourier series
cosine coefficients can be calculated through an expression such as Re(FFTS(V(Out))), and
the Fourier series sine coefficients can be calculated through an expression such as
Im(FFTS(V(Out))).
|