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

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.

 採用された回答

Mischa Kim
Mischa Kim 2015 年 4 月 19 日

1 投票

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by