Python Eigenvektoren: Unterschiede zwischen numpy.linalg, scipy.linalg und scipy.spärlich.linalg

Scipy und Numpy zwischen Ihnen drei unterschiedliche Funktionen für die Suche nach Eigenvektoren für eine gegebene quadratische matrix, diese sind:

  1. numpy.linalg.eig(a)
  2. scipy.linalg.eig(a), und
  3. scipy.spärlich.linalg.eig(A, k)

Speziell auf die situation, dass alle optionalen Argumente, die ich habe aufgehört, die letzten beiden sind Links auf Ihre Standardwerte und, dass a/A ist reellwertige, ich bin gespannt auf die Unterschiede zwischen diesen drei, die mehrdeutig sind aus der Dokumentation - vor allem:

  • Warum nicht (3) haben Sie einen Hinweis, dass es nicht finden können alle Eigenvektoren?
  • Warum muss die anderen beiden berechnen Sie alle Lösungen - warum nicht nehmen Sie eine k argument?
  • (1) hat eine Anmerkung zu sagen, dass die Eigenwerte zurückgegeben werden, in keiner bestimmten Reihenfolge; (3) hat ein optionales argument, das zur Steuerung der Reihenfolge. Hat (2) eine Garantie dazu?
  • Hat (3) davon ausgehen, dass A spärlich ist? (mathematisch gesprochen, anstatt vertreten als scipy sparse matrix) Kann es unwirtschaftlich sein, oder geben sogar falsche Ergebnisse, wenn diese Annahme nicht zu halten?
  • Gibt es andere Faktoren, die ich berücksichtigen sollten, wenn die Wahl zwischen diesen?
InformationsquelleAutor lvc | 2012-06-18
Schreibe einen Kommentar