Integrating Data points in matlab

19 views (last 30 days)
Kunal Tiwari
Kunal Tiwari on 19 Mar 2018
Edited: Torsten on 19 Mar 2018
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 Comment
Pawel Jastrzebski
Pawel Jastrzebski on 19 Mar 2018
Small off topic: you need only ONE 'hold on' to keep all of the plots in one figure.

Sign in to comment.

Answers (1)

Torsten
Torsten on 19 Mar 2018
plot(-4*cos(t/2)+4*cos(0/2));
  2 Comments
Kunal Tiwari
Kunal Tiwari on 19 Mar 2018
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 on 19 Mar 2018
Edited: Torsten on 19 Mar 2018
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

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!