Error in using 'cumtrapz' for integration

3 views (last 30 days)
N Haq
N Haq on 10 Aug 2022
Edited: Matt J on 11 Aug 2022
Hello
I need to use 'cumtrapz' for a particular part of my project, but before that i am trying to understand how it works for multiple time cumulative integration. As a test, i was trying the following basic code:
ny = 101;
eta = linspace(-1,1,ny)';
f1 = sin(eta);
% Calculation of first cumulative integral
g1 = cumtrapz(eta,f1);
% Calculation of second cumulative integral
h1 = cumtrapz(eta,g1);
% Calculation of third cumulative intergal
k1 = cumtrapz(eta,h1);
We know that first integration of sinx is -cosx and then second intergration is -sinx.
So the value of g1 at each grid point must match {-cos(grid point) + cos(-1)}, Which it does.
But then the value of h1 at each grid point must match {-sin(grid point) + sin(-1)}, which it doesn't.
I was wondering why this happens.

Accepted Answer

Matt J
Matt J on 10 Aug 2022
Edited: Matt J on 10 Aug 2022
But next, value of h1 at each grid point must match {-sin(grid point value) - (-sin(-1))},
No, it will be -sin(x)+x*cos(-1) -( -sin(-1)-1*cos(-1))
  3 Comments
Matt J
Matt J on 10 Aug 2022
Edited: Matt J on 11 Aug 2022
What is the indefinite integral of f(x)=-cos(x)+c? It is g(x)=-sin(x)+c*x.
The definite integral from a to b is therefore,
g(b)-g(a) = (-sin(b)+c*b) - (-sin(a)+c*a)
Now, substitute in b=x and a=-1 and c=cos(-1).
N Haq
N Haq on 10 Aug 2022
Thank you Matt ! This really helped , i appreciate your time.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!