2011-05-07 2 views
0

Jematrice Python EIG

k=linalg.eig(Ki) 

où Ki par exemple est:

[[ 1.84026465 -0.463138 ] 
[-0.463138 3.83931947]] 

et le résultat k est:

(array([ 1.73817877, 3.94140535]), array([[-0.97655787, 0.21525501], 
     [-0.21525501, -0.97655787]])) 

comment afficher puis-je juste la plus grande valeur de k (Je ne sais pas pourquoi y a-t-il 2 array, si je calcule à la main seulement le premier tableau est le résultat ..)? Je cherche quelque chose comme max (k) ... quelqu'un sait?

+0

Les deux tableaux correspondent aux valeurs propres (premier tableau) et aux vecteurs propres (deuxième tableau). Êtes-vous après la plus grande valeur propre? –

+0

Je pense que c'est l'inverse, Simon. Il y a deux valeurs propres et deux vecteurs propres 1x2. Sinon, vous êtes sur place. – duffymo

Répondre

5

linalg.eig renvoie deux tableaux, d'abord les valeurs propres, puis les vecteurs propres.

Si vous voulez que le maximimum valeur propre, puis

vals,vecs=linalg.eig(Ki) 
max_eigenvalue = vals.max() 
+0

Merci pour cette obligation! Problème résolu :) – thaking