Perhaps a bug in matlab?

1 view (last 30 days)
Mohammad Shojaei Arani
Mohammad Shojaei Arani on 23 Jan 2022
Edited: Walter Roberson on 23 Jan 2022
Hello friends!
I think I have encountered a bad issue about matlab, perhaps it is a bug. Consider the following commands
>> syms x x0 a b
>> f=int(1/(a+b*x),x)
f =log(a + b*x)/b
but now, trhe following command does not give me the result it should (it feels as if matlab is unable to solve this easy integration)
>> f=int(1/(a+b*x),x,x0,x)
f =int(1/(a + b*x), x, x0, x)
and I have to fix this by the command f=int(1/(a+b*x),x);f=f-subs(f,x,x0). Note that, in some other cases matlab does the job correctly, for instance:
f=int(sin(x),x,x0,x)
f =cos(x0) - cos(x)
It took a rather long time for me to understand why my code (not these stuff. I am talking about a very big code where these stuff were just a tiny part of it) does not produce the result it must produce.
I hope matlab developers really correct such bugs! Very annoying part is that matlab is not free and has such problems!!!

Answers (1)

Walter Roberson
Walter Roberson on 23 Jan 2022
Edited: Walter Roberson on 23 Jan 2022
It is correct that it should not be giving you the solution. Your equations do not account for the possibility that you might be integrating through a discontinuity.
syms x x0 a b real
f = int(1/(a+b*x), x, x0, x, 'ignoreanalytic', true)
f = 

Categories

Find more on Loops and Conditional Statements 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!