Why the trigonometry results are different
31 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Madhu
le 21 Août 2014
Réponse apportée : Peter Perkins
le 22 Août 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 commentaires
Réponse acceptée
Peter Perkins
le 22 Août 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 commentaires
Plus de réponses (3)
David Sanchez
le 21 Août 2014
The different result between tan(90) and tan(pi/2) is obvious.
1.6331e+16 might be considered equal to inf
0 commentaires
Iain
le 21 Août 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 commentaires
Adam
le 21 Août 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 commentaires
Voir également
Catégories
En savoir plus sur Function Creation dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!