Author |
Topic  |
|
garethdobson
USA
Posts |
Posted - 10/26/2006 : 4:58:47 PM
|
Origin Version (Select Help-->About Origin): Operating System: Origin Version (Select Help-->About Origin): Operating System: Hi, I import data (over 50 thousand points) as text files into Origin. The data is time in microseconds and the position of an object. When plotted this gives a waveform with time in microseconds plotted against amplitude. I interpolate the data and use this to perform a FFT. The FFT data gives a frequncy which needs to be muliplied by a million to give the corect frequency due to the use of microseconds instead of seconds (as Origin uses to compute the data). My problem is that the resolution of the FFT is insufficient as it gives me about 0.005points per second which I multiply by a million to give me the real value (in the same way as if Origin had computed the original data in microseconds instead of seconds). When the 0.005 points per second is multiplied by a million I end up with a final error of 5kHz. Also if I make the sampling interval for the FFT smaller than the default it can give me wrong frequencies.
I would greatly appreciate any suggestions on improving the precison of the FFT of my data using Origin. |
|
Deanna
China
Posts |
Posted - 10/27/2006 : 12:05:58 AM
|
Hi Gareth. You may want to know how some detail of the FFT tool in Origin 7.5. When the FFT dialog is opened, press F1. You will be able to see the Help document of this tool. Click on Discussion of FFT Tool Results. You will be able to see the following info:

As explained in the document, the frequency resolution is determined by two factors: 1) the number of data points, N; 2) The time separation between successive abscissas: .
If you want to improve the resolution by increase the number of data points, you can refer to this post: http://www.originlab.com/forum/topic.asp?TOPIC_ID=3381 In some cases, this will help.
You mentioned that you have tried to "make the sampling interval for the FFT smaller". That is actually changing the . A smaller will actually result in a 'worse' frequency resolution. Is this what you mean by "wrong frequencies"?
Since Origin assumes that the independent variable (X data set) is time (in seconds), I suggest that you change the time data to use seconds before doing the FFT. So that you don't have to rename the label of the output graph etc. Don't worry about too many data points, you can use the Set Column Values function. High-light the column that has the time data, then right-click with the mouse. From the pop-up menu, select Set Column Values. Enter the formula as follows:
 Click ok to close the dialog. The time data should be changed. Note: if the column is not Column A, please change the formula accordingly.
Deanna OriginLab Technical Services |
 |
|
Mike Buess
USA
3037 Posts |
Posted - 10/27/2006 : 10:08:20 AM
|
A brief discussion about padding discussed in Deanna's link: If your time data have 50k points your frequency data will have 64k points because the FFT tool will automatically pad to the next higher power of two. (See this link for the criteria the FFT tool uses to decide whether to pad or truncate.) Therefore, to double the FFT precision you need to add 64k + (64k - 50k) zeros to your time domain data.
If you have Origin 7.5 you can use a NAG FFT routine which does not require the number of data points to be a power-of-two. If you have Origin 7.0 you must make the changes discussed in this topic. Stating your Origin version at the top of each forum topic usually avoids much guesswork.
Mike Buess Origin WebRing Member
Edited by - Mike Buess on 10/27/2006 10:09:32 AM |
 |
|
|
Topic  |
|
|
|