Is it overflow?how can I input 2.5e-6?
3 views (last 30 days)
Show older comments
1 Comment
John D'Errico
on 24 Nov 2020
Edited: John D'Errico
on 24 Nov 2020
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.
Answers (1)
Ameer Hamza
on 24 Nov 2020
Edited: Ameer Hamza
on 24 Nov 2020
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 Comments
See Also
Categories
Find more on Data Type Conversion in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!