MESTRADO EM MACROECONOMIA e FINANÇAS
Disciplina de Computação
Aula 05
Prof. Dr. Marco Antonio Leonel Caetano
1
Guia de Estudo para Aula 05
•Produto Vetorial
- Interpretação do produto vetorial
Comparação com as funções do Matlab
- Determinação do produto vetorial com a função do matlab
Exercícios
- Produto vetorial
- Gráfico em 3D
- Auto valores e autovetores.
- Abrir e fechar arquivos em matlab.
Objetivos da Aula
- Compreender vetores em matlab.
- Entender produto vetorial
- Aprender a fazer gráficos em 3D.
- Aprender autovalor de uma matriz.
- Aprender autovetor de uma matriz.
- Aprender a salvar e ler arquivos dentro do matlab.
2
Propriedade da soma de matrizes
A soma de matrizes se realiza somando todos os componentes
correspondentes da mesma posição.
C=A+B
Significa que cij = aij + bij
⎛ c11 c12 ⎞ ⎛ a11
⎜⎜
⎟⎟ = ⎜⎜
⎝ c21 c22 ⎠ ⎝ a21
onde
a12 ⎞ ⎛ b11 b12 ⎞
⎟⎟ + ⎜⎜
⎟⎟
a22 ⎠ ⎝ b21 b22 ⎠
c11 = a11 + b11
c12 = a12 + b12
c21 = a21 + b21
c22 = a22 + b22
Observação: A mesma propriedade vale para a subtração de matrizes
3
Exercício
Fazer um programa usando “for” para soma duas matrizes quaisquer
quadrada de tamanho n. Compare o resultado com a função “+” do
Matlab.
4
r r r
z = x∧y
O Produto Vetorial
r
z
1.5
1
k
r
x
0.5
r
y
0
0
0.2
2
1.5
1
0.4
0.5
0.6
0.8
i
1
j
0
5
O Produto Vetorial
r r r
F =V ∧ B
k
j
i
6
Definição Algébrica de Produto Vetorial
Chama-se produto vetorial entre dois vetores de 3 componentes nas
direções i, j e k
⎛x ⎞
r ⎜ 1⎟
r
r
r
x = x1i + x2 j + x3 k = ⎜ x2 ⎟
⎜x ⎟
⎝ 3⎠
⎛ y1 ⎞
r
r
r
⎜ ⎟
r
y = y1i + y2 j + y3 k = ⎜ y2 ⎟
⎜y ⎟
⎝ 3⎠
O vetor resultante da seguinte operação:
r r x2
x∧y=
y2
x3 r x3
i+
y3
y3
x1 r x1
j+
y1
y1
x2 r
k
y2
Obs: | ... | significa determinante.
7
Exemplo
Calcular o produto vetorial dos seguintes vetores x e y:
⎛ 1 ⎞
⎛2⎞
r ⎜ ⎟
r ⎜ ⎟
x =⎜ 1 ⎟ e y=⎜ 3 ⎟
⎜ − 2⎟
⎜ − 1⎟
⎝ ⎠
⎝ ⎠
Componente i:
1 −1
= −2 + 3 = 1
3 −2
Componente j:
2 −1
= −4 + 1 = −3
1 −2
Componente k:
2 1
= 6 −1 = 5
1 3
8
Solução Gráfica
Z
5
4
3
2
1
Y
0
X
-1
-2
0
3
2
0.5
1
1
1.5
2
0
9
Exercício
Fazer um programa em matlab onde o usuário fornece as 3 componentes
de dois vetores e o programa gera o vetor resultante do produto vetorial
10
A função do Matlab para produto vetorial
Cross( x , y )
Essa função fornece diretamente o produto vetorial de dois vetores
x e y.
11
A função Plot3
Essa função permite fazer gráficos em 3D para 3 conjuntos de pontos
Representando os eixos x, y e z.
Plot3( x , y, z , ‘tipo de curva’ )
Exemplo
cria grade de pontos no
gráfico
12
Resultado
6
5
4
3
2
1
40
30
6
5
20
4
3
10
2
0
1
13
Girando o gráfico
Rotacionar
os eixos
14
Marca o Azimute e Elevação
15
Exercício
Modificar o programa feito em aulas anteriores para a visualização
de vetores em 2D para a visualização de vetores em 3D usando a
função plot3. O programa deverá pedir as componentes de dois
vetores x e y e gerar o terceiro vetor através do produto vetorial.
No final deverá plotar os 3 vetores.
16
Solução
Produto vetorial
17
Teste
⎛ 1 ⎞
⎛2⎞
⎟
⎜
r
r ⎜ ⎟
x =⎜ 1 ⎟ e y=⎜ 3 ⎟
⎜ − 2⎟
⎜ − 1⎟
⎝ ⎠
⎝ ⎠
Solução
⎛1⎞
r r ⎜ ⎟
x ∧ y = ⎜ 3⎟
⎜ 5⎟
⎝ ⎠
6
4
2
0
-2
3
2
2
1.5
1
1
0.5
0
0
18
Autovalores
Seja o sistema linear:
r
r
Ax = λx
Fornecida a matriz A, se existir um λ que permita a solução para
O sistema linear acima, esse λ é chamado de autovalor ou valor
característico da matriz A.
Autovetores
Fornecida a matriz A, o vetor x solução do sistema linear acima é
conhecido como autovetor ou vetor característico associado a λ
19
Determinando os Autovalores
Para encontrar a solução de
r
r
Ax = λx
É o mesmo que encontrar a solução do sistema:
r
r
Ax − λx = 0
Ou seja, deseja-se achar lambda e x que satisfaçam:
r
( A − λ .I ) x = 0
Onde I é a matriz indentidade.
Para o sistema acima ter solução além da trivial (0,0,...,0) é necessário
que
det( A − λ .I ) = 0
Para encontrar os autovalores “lambda”, deve-se encontrar as raízes
Do polinômio que se forma, conhecido como polinômio característico.
20
Exemplo
Determinar os autovalores da matriz abaixo.
⎛3 2 ⎞
⎟⎟
A = ⎜⎜
⎝3 − 2⎠
O polinômio característico será:
det( A − λI ) = 0
⎛⎛3 2 ⎞ ⎛1 0⎞⎞
⎟⎟ − λ ⎜⎜
⎟⎟ ⎟⎟ = 0
⇒ det⎜⎜ ⎜⎜
⎝⎝3 − 2⎠ ⎝ 0 1⎠⎠
2 ⎞
⎛3 − λ
⎟⎟ = 0
⇒ det⎜⎜
−2−λ⎠
⎝ 3
⇒ (3 − λ )(− 2 − λ ) − 6 = 0
⇒ λ2 − λ − 12 = 0
Polinômio característico
21
As raízes e portanto os autovalores, do polinômio característico são:
λ1 = 4
λ2 = −3
Exercício
Encontrar os autovalores da matriz
⎛ 3 2⎞
⎟⎟
A = ⎜⎜
⎝4 1⎠
Solução
λ1 = 5
λ2 = −1
22
Determinando os Autovetores
Para encontrar os autovetores para os autovalores, substitui-se
os autovalores encontrados no sistema inicial e determina-se
quais são os valores múltiplos das componentes para uma
solução não trivial.
Exemplo
⎛3 2 ⎞
⎟⎟
A = ⎜⎜
⎝3 − 2⎠
Os autovalores da matriz
foram
λ1 = 4 e λ2 = −3
Substituindo o autovalor
λ1 = 4 no sistema original
⎛ −1 2 ⎞
⎟⎟
A − 4.I = ⎜⎜
⎝ 3 − 6⎠
Deve-se resolver então a equação
( A − λI )xr = 0
23
Solução
r
( A − λI ) x = 0
⎛ − 1 2 ⎞ ⎛ x1 ⎞
⎟⎟.⎜⎜ ⎟⎟ = 0
⇒ ⎜⎜
3
6
−
⎝
⎠ ⎝ x2 ⎠
⎧ − x + 2 x2 = 0
⇒⎨ 1
⎩ 3 x1 − 6 x2 = 0
Colocando x1 em função de x2 tem-se:
Logo,
x1 = 2x2
r ⎛ x1 ⎞ ⎛ 2 x2 ⎞ ⎛ 2 ⎞
⎟⎟ = ⎜⎜ ⎟⎟ x2
x = ⎜⎜ ⎟⎟ = ⎜⎜
⎝ x 2 ⎠ ⎝ x2 ⎠ ⎝ 1 ⎠
Para qualquer valor de x2 diferente de zero (solução trivial) tem-se
Que um novo vetor será associado ao vetor ( 2 1 )T. Portanto o
Autovetor do autovalor 4 será:
r ⎛ 2⎞
v = ⎜⎜ ⎟⎟
⎝1⎠
24
Exercício
Calcular o autovetor da matriz anterior para o autovalor
Solução
λ2 = −3
r
( A + 3I ) x = 0
⎛ 6 2⎞ r
⎟⎟ x = 0
⇒ ⎜⎜
⎝3 1⎠
⎧6 x1 + 2 x2 = 0
⇒⎨
⎩ 3 x1 + x2 = 0
Da primeira equação tem-se: - 3x1 = x2
Logo,
r ⎛x ⎞ ⎛ x ⎞ ⎛ 1 ⎞
x = ⎜⎜ 1 ⎟⎟ = ⎜⎜ 1 ⎟⎟ = ⎜⎜ ⎟⎟ x1
⎝ x2 ⎠ ⎝ − 3 x1 ⎠ ⎝ − 3 ⎠
Portanto o autovetor será: vr = ⎛⎜ − 1⎞⎟
⎜3⎟
⎝ ⎠
25
Funções autovalores e autovetores no matlab
Sendo x um vetor, o autovalor e seu autovetor associado podem
serem encontrados no matlab pelo comando:
[v,d] = eig(x)
autovetores
autovalores
Exemplo
⎛3 2 ⎞
⎟⎟
A = ⎜⎜
⎝3 − 2⎠
autovetor
autovalor
26
Outra forma
Nomaliza o resultado entre 0 e 1.
2
1
-1
3
27
Salvando e Lendo os resultados de programas
•Para salvar os resultados: Comando save nome_do_arq var -ascii
Exemplo:
Salva a matriz A no arquivo
“dados.dat” em formato
ascii.
•Para Ler os dados de um arquivo:
load nome_do_arquivo
28
Lendo arquivo e transformando em vetor e matriz
•Os dados podem ser salvos em colunas de matriz.
•A matriz pode ser salva num arquivo *.txt
Exemplo
29
Ao ler dentro de um programa, o matlab
transforma o nome do arquivo
em matriz ou vetor.
30
res aqui é matriz e não mais
o arquivo res.txt
31
Download

AULA 5