Is it overflow?how can I input 2.5e-6?
3 次查看(过去 30 天)
显示 更早的评论
1 个评论
John D'Errico
2020-11-24
编辑:John D'Errico
2020-11-24
Moved answer by @Shaonong Wei into a comment.
If you want to add information to your question, then either edit your question or add a comment on your question.
回答(1 个)
Ameer Hamza
2020-11-24
编辑:Ameer Hamza
2020-11-24
This happens because of the way MATLAB parses the expression vpa(2.5e-6). First, MATLAB converts 2.5e-6 into a double datatype, and due to the finite precision of double(), you don't exactly get 2.5e-6. And only after that, MATLAB converts it to symbolic. In the second case, 2.5e-5 can be exactly represented, and thus, the problem does not occur. The workaround is to pass the 2.5e-6 as a char array
vpa('2.5e-6')
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!