How do I convert fractional display to decimal display ?
248 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am getting bunch of fractional values in my output matrix and I have other matrixes outputting the same way as this one. I cannot find a way to change it to decimal notation, something like 1.678.

0 commentaires
Réponse acceptée
Steven Lord
le 22 Mar 2021
Call double or vpa on your symbolic variable.
6 commentaires
Steven Lord
le 22 Mar 2021
two = sym(2);
sqrt2 = sqrt(two)
V = vpa(sqrt2)
D = double(sqrt2)
whos two sqrt2 V D
V, sqrt2, and two are all sym. So in the code below the line assigning to f(t) creates a symbolic function:
syms t
f(t) = V
D is a double. In the code below assigning to g(t) attempts to store D in element t of the array g.
g(t) = D
Compare:
qdd(t) = V % works
qdd(t) = D % errors
Plus de réponses (2)
Bjorn Gustavsson
le 22 Mar 2021
You might have set format to rat somewhere, perhaps in a startup.m or the like. You could get back to more normal decimal output by something like this:
format short g
For additional options check the help and documentation to format.
HTH
Voir également
Catégories
En savoir plus sur Conversion Between Symbolic and Numeric dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!