フィルターのクリア

Why the trigonometry results are different

5 ビュー (過去 30 日間)
Madhu
Madhu 2014 年 8 月 21 日
回答済み: Peter Perkins 2014 年 8 月 22 日
Why there is a difference in the results. in degrees it is showing inf and in radians a different result?
>> a=tan(90)
a =
-1.9952
>> b=tand(90)
b =
Inf
>> c=tan(pi/2)
c =
1.6331e+16

採用された回答

Peter Perkins
Peter Perkins 2014 年 8 月 22 日
1.6331e+16 is the right answer. Remember that pi/ is irrational. There is no way to represent it in double precision. The tangent of the double precision value pi/2 evaluates to is 1.6331e+16. That's the main reason for the existence of tand -- 90 is exact.

その他の回答 (3 件)

David Sanchez
David Sanchez 2014 年 8 月 21 日
The different result between tan(90) and tan(pi/2) is obvious.
1.6331e+16 might be considered equal to inf

Iain
Iain 2014 年 8 月 21 日
That's likely just the effect of small numerical errors.
After all, according to matlab,
1E300 + 1 - 1E300 = 0, and
1E300 - 1E300 + 1 = 1

Adam
Adam 2014 年 8 月 21 日
tan is asymptotic at 90 degrees, but pi/2 will not evaluate to the precise equivalent with a numerical estimate of pi so its result will not be precisely on the asymptote

カテゴリ

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

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by