How can I simplify numerical calculations in symbolic math toolbox?

5 views (last 30 days)
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

Accepted Answer

Star Strider
Star Strider on 16 Oct 2015
Use the vpa function. (If you want to solve an equation and avoid fractions, use the vpasolve function.)
  3 Comments
Star Strider
Star Strider on 16 Oct 2015
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
Walter Roberson on 16 Oct 2015
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.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!