How are you doing the integration? What EXACTLY did you do?
For example, if you used cumtrapz to integrate a sine wave, it will under-estimate the integral. As well, remember that there is that constant of integration in there, something that cumtrapz knows nothing of.
So the integral of sin(t) is -cos(t)+c, where c is a constant of integration.
t = linspace(0,2*pi,11);
x = sin(t);
xint = cumtrapz(t,x);
plot(t,xint)
grid on
So, we see an offset cosine wave, with an amplitude a bit low, because trapezoidal rule will always produce a biased estimate for a sine wave (biased towards zero). So the amplitude looks wrong.
Or, does your function have some noise in it? Again, you cannot expect an exact result.