MATLAB para H-´
Algebra Linear II
Melissa Weber Mendon¸ca1
1Universidade Federal de Santa Catarina
2011.2
Lembrando...
>> v = [1 2 3] >> size(v) >> w = [1;2;3] >> size(w) >> u = [10 20 11]’ >> size(u) >> A = [5 2 3;3 8 9;1 6 4] >> size(A)Resolu¸c˜
ao de Sistemas Lineares com MATLAB
Se quisermos encontrar x ∈ Rntal que Ax = b com A ∈ Rn×n e b ∈ Rn, ent˜ao fazemos
>> x = inv(A)*b
>> x = A\b
Sistemas Retangulares
Se A = LU, Ax = b ⇔ LUx = b, e assim:
>> [L,U] = lu(A)
>> y = L\b
>> x = U\y ou ainda:
>> x = U\(L\b)
Sistemas Retangulares
Se A = LU, Ax = b ⇔ LUx = b, e assim:
>> [L,U] = lu(A) >> y = L\b >> x = U\y ou ainda: >> x = U\(L\b) Exemplo: 1 2 0 1 0 1 1 0 1 2 0 1 x1 x2 x3 x4 = 1 5 1
Sistemas Retangulares
Se A = LU, Ax = b ⇔ LUx = b, e assim:
>> [L,U] = lu(A) >> y = L\b >> x = U\y ou ainda: >> x = U\(L\b) Exemplo: 1 2 0 1 0 1 1 0 1 2 0 1 x1 x2 x3 x4 = 1 5 5
Imagem de uma matriz
Quando usamos o comando
>> B = orth(A)
obtemos uma base ortonormal para o espa¸co coluna (imagem) de A, ou seja,
span(B) = span(A)
Imagem de uma matriz
Quando usamos o comando
>> B = orth(A)
obtemos uma base ortonormal para o espa¸co coluna (imagem) de A, ou seja,
span(B) = span(A)
>> size(B)
Espa¸co nulo de uma matriz
Quando usamos o comando
>> Z = null(A)
obtemos uma base ortonormal para o espa¸co nulo de A.
Espa¸co nulo de uma matriz
Quando usamos o comando
>> Z = null(A)
obtemos uma base ortonormal para o espa¸co nulo de A.
>> A*Z
Espa¸co nulo de uma matriz
Quando usamos o comando
>> Z = null(A)
obtemos uma base ortonormal para o espa¸co nulo de A.
>> A*Z
>> size(Z)
Espa¸co nulo de uma matriz
Quando usamos o comando
>> Z = null(A)
obtemos uma base ortonormal para o espa¸co nulo de A.
>> A*Z
>> size(Z)
>> Z’*Z
Posto de uma matriz
Para calcularmos o posto de uma matriz, usamos o comando
>> rank(A)
Calcular o produto interno entre dois vetores
Para calcular o produto interno entre dois vetores, basta fazermos:
>> v = [1;0;0]
>> u = [0;1;0]
Calcular o produto interno entre dois vetores
Para calcular o produto interno entre dois vetores, basta fazermos:
>> v = [1;0;0]
>> u = [0;1;0]
>> u’*v
Calcular o produto interno entre dois vetores
Para calcular o produto interno entre dois vetores, basta fazermos:
>> v = [1;0;0]
>> u = [0;1;0]
>> u’*v
>> v’*u
Calcular o produto interno entre dois vetores
Para calcular o produto interno entre dois vetores, basta fazermos:
>> v = [1;0;0]
>> u = [0;1;0]
>> u’*v
>> v’*u
>> u’*u
Norma de um vetor
>> sqrt(u’*u)
>> norm(u)
Exemplo
Calcule o ˆangulo entre os seguintes vetores: u = (1, 1), v = (−1, 1)
Observa¸c˜ao: 1◦= π
180 radianos
Exemplo
Calcule o ˆangulo entre os seguintes vetores: u = (1, 1), v = (−1, 1)
u = (2, 0, 0), v = (1, 3, 0), w = (4, 0, 1), t = (2, 1, 1)
Observa¸c˜ao: 1◦= π
180 radianos
Exemplo
Calcule o ˆangulo entre os seguintes vetores: u = (1, 1), v = (−1, 1)
u = (2, 0, 0), v = (1, 3, 0), w = (4, 0, 1), t = (2, 1, 1) u = (1, 1, 1, 1, 1), v = (2, 3, 4, 5, 6)
Observa¸c˜ao: 1◦= π
180 radianos
Exemplo (Exerc´ıcio 15, lista 3)
A mol´ecula de metano (CH4) est´a organizada como se o ´atomo de
carbono estivesse no centro de um tetraedro regular com quatro ´atomos de hidrogˆenio nos v´ertices. Se os v´ertices forem colocados em (0, 0, 0), (1, 1, 0), (1, 0, 1) e (0, 1, 1) - observando que todas as seis arestas medem √
2, de forma que este ´e um tetraedro regular - qual ser´a o cosseno do ˆ
angulo entre os raios que v˜ao do centro (12,12,12) aos v´ertices?
Produto externo: matrizes de posto 1
>> u = [1;1;1] >> A = u*u’ >> rank(A) >> null(A) >> orth(A)Sistemas sobredeterminados
Ax = b = Solu¸c˜ao: ATAx = ATb x = (ATA)−1ATbSistemas sobredeterminados
Ax = b = Solu¸c˜ao: ATAx = ATb x =(ATA)−1ATbSistemas sobredeterminados
Ax = b = Solu¸c˜ao: ATAx = ATb x =(ATA)−1ATb x =A+bExemplo
A = 1 2 3 4 2 4 5 1 , b = 3 7 6 6 >> x = inv(A’*A)*A’*bExemplo
A = 1 2 3 4 2 4 5 1 , b = 3 7 6 6 >> x = inv(A’*A)*A’*b >> x = (A’*A)\(A’*b)Exemplo
A = 1 2 3 4 2 4 5 1 , b = 3 7 6 6 >> x = inv(A’*A)*A’*b >> x = (A’*A)\(A’*b) >> x = pinv(A)*bExemplo
A = 1 3 3 9 2 6 5 15 , b = A1 1 = 4 12 8 20 >> x = inv(A’*A)*A’*bExemplo
A = 1 3 3 9 2 6 5 15 , b = A1 1 = 4 12 8 20 >> x = inv(A’*A)*A’*b >> x = pinv(A)*bExemplo
A = 1 3 3 9 2 6 5 15 , b = A1 1 = 4 12 8 20 >> x = inv(A’*A)*A’*b >> x = pinv(A)*b Conclus˜aoO MATLAB n˜ao resolve todos os nossos problemas :)