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

1 visualizzazione (ultimi 30 giorni)
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.

Risposta accettata

Mischa Kim
Mischa Kim il 19 Apr 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

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by