How can I simplify numerical calculations in symbolic math toolbox?
4 次查看(过去 30 天)
显示 更早的评论
Hi there,
When I write this:
fR == simplify((Alpha/uR)*((y/uR)^(Alpha-1))*exp(-(uS/y)^k))
I get something like this:
fR =
(12153*exp(-(10/y)^(601/100))*(y/20)^(11153/1000))/20000
Could you tell me please how to simplify the numerical calculations?! I mean I want the term "(11153/1000))/20000" be printed as "0.000557".
Thanks
0 个评论
采纳的回答
Star Strider
2015-10-16
Use the vpa function. (If you want to solve an equation and avoid fractions, use the vpasolve function.)
3 个评论
Star Strider
2015-10-16
Actually, that’s essentially what you want. It’s just expressing the decimal fractions literally instead of as decimals. However, I’m not quite certain why it’s rendering, for instance, (11153/1000) as a fraction and not as 11.153. Maybe close enough is good enough for vpa. (I get the same result as you do.)
Walter Roberson
2015-10-16
Exponents are not converted to floating point because a floating point exponent means something different than a rational exponent. With rational exponents you need to worry about multiple roots and principle roots, but with floating point exponent the operation x^(a/b) is defined strictly in terms of exp(a/b * log(x)) which is a single value that is complex in cases where algebraic x^(a/b) might be real-valued.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Symbolic Math Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!