How does 'subs' in MATLAB work with negative large fractional number?

1 vue (au cours des 30 derniers jours)
syms x y A A=x^2*y; subs(A,{x y},{4 2e-8})
ans =
3022314549036573/9444732965739290427392 ----- wrong result!!!
syms x y A A=x^2*y; subs(A,{x y},{4 2e8})
ans =
3200000000 ------ correct result!!
How do I resolve this type of problem? Please help.

Réponse acceptée

Mischa Kim
Mischa Kim le 19 Avr 2015
Rahul, the first result is correct as well. MATLAB simply outputted the result as a fraction. Use
double(subs(A,{x y},{4 2e-8}))
ans =
3.200000000000000e-07
which is the same as
3022314549036573/9444732965739290427392
ans =
3.200000000000000e-07

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by