Sto cercando di risolvere un problema del tipo: dove Aw = xBw
x
è uno scalare (autovalore), w
è un autovettore e A
e B
sono simmetriche, matrici NumPy quadrati di uguale dimensione. Dovrei essere in grado di trovare coppie d
x/w se A
e B
sono d x d
. Come risolverei questo in numpy? Stavo guardando i documenti di Scipy e non trovavo nulla di simile a ciò che volevo.Numpy: Generalized autovalori Problema
risposta
Sembra necessario scipy.linalg.eigh()
per risolvere questo generalizzato problema agli autovalori:
from scipy.linalg import eigh
eigvals, eigvecs = eigh(A, B, eigvals_only=False)
Vedrete che eigvecs
è un complesso ndarray
, quindi forse è necessario utilizzare eigvecs.real
...
nello stesso modulo hai eigvalsh()
che probabilmente eseguire più veloce per il vostro caso, ma non restituisce gli autovettori.
Grazie per averlo chiarito! L'esempio dei documenti relativi a questa funzione non era chiaro a prima vista. –
Hai visto scipy.linalg.eig
? Dalla documentation:
risolvere un ordinario o generalizzate problema autovalore di una matrice quadrata.
Questo metodo ha parametro opzionale b
:
scipy.linalg.eig(a, b=None, ...
b : (M, M) array_like, optional Right-hand side matrix in a generalized eigenvalue problem. Default is None, identity matrix is assumed.
Il problema nell'OP è 'Aw = xBw'. – emeth
quindi, qual è il problema? 'scipy.linalg.eig (a, b = None, ...': parametro b: _Matrice lato destro in un problema di autovalore generalizzato: l'impostazione predefinita è Nessuno, si assume la matrice identità._ – RomanHotsiy
Hey grazie. ma ho saltato la parte B. –
- 1. autovalori di ordinamento di tipo numpy python
- 2. Problema di moltiplicazione del trasporto di Numpy
- 3. Generalized Hough Transform e OpenCv
- 4. GSL autovalori ordinare
- 5. Autovalori in MATLAB
- 6. Autovalori sparsi utilizzando eigen3/sparse
- 7. Il modo più veloce per calcolare k autovalori e autovettori corrispondenti con numpy
- 8. Numpy, problema con i long array
- 9. Il problema di assegnazione, una funzione numpy?
- 10. Autovalori di precisione quadrupla, autovettori e logaritmi a matrice
- 11. scipy eigh fornisce autovalori negativi per matrice semidefinita positiva
- 12. NumPy: array problema quando si utilizza l'assegnazione DTYPE personalizzato
- 13. Quanto è costoso calcolare gli autovalori di una matrice?
- 14. come implementare il calcolo degli autovalori con MapReduce/Hadoop?
- 15. scipy.linalg.eig restituiscono autovalori complessi per la matrice di covarianza?
- 16. Differenza tra Numpy e Numpy-MKL?
- 17. risultati erratici per eigendecompositions numpy/scipy
- 18. Valore medio numpy errato?
- 19. python3-numpy: aggiunta a un file con numpy savetxt
- 20. Installazione numpy
- 21. dimensioni NumPy
- 22. Matrici di oggetti Numpy
- 23. Come posso aggiornare Numpy?
- 24. - vs - = operatori con numpy
- 25. Serie tridimensionale in numpy
- 26. Scarse prestazioni per il calcolo di autovalori e autovettori su GPU
- 27. Calcolo di valori autovalori di matrici sparse molto grandi in python
- 28. cross-correlazione numpy - vettorizzazione
- 29. Impossibile rimodellare l'array numpy
- 30. Numpy per utente R?
Controlla http://stackoverflow.com/questions/12672408/generalized-eigenvectors-in-matlab – emeth
Questo è esattamente ciò che voglio fare, ma in python. –