Der schnellste Weg, um k größte Eigenwerte und entsprechende Eigenvektoren mit numpy zu berechnen

Ich habe eine große NxN dichte symmetrische Matrix und möchte, dass die Eigenvektoren den k größten Eigenwerten entsprechen. Was ist der beste Weg, um sie zu finden (vorzugsweise mit Numpy, aber vielleicht im Allgemeinen mit Blas / Atlas / Lapack, wenn dies der einzige Weg ist)? Im Allgemeinen ist N viel viel größer als k (sagen wir N> 5000, k <10).

Numpy scheint nur Funktionen zum Finden der k größten Eigenwerte zu haben, wenn meine Startmatrix dünn ist.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage