Info

此问题已关闭。 请重新打开它进行编辑或回答。

solve false answer with a exponential equation

1 次查看(过去 30 天)
hello i am trying to solve an equation and each time that i try to solve it with the matlab it keeps giving me a false value it doenst give any error or anything... here is the code
syms x
Cf=1;
C_0=10;
M=1.1*1350;
m=155;
thao=M/m;
C=C_0*exp(-x/thao)-Cf;
solve(C,x)
and it keeps giving me the
ans=(297*log(10))/31 %log(10)=1 so, 297/37 that it is aprox 9.56 when the real value is 22.06 aprox
obviusly false. i couldnt find any error or problem in the code. anyone had the same problem?

回答(1 个)

Walter Roberson
Walter Roberson 2016-10-12
log(10) is not 1. log() is natural log. The calculation gives the value you expect. Use vpa() or double() to see the decimal equivalent.
  2 个评论
franco otaola
franco otaola 2016-10-12
thanks, it is really bizarre that it use log() for ln()... i wouldnt expect that...
Walter Roberson
Walter Roberson 2016-10-12
I looked around a few months ago, and I could not find any programming language which used ln() for natural log. All of the major languages I checked used log()

此问题已关闭。

Community Treasure Hunt

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

Start Hunting!

Translated by