Integrating Data points in matlab

3 次查看(过去 30 天)
Kunal Tiwari
Kunal Tiwari 2018-3-19
编辑: Torsten 2018-3-19
I have a set of data points I want to integrate. The signal is force vs time. (ultimate aim is to get fourier series, but taking mini steps by learning to integrate first.) I thought of using,
cumtrapz(t,F) %t is time, F is force
To verify if this method is correct, I created a test signal,
t=0:0.01:25.6;
F=2*sin(0.5*t);
intF=cumtrapz(t,F);
I also found Integration of 2 sin(wt) using,
syms t
int(2*sin(0.5*t))
It came as, -2w cos(wt). After this I plotted all the three signals on one graph.
plot(F);
hold on
plot(intF);
hold on
plot(-4*cos(t/2));
I get the following result.
My question is how to get the correct integration result for numerical data.
  1 个评论
Pawel Jastrzebski
Pawel Jastrzebski 2018-3-19
Small off topic: you need only ONE 'hold on' to keep all of the plots in one figure.

请先登录,再进行评论。

回答(1 个)

Torsten
Torsten 2018-3-19
plot(-4*cos(t/2)+4*cos(0/2));
  2 个评论
Kunal Tiwari
Kunal Tiwari 2018-3-19
You misunderstood my question.
-4*cos(t/2)=int(2*sin(0.5*t)
I need some data integration function which will not add the bias.
Torsten
Torsten 2018-3-19
编辑:Torsten 2018-3-19
The numerical result for your integration data is correct, but not your analytical integral:
int(2*sin(0.5*t),0,x) = -4*cos(x/2)+4

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Calculus 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by