finding time domain of an excel FFT data
8 次查看(过去 30 天)
显示 更早的评论
Amirhossein Fathi
2023-6-16
编辑: Shaik mohammed ghouse basha
2023-6-16
I have an Excel file of a signal FFT including frequency, amplitude and phase.
How can I find the Time domain (Time series) of this signal?

0 个评论
采纳的回答
Shaik mohammed ghouse basha
2023-6-16
编辑:Shaik mohammed ghouse basha
2023-6-16
I understand that you have an exceel sheet which has Amplitude and Phase of set of frequency components and from this frequency data you want to get the time series data of the signal.
I took first 10 samples and tried at my end. This code works fine:
T = readtable('FrequencyData.xlsx'); %read the excel file as a table of data
numSamples = size(T,1); %returns number of rows i.e. number of differency frequencies
frequencyCoefficients = [numSamples]; %Convert polar form of each frequency component into complex number notation
for i=1:numSamples %iterate over each frequency sample
amp = table2array(T(i,2)); %access amplitude and angle of a particular frequency
ang = table2array(T(i,3)); %T(i,j) of a table returns data type table so type cast it into array for using it as a number
frequencyCoefficients(i) = amp*cos(ang) + 1i*amp*sin(ang); %A costheta + j A sintheta notation
end
%Now you have all frequency Coefficients, so apply inverse fast fourier
%transform function on this data to get time series plot.
timeSeries = ifft(frequencyCoefficients, numSamples)
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!