03 - Ortogonális mátrixok

Döntsük el, hogy a következő mátrix lehet-e lehet-e ortonormált bázisok közti áttérés mátrixa, azaz ortogonális mátrix-e?

$$T=\left(\begin{array}{ccc}0.7288991255358142 & -0.4338837391175581 & -0.5295762133276873\\ -0.3335273011906018 & 0.4504844339512097 & -0.8281445007534446\\ 0.5978842732114963 & 0.7802619276224011 & 0.1836456374361667\\ \end{array}\right)$$

Végezzük el a bázistranszformációt az 1. feladatbeli $M_2$ mátrixon, és ellenőrizzük, hogy a spúrja és determinánsa megváltozott-e!

Segítségül a mátrixot listaformátumban megadtuk a következő cellában.

In [1]:
T=[[ 0.7288991255358142, -0.4338837391175581, -0.5295762133276873],
        [-0.3335273011906018,  0.4504844339512097, -0.8281445007534446],
        [ 0.5978842732114963,  0.7802619276224011,  0.1836456374361667]]

Megoldás

Először betöltjük a pylab csomagot.

In [2]:
%pylab inline
Populating the interactive namespace from numpy and matplotlib

Eztuán, létrehozzuk a $T$ mátrixot (mivel a T változónév már foglalt, Tm-nek nevezzük). Egy mátrixot akkor nevezünk ortogonálisnak, ha a transzponáltja megegyezik az inverzével, így az kell leellenőrizni, hogy a Tm mátrixot összeszorozva az inverzével, az egységmátrixot kapjuk-e.

In [3]:
Tm = matrix(T)
Tm*Tm.T
Out[3]:
matrix([[  1.00000000e+00,   5.55111512e-17,  -1.38777878e-17],
        [  5.55111512e-17,   1.00000000e+00,  -5.55111512e-17],
        [ -1.38777878e-17,  -5.55111512e-17,   1.00000000e+00]])

Mivel a diagonális elemek 1-ek, a többi pedig (kerekítési hibán belül) 0, ez az egységmátrix, vagyis a Tm mátrix valóban ortogonális.

Eután el kell végezni a bázistranszformációt. Ezt úgy tudjuk megtenni, ha az $M_2$ mátrixot két oldalról megszorozzuk a $T$ mátrixszal, és annak inverzével, ami jelen esetben nem más mint a transzponált:

In [4]:
M2 = matrix([[7,9,6],[9,3,0],[1,2,3]])
M2v = Tm*M2*Tm.T
print("det(M2) = {}; det(M2v) = {}".format(det(M2), det(M2v)))
print("Sp(M2) = {}; Sp(M2v) = {}".format(trace(M2), trace(M2v)))
det(M2) = -90.00000000000007; det(M2v) = -90.0
Sp(M2) = 13; Sp(M2v) = 13.000000000000002

Valóban nem változott sem a determináns, sem pedig a spúr.