How to do integral for data
Show older comments
How can I find y, if I know dy/dx from 0 to 1 ?
Since we know the integral of sinx is -cosx, I trie to use cumtrapz, but I cannot get correct line.
Here are my code. Can I have any hints for this? Thank you.
clear all;close all;clc
dt=0.1;
x=0:dt:2*pi;
y1=sin(x);
y2=-cos(x);
figure
subplot(211)
plot(x,y1,x,y2);grid on
legend('sinx','interal : -cosx')
dy1=cumtrapz(x,y1);
subplot(212)
plot(x,y1);hold on
plot(x,dy1);grid on
title('using cumtrapz')

Answers (1)
William
on 7 Jan 2021
0 votes
I have two comments:
- A more correct statement about the integral is that the integral of sin(x) is equal to C-cos(x), where C is a constant of integration. So, the most you can hope for is that your result is different from -cos(x) by a constant amount.
- Your program is comparing dy1 to y1. It should be comparing dy1 to y2. In that case, you will find that the graphs are the same, except for a constant displacement.
1 Comment
Zhaokai Yin
on 8 Jan 2021
Categories
Find more on Numerical Integration and Differentiation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!