LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

AmpPhaseSpectrum

Hello

For a customer project I must calculate the amplitude spectrum of a time
domain signal. So I used the function AmpPhaseSpectrum(...) to calculate the
spectrum.
The customer then compares my results with the results of an other spectrum
analysis tool and found, that my values are the RMS values, but he wanted
the peak values, which should be bigger (crest factor ?). The docs of
AmpPhaseSpectrum() said, that the values are the RMS values, so the function
seem to work correct.

Im am not a specialist in frequency analysis. Can someone tell me, how I can
calculate the peak amplitude spectrum with the function of CVI? Must I
concert the output fom AmpPhaseSpectrum() or must I use an other function
(FFT)?

Thanks
Stephan
0 Kudos
Message 1 of 4
(3,777 Views)
Stephan Gerhards wrote:

> Hello
>
> For a customer project I must calculate the amplitude spectrum of a time
> domain signal. So I used the function AmpPhaseSpectrum(...) to calculate the
> spectrum.
> The customer then compares my results with the results of an other spectrum
> analysis tool and found, that my values are the RMS values, but he wanted
> the peak values, which should be bigger (crest factor ?). The docs of
> AmpPhaseSpectrum() said, that the values are the RMS values, so the function
> seem to work correct.
>
> Im am not a specialist in frequency analysis. Can someone tell me, how I can
> calculate the peak amplitude spectrum with the function of CVI? Must I
> concert the output fom AmpPhaseSpectrum() or must I use an other function
> (FFT)?
>
> Thanks

> Stephan

If it is a sinusoidal wave in the freq domain then RMS times 1.414 equals peak.

I am not sure if this works in time domain or not. Try it against the values
from the other package and see what you get.
Kevin Kent
0 Kudos
Message 2 of 4
(3,777 Views)
Kevin, tanks fpr your response
No. it is not a sinusoidal wave, it is more like an noise.
I do not have access to the other system. My customer checks my program
against an other, which is the reference for him.

Stephan

> If it is a sinusoidal wave in the freq domain then RMS times 1.414 equals
peak.
>
> I am not sure if this works in time domain or not. Try it against the
values
> from the other package and see what you get.
> Kevin Kent
>
0 Kudos
Message 3 of 4
(3,777 Views)
Please excuse any lack of netiquette I don't post often.

If you to take a simple time domain transient and display the frequency
components of this then you will probably want to use ReFFT function. You
can only use this function if the single real array that you want to convert
to frequency domain is a power of 2 (or if you pad the data with zeros to
reach a value of 2). If you have a time domain which contains both real and
imaginary parts such as some heterodyne data then you would use FFT function

Else if you don't have data in powers of two and do not want to pad the
array, you must use the much slower a much slower DFT algorithm.

The output of these FT algorithm will have positive and negative values, so
you must find out your client wants this or if
they want you to apply an
absolute function to give only positive values. Usually results in my field
are given as power functions to avoid this complication.

Good Luck,
Greg

"Stephan Gerhards" wrote in message
news:396f16e3@newsgroups.ni.com...
> Kevin, tanks fpr your response
> No. it is not a sinusoidal wave, it is more like an noise.
> I do not have access to the other system. My customer checks my program
> against an other, which is the reference for him.
>
> Stephan
>
> > If it is a sinusoidal wave in the freq domain then RMS times 1.414
equals
> peak.
> >
> > I am not sure if this works in time domain or not. Try it against the
> values
> > from the other package and see what you get.
> > Kevin Kent
> >
>
>
0 Kudos
Message 4 of 4
(3,777 Views)