LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

create FFT size

Hi, Can anyone advise me how to create my FFT size from my 1D array say 40926?
 
0 Kudos
Message 1 of 16
(5,278 Views)

Can someone please advise me. i am desperately in need for these application to use in a FFT power spectrum.vi

My sample size is 40962 and i am aware that the FFT length takes in 2^n length i have no idea how to i break up my 1D array into a desired(Fast FFT size) block  and create a wave form.vi to input into the FFT power spectrum?

 

 

 

0 Kudos
Message 2 of 16
(5,254 Views)
There are several articles on the National Instruments website that refer to this subject. I would advise looking into them before you attempt to use the FFT. The FFT is a very powerful tool, but as with most powerful tools if it is not understood the results you get, while appearing useful, may be invalid. I haven't used LV's FFT tools recently, but in the past you could feed any size data (within reason) to the function. If it was a 2^N length an FFT was performed, other sizes would cause it to be evaluated with a DFT, with a sizable increase in execution time. As this was on pretty slow machines when I was doing it (100MHz Pentium) it was pretty critical that the data conform to the "power of two" criteria. One technique, to be used cautiously, is padding with zeros. Doing a search on this website (NI) using "FFT padding" returns a number of articles, i.e.:http://zone.ni.com/devzone/conceptd.nsf/webmain/81227DF4C2952C1A86256CA80053F322, which way the pros and cons of padding.
 
 
P.M.
Putnam
Certified LabVIEW Developer

Senior Test Engineer North Shore Technology, Inc.
Currently using LV 2012-LabVIEW 2018, RT8.5


LabVIEW Champion



0 Kudos
Message 3 of 16
(5,249 Views)
could not type fast enough go with what LV says.

Message Edited by jhoskins on 09-01-2005 09:19 AM




Joe.
"NOTHING IS EVER EASY"
0 Kudos
Message 4 of 16
(5,246 Views)

yes i have read. i was thinking how to break my array into blocks?

i)Divide with a constant ie 10 to get approxi 4096?

 ii)follow form a 2D array ?

iii)feed into the FFT power spectrum.vi ?

 

0 Kudos
Message 5 of 16
(5,241 Views)
Hi,
The sampling frequency is 1000Hz and FFT length will be 4096. How do i create the vi for that range from my samples?
0 Kudos
Message 6 of 16
(5,233 Views)
Many LabVIEW versions ago, you would get a huge performance hit unless the array size was an integer power of two.
 
This is no longer true! Many other sizes will give you very similar speeds using a mixed radix Cooley-Tukey algorithm, the speed vs. size dependecy is a bit jagged, but often it is not worth worrying about it. 🙂
 
The NI algoritms seem competitive with e.g. the FFTW . Make sure you're not wasting your time 😉
 
Have you benchmarked your transform time?
0 Kudos
Message 7 of 16
(5,231 Views)
There is a reason why i want to spilt my sample size because apparently when i bulid a coherence function using FFT Power spectrum and FFT cross.vi the results was all 1. And i read that somehow i got to spilt the data into the FFT size.
0 Kudos
Message 8 of 16
(5,228 Views)
The result should not depend on the data size. If it does, something else is wrong. :(
 
Could you attach a small example (containing your data in a diagram constant)?
0 Kudos
Message 9 of 16
(5,219 Views)
In the attached vi. i only use 2 1D array.
0 Kudos
Message 10 of 16
(5,216 Views)