2012-06-29 6 views
0

Ceci est une question très stupide ... Je sais. Mais je ne peux vraiment pas comprendre comment implémenter la formule ci-jointe. Voici un exemple:Multiplication simultanée de trois matrices dans MATLAB

Pour les données d'entrée:

L_i = 

    0.1022   0   0 
     0 0.1656   0 
     0   0 2.7321 

et:

U_i = 

    0.7514 0.3104 0.5823 
    -0.6513 0.4901 0.5793 
    -0.1056 -0.8145 0.5704 

Comment obtenir les résultats suivants?

1,1 = (2.7321*(+0.7514)*(+0.7514) + 0.1656*(+0.3104)*(+0.3104) + 0.1022*(+0.5823)*(+0.5823)) 
1,2 = (2.7321*(+0.7514)*(-0.6513) + 0.1656*(+0.3104)*(+0.4901) + 0.1022*(+0.5823)*(+0.5793)) 
2,1 = (2.7321*(-0.6513)*(+0.7514) + 0.1656*(+0.4901)*(+0.3104) + 0.1022*(+0.5793)*(+0.5823)) 
... 

enter image description here

Répondre

1

Je crois que ce que vous cherchez est

A = U_i*diag(flipud(diag(L_i)))*U_i' 

Ensuite, les matrices L_i et U_i contiennent les eigenvalues and eigenvectors, respectivement, de A.