Laut Wolfram Alpha und dem Sage-Computeralgebrasystem gilt folgende Identität:
Als ich jedoch versuchte, es mit einem beliebigen Beispiel in NumPy zu verifizieren, bemerkte ich einen ziemlich großen Unterschied in den tatsächlichen Werten, die von beiden Seiten der Identität berechnet wurden. Ich habe den folgenden Code verwendet:
l1 = 10; l2 = 8; d = 17
from numpy import arctan2, cos, sin, sqrt
alpha = arctan2((l1-l2),d)
left = cos(alpha)
right = sqrt(1 + ((l1-l2)**2)/(d**2))
Die Auswertung der Ergebnisse für left
und right
der folgenden ergab:
left = 0.99315060432287616
right = 1.0
Es ist verlockend, dies einfach als numerischen Fehler abzuschreiben, aber da ich nur sehr wenig Erfahrung damit habe, wie groß numerische Fehler werden können, bin ich mir nicht so sicher. Ist das möglich oder fehlt mir etwas (offensichtliches)?
right
ist falsch eingegeben. es sollte seinright = 1/sqrt()
Wenn ich die Formeln in meinen Ti-89 eingebe, bekomme ich eine Übereinstimmung mit 12 Stellen bei 0,99315 ...