How do I convert fractional display to decimal display ?
264 次查看(过去 30 天)
显示 更早的评论
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.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/558492/image.png)
0 个评论
采纳的回答
Steven Lord
2021-3-22
Call double or vpa on your symbolic variable.
6 个评论
Steven Lord
2021-3-22
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
更多回答(1 个)
Bjorn Gustavsson
2021-3-22
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
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Numbers and Precision 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!