Ich verwende Matrix-Klasse in Ruby, um Eigenwerte und Eigenvektoren zu berechnen. Mit diesem Code:Ist das ein Ruby's Bug in der Klasse Matrix?
m = Matrix[[0.6868,0.6067],[0.6067,0.5978]]
v, d, v_inv = m.eigensystem
das sollte richtige Ergebnis sein:
[ 1.25057433 0.03398123]
[[ 0.73251454 -0.68075138]
[ 0.68075138 0.73251454]]
, die ich bestätigte mit numpy
Python.
Allerdings habe ich das Ergebnis unter:
d=[[0.033970204576497576, 0],
[0, 1.2506297954235022]]
v=[[0.6807528514962294, 0.7325131774785713],
[-0.7325131774785713, 0.6807528514962294]]
Ist das ein Fehler des Rubin? Mein Rubys Version unter:
ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-linux]
Vielen Dank für Ihre Antwort. Und könnten Sie mir sagen, warum ist Ruby besser als Python/Numpy auf diese Frage Ihrer Meinung nach? – Ireul
Wie ich in der Zusammenfassung schrieb, vertraue ich [Tag: r] mehr als sowohl [Tag: Ruby] und [Tag: Python], wenn es um Mathe geht. Und das Ruby-Ergebnis ist dasselbe wie das, das mit R ausgegeben wurde, während das von Python nicht ist. – mudasobwa
OK, ich habe es. Danke ^^ – Ireul