How can I recognize symbolic value with actual value 0?

1 回表示 (過去 30 日間)
Hansol Lee
Hansol Lee 2020 年 5 月 3 日
コメント済み: Hansol Lee 2020 年 5 月 3 日
I was making some calculation and got symbolic value of
ans =
3/2 - (73^(1/2)/4 - 7/4)*(73^(1/2)/4 + 7/4)
it was actually 0, but matlab didn't recognize it. I used double(syms), but the result was
ans =
-4.5278e-72
how can I make matlab recognize it as 0?

採用された回答

Walter Roberson
Walter Roberson 2020 年 5 月 3 日
simplify() the expression

その他の回答 (1 件)

Paresh yeole
Paresh yeole 2020 年 5 月 3 日
You need to specify custom tolerance.
if abs(ans) < 1e-10
ans = 0;
end
You can specify your own tolerance instead of 1e-10.

カテゴリ

Help Center および File ExchangeAssumptions についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by