I have been doing the integral of f=(8*x-4)/(4*x^2-4*x+5) with matlab, however, it keeps giving the wrong answer, could you help me spot whether I did something wrong with my codes? Or is it a problem of matlab?
PS: the correct answer should be log(4*x^2−4*x+5)+c, but matlab keeps showing log(x^2 - x + 5/4) (yeah I know that matlab doesn't show "+c", but still, the answer is wrong).

 Akzeptierte Antwort

Star Strider
Star Strider am 1 Mär. 2020

0 Stimmen

It appears to be correct, simply simplified:
syms x
f = (8*x-4)/(4*x^2-4*x+5);
fint = int(f)
dfint = diff(fint)
figure
fplot(f, [-10 10])
hold on
fplot(dfint, [-10 10], '--')
hold off
The two plots are the same.

2 Kommentare

Graciano Ding
Graciano Ding am 1 Mär. 2020
Hmmm ok thank you so much
Star Strider
Star Strider am 1 Mär. 2020
My pleasure!
If my Answer helped you solve your problem, please Accept it!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 1 Mär. 2020

0 Stimmen

Log of something multiplied by 4 is equal to log 4 plus log of the something. log 4 is an additive constant and indefinite integrals can have arbitrary additive constants. Therefore both versions are correct.
MATLAB considers division (your proposed 5/4) to be more expensive than multiplication so it prefers the version without the division.

Community Treasure Hunt

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

Start Hunting!

Translated by