Forcing matlab to simplify symbolic expression

How do I get matlab to simplify this answer in the script?
c = 3e8;
h = 6.626e-34;
k = 1.38e-23;
syms l T
eqn = exp((h*c)/(l * k * T)) * (((h*c)/(l * k * T)) -5) + 5 == 0;
lmax = solve(eqn, l)
lmax =
2886030032919217/(200358257643048576*T*(lambertw(0, -5*exp(-5)) + 5))
I can take out the symbolic variable "T" within the lmax answer and matlab easily calculates a simple answer. What gives?

 Réponse acceptée

Use the vpa function:
lmax = vpa(solve(eqn, l))
produces:
lmax =
0.0029011110628620153129357555503486/T
It is not possible to use vpasolve in this expression. The vpa function must be called separately.

2 commentaires

noMathWiz
noMathWiz le 7 Mai 2020
Thank you!
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by