FINDING FREQUENCY AND AMPLITUDE OF A SINUSOID FROM DATA POINTS.

56 ビュー (過去 30 日間)
ARAVINDHAN RAMESH
ARAVINDHAN RAMESH 2014 年 5 月 27 日
コメント済み: rifat 2014 年 5 月 27 日
Hello,
I have a text file with two columns: One with the time instant and the other with the corresponding velocity of a sound wave at a particular point at that instant. I know that the wave is a sinusoid (After plotting).
How can I find the exact frequency and amplitude of the wave? Is there a function in MATLAB?
Thanks in advance.

回答 (1 件)

rifat
rifat 2014 年 5 月 27 日
len=length(signal);
fs=50 % assuming you know the sampling frequency of your signal
n=0:len-1;
N=n*fs/(len-1); % convert x-axis in actual frequency
y=fft(signal);
plot(N,abs(y));
from the plot you can determine the frequency peak. I do not know any function for amplitude estimation. If the signal relatively low noisy, then (max(signal)-min(signal))/2 should give a rough estimate
  2 件のコメント
ARAVINDHAN RAMESH
ARAVINDHAN RAMESH 2014 年 5 月 27 日
編集済み: ARAVINDHAN RAMESH 2014 年 5 月 27 日
Is signal the vector containing the values of velocity of the wave at each time instant?
If yes, then how is len different from fs? fs is left for us to choose? (I do not not know the sampling frequency!)
rifat
rifat 2014 年 5 月 27 日
yes.. it is velocity.. fs is sampling frequency..

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeAudio I/O and Waveform Generation についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by