Integration of data with discrete values

3 次查看(过去 30 天)
I've amplitude-time data (discrete data) of a signal. I want to find the power of the signal using the algorithm in figure. I'm unable to do the Integration part. Can someone please help me?? (Data file attached)

采纳的回答

Star Strider
Star Strider 2017-2-5
This calculates the power using numerical integration, then integrates it. Either the cumtrapz or trapz call should work for you.
[D,S,R] = xlsread('data.xls');
Amplitude = D(1,:);
Time = D(2,:);
Power = Amplitude.^2; % Data Are Real, ‘abs’ Not Necessary
Cumulative_Integral = cumtrapz(Time, Power);
Total_Power = trapz(Time, Power);
  2 个评论
Athira Surendran
Athira Surendran 2017-2-6
Can u suggest any smoothing filters for the result obtained above?
Star Strider
Star Strider 2017-2-6
The ‘Power’ signal doesn’t seem to be noisy. I don’t know what you want to do with a ‘smoothing filter’. Two options I can suggest are the Savitizky-Golay filter (the sgolayfilt function) and the envelope function (also see the hilbert function). A lowpass filter is also an option, however the others are likely easier considering the nature of your signal.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Signal Generation and Preprocessing 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by