Why the trigonometry results are different
21 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Madhu
am 21 Aug. 2014
Beantwortet: Peter Perkins
am 22 Aug. 2014
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
0 Kommentare
Akzeptierte Antwort
Peter Perkins
am 22 Aug. 2014
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.
0 Kommentare
Weitere Antworten (3)
David Sanchez
am 21 Aug. 2014
The different result between tan(90) and tan(pi/2) is obvious.
1.6331e+16 might be considered equal to inf
0 Kommentare
Iain
am 21 Aug. 2014
That's likely just the effect of small numerical errors.
After all, according to matlab,
1E300 + 1 - 1E300 = 0, and
1E300 - 1E300 + 1 = 1
0 Kommentare
Adam
am 21 Aug. 2014
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
0 Kommentare
Siehe auch
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!