Orthogonal Diagonalization

 

Selected Homework 10 Answers,  Exercise 4.

`Exercise 4.  Eigenvalue, eigenvector analysis of `*A*`:`

A = matrix([[3, 1, 0, 0], [1, 3, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]), `  `*(A-I*lambda) = matrix([[3-lambda, 1, 0, 0], [1, 3-lambda, 0, 0], [0, 0, -lambda, 0], [0, 0, 0, -lambda]])

det(A-I*lambda)*` = `*lambda^2*(lambda-2)*(lambda-4) = 0

evecsAval1 = 0

evecsAmul1 = 2

evecsAvec1 = vector([0, 0, 0, 1])

evecsAvec12 = vector([0, 0, 1, 0])

lambda = 0

A-I*lambda = matrix([[3, 1, 0, 0], [1, 3, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]])

matrix([[3, 1, 0, 0], [1, 3, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]])*matrix([[a], [b], [c], [d]]) = matrix([[0], [0], [0], [0]])

matrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]])*matrix([[a], [b], [c], [d]]) = matrix([[0], [0], [0], [0]])

matrix([[a], [b], [0], [0]]) = matrix([[0], [0], [0], [0]])

v[1] = matrix([[0], [0], [0], [1]]), v[2] = matrix([[0], [0], [1], [0]])

evecsAval2 = 2

evecsAmul2 = 1

evecsAvec2 = vector([-1, 1, 0, 0])

lambda = 2

A-I*lambda = matrix([[1, 1, 0, 0], [1, 1, 0, 0], [0, 0, -2, 0], [0, 0, 0, -2]])

matrix([[1, 1, 0, 0], [1, 1, 0, 0], [0, 0, -2, 0], [0, 0, 0, -2]])*matrix([[a], [b], [c], [d]]) = matrix([[0], [0], [0], [0]])

matrix([[1, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1], [0, 0, 0, 0]])*matrix([[a], [b], [c], [d]]) = matrix([[0], [0], [0], [0]])

matrix([[a+b], [c], [d], [0]]) = matrix([[0], [0], [0], [0]])

v[3] = matrix([[-1], [1], [0], [0]])

evecsAval3 = 4

evecsAmul3 = 1

evecsAvec3 = vector([1, 1, 0, 0])

lambda = 4

A-I*lambda = matrix([[-1, 1, 0, 0], [1, -1, 0, 0], [0, 0, -4, 0], [0, 0, 0, -4]])

matrix([[-1, 1, 0, 0], [1, -1, 0, 0], [0, 0, -4, 0], [0, 0, 0, -4]])*matrix([[a], [b], [c], [d]]) = matrix([[0], [0], [0], [0]])

matrix([[1, -1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1], [0, 0, 0, 0]])*matrix([[a], [b], [c], [d]]) = matrix([[0], [0], [0], [0]])

matrix([[a-b], [c], [d], [0]]) = matrix([[0], [0], [0], [0]])

v[4] = matrix([[1], [1], [0], [0]])

`A is diagonalizable using the eigenvectors of `*A*` to construct P:`

v[1] = matrix([[0], [0], [0], [1]]), v[2] = matrix([[0], [0], [1], [0]]), v[3] = matrix([[-1], [1], [0], [0]]), v[4] = matrix([[1], [1], [0], [0]])

P = matrix([[0, 0, -1, 1], [0, 0, 1, 1], [0, 1, 0, 0], [1, 0, 0, 0]]), P^`-1` = matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2, 1/2, 0, 0], [1/2, 1/2, 0, 0]])

P^`-1`*P*` = `*matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2, 1/2, 0, 0], [1/2, 1/2, 0, 0]])*matrix([[0, 0, -1, 1], [0, 0, 1, 1], [0, 1, 0, 0], [1, 0, 0, 0]]) = matrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1...

P^`-1`*A*P*` = `*matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2, 1/2, 0, 0], [1/2, 1/2, 0, 0]])*matrix([[3, 1, 0, 0], [1, 3, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]])*matrix([[0, 0, -1, 1], [0, 0, 1, 1], [0, 1, 0...

`A is diagonalizable using the eigenvectors of `*A*` to construct P:`

v[1] = matrix([[0], [0], [0], [1]]), v[2] = matrix([[0], [0], [1], [0]]), v[3] = matrix([[-1], [1], [0], [0]]), v[4] = matrix([[1], [1], [0], [0]])

P = matrix([[0, 0, -1, 1], [0, 0, 1, 1], [0, 1, 0, 0], [1, 0, 0, 0]]), P^`-1` = matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2, 1/2, 0, 0], [1/2, 1/2, 0, 0]])

P^`-1`*P*` = `*matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2, 1/2, 0, 0], [1/2, 1/2, 0, 0]])*matrix([[0, 0, -1, 1], [0, 0, 1, 1], [0, 1, 0, 0], [1, 0, 0, 0]]) = matrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1...

P^`-1`*A*P*` = `*matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2, 1/2, 0, 0], [1/2, 1/2, 0, 0]])*matrix([[3, 1, 0, 0], [1, 3, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]])*matrix([[0, 0, -1, 1], [0, 0, 1, 1], [0, 1, 0...

``

`Now find an orthogonal matrix Q that orthogonally diagonalizes A.`

`Begin with the four eigenvectors of A and convert to an orthonormal set: `

v[1] = vector([0, 0, 0, 1])

v[2] = vector([0, 0, 1, 0])

v[3] = vector([-1, 1, 0, 0])

v[4] = vector([1, 1, 0, 0])

`Apply Gram-Schmidt Process to these four vectors: `

w[1] = v[1]

w[2] = v[2]-`(`*v[2]*` dot`*` w`[1]*`)`/` ||`/w[1]/`||`^2*`w `[1]

w[3] = v[3]-`(`*v[3]*` dot`*` w`[1]*`)`/` ||`/w[1]/`||`^2*`w `[1]-`(`*v[3]*` dot`*` w`[2]*`)`/` ||`/w[2]/`||`^2*`w `[2]

w[4] = v[4]-`(`*v[4]*` dot`*` w`[1]*`)`/` ||`/w[1]/`||`^2*`w `[1]-`(`*v[4]*` dot`*` w`[2]*`)`/` ||`/w[2]/`||`^2*`w `[2]-`(`*v[4]*` dot`*` w`[3]*`)`/` ||`/w[3]/`||`^2*`w `[3]

w[1] = vector([0, 0, 0, 1])

w[2] = vector([0, 0, 1, 0])-`(`*vector([0, 0, 1, 0])*` dot`*vector([0, 0, 0, 1])*`)`/` ||`/vector([0, 0, 0, 1])/`||`^2*vector([0, 0, 0, 1])

w[3] = vector([-1, 1, 0, 0])-`(`*vector([-1, 1, 0, 0])*` dot`*vector([0, 0, 0, 1])*`)`/` ||`/vector([0, 0, 0, 1])/`||`^2*vector([0, 0, 0, 1])-`(`*vector([-1, 1, 0, 0])*` dot`*vector([0, 0, 1, 0])*`)`/`...

w[4] = (vector([1, 1, 0, 0])-`(`*vector([1, 1, 0, 0])*` dot`*vector([0, 0, 0, 1])*`)`/` ||`/vector([0, 0, 0, 1])/`||`^2*vector([0, 0, 0, 1])-`(`*vector([1, 1, 0, 0])*` dot`*vector([0, 0, 1, 0])*`)`/` |...
w[4] = (vector([1, 1, 0, 0])-`(`*vector([1, 1, 0, 0])*` dot`*vector([0, 0, 0, 1])*`)`/` ||`/vector([0, 0, 0, 1])/`||`^2*vector([0, 0, 0, 1])-`(`*vector([1, 1, 0, 0])*` dot`*vector([0, 0, 1, 0])*`)`/` |...

`Obtain a basis of four orthogonal vectors: `

w[1] = vector([0, 0, 0, 1])

w[2] = vector([0, 0, 1, 0])

w[3] = vector([-1, 1, 0, 0])

w[4] = vector([1, 1, 0, 0])

`Obtain an orthonormal basis of four orthogonal unit vectors: `

u[1] = 1/` ||`/w[1]/`||`*` w`[1], `   ||`*w[1]*`||` = 1

u[2] = 1/` ||`/w[2]/`||`*` w`[2], `   ||`*w[2]*`||` = 1

u[3] = 1/` ||`/w[3]/`||`*` w`[3], `   ||`*w[3]*`||` = 2^(1/2)

u[4] = 1/` ||`/w[4]/`||`*` w`[4], `   ||`*w[4]*`||` = 2^(1/2)

u[1] = matrix([[0], [0], [0], [1]]), u[2] = matrix([[0], [0], [1], [0]]), u[3] = matrix([[-1/2*2^(1/2)], [1/2*2^(1/2)], [0], [0]]), u[4] = matrix([[1/2*2^(1/2)], [1/2*2^(1/2)], [0], [0]])

`Use these orthonormal column vectors to construct Q:`

Q = matrix([[0, 0, -1/2*2^(1/2), 1/2*2^(1/2)], [0, 0, 1/2*2^(1/2), 1/2*2^(1/2)], [0, 1, 0, 0], [1, 0, 0, 0]]), Q^`-1` = matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2*2^(1/2), 1/2*2^(1/2), 0, 0], [1/2*2^(1/...

Q^`-1`*Q*` = `*matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2*2^(1/2), 1/2*2^(1/2), 0, 0], [1/2*2^(1/2), 1/2*2^(1/2), 0, 0]])*matrix([[0, 0, -1/2*2^(1/2), 1/2*2^(1/2)], [0, 0, 1/2*2^(1/2), 1/2*2^(1/2)], [0,...

Q^`-1`*A*Q*` = `*matrix([[0, 0, 0, 1], [0, 0, 1, 0], [-1/2*2^(1/2), 1/2*2^(1/2), 0, 0], [1/2*2^(1/2), 1/2*2^(1/2), 0, 0]])*matrix([[3, 1, 0, 0], [1, 3, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]])*matrix([[0, 0...

`So, the symmetric matrix A is orthogonally diagonalizable using the orthogonal matrix Q.`