How to explain a difference in solutions of integrals between MATLAB and MAPLE?

1 vue (au cours des 30 derniers jours)
Dear community,
after solving an integral via MAPLE 2022 (see the solution in blue),
I tried to reproduce the calculation in MATLAB R2021b as a numerical and symbolic expression:
%% integral: numerical expression
%empirical coefficents
vrel = 0.000018;
alpha = 0.08;
beta = -6.75;
h =1;
d =1;
fun = @(theta) (alpha*beta*cos(theta).^4).*(pi*d-8*beta*vrel*cos(theta).^2).^(-2);
F = integral(fun,0,pi/2)
F = -0.0322
%% integral: symbolic expression
%system parameters
syms theta alpha beta d vrel
fun = (alpha*beta*cos(theta).^4).*(pi*d-8*beta*vrel*cos(theta).^2).^(-2);
%substiution of empirical coefficents
fsub = subs(fun,{alpha, beta, d, vrel}, {0.0814,-6.75,1,0.000018});
f = int(fsub,theta,0,pi/2);
%evaluation for complex number
c = subs(f, 1+i);
F = double(c)
F = -0.0328
However, the solution between MATLAB and MAPLE differs by 8 magnitudes. My colleauge and me double-checked for typos but couldn't figure out any. I verified the result from MAPLE via comparison to a simplfied solution for the integral.
I am curious to learn about my mistake(s) when adapting the integral into MATLAB!
  3 commentaires
Bjorn Gustavsson
Bjorn Gustavsson le 10 Nov 2022
After following @Jiri Hajek's suggestion one gets a smoothly varying curve starting at approximately -0.054 at theta=0 that aproaches zero at pi/2. This curve is everywhere in this interval 0<theta<=1 under the line y = -0.05 + 0.05*x. Therefore the integral has to have a smaller value than the area of the triangle with corners at [0,0], [0,-0.05] and [1,0] which should be -0.05*1/2 or -0.025.

Connectez-vous pour commenter.

Réponse acceptée

Jiri Hajek
Jiri Hajek le 10 Nov 2022
Nicely done graphs! So, just by looking at the graphs, it is clear that:
  • The integral of your function is a negative value, with lower limit on the value being the area of the graph, i.e. about 1,6x(-0,05)= - 0,08
  • Comparing your original results from MATLAB with the above, it seems that both provide good estimates, although it remains to see which one is more precise
  • The MAPLE result is a complete nonsense, 8 orders of magnitude off the target.You have to search for error in your MAPLE implementation, not in MATLAB.
  1 commentaire
Tim Hammer
Tim Hammer le 10 Nov 2022
I will try to figure out why my maple solution is incorrect - but this does not belong here.
Thanks Jiri!

Connectez-vous pour commenter.

Plus de réponses (2)

Torsten le 10 Nov 2022

Alan Stevens
Alan Stevens le 10 Nov 2022
This is what I get in Maple:

Community Treasure Hunt

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

Start Hunting!

Translated by