Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Tutorial Matlab - Matrisez, Notas de estudo de Informática

- - - - - - -

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 23/01/2008

antonio-almeida-6
antonio-almeida-6 🇧🇷

2 documentos

1 / 17

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Instituto Politécnico de Viseu
Escola Superior De Tecnologia e Gestão de Lamego
Engenharia Informática e Telecomunicações
Álgebra Linear e Geometria Analítica
Matlab
Operações
com
Matrizes
Elaborado por:
Paulo Santos Nº 1026
Manuel Rua Nº 1024
António Almeida Nº 1023
Helder Regada Nº 960
índice
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Pré-visualização parcial do texto

Baixe Tutorial Matlab - Matrisez e outras Notas de estudo em PDF para Informática, somente na Docsity!

Instituto Politécnico de Viseu

Escola Superior De Tecnologia e Gestão de Lamego

Engenharia Informática e Telecomunicações

Álgebra Linear e Geometria Analítica

Matlab

Operações

com

Matrizes

Elaborado por: Paulo Santos Nº 1026 Manuel Rua Nº 1024 António Almeida Nº 1023 Helder Regada Nº 960

  • índice

Extrair a

  • Polinómio característico de uma matriz
  • Transformação de matrizes
    • Alterar o tipo
  • Transposta
    • Rodar
    • Inverter a posição dos valores
    • triangular ....................................................................................................................
  • Equações com matrizes

Para alterar o valor do elemento A(1,3) para 7 :

>>A(1,3)= 7

A =

Os índices das matrizes são listas de números que podem ser armazenadas em vectores declarados previamente. Se pretendermos por exemplo, extrair a segunda linha da matriz podemos fazer :

>>v= A(2,[1 2 3])

v= 4 5 6

ou declarando primeiro um vector para os índices das colunas:

**_>>k= [1 2 3]

v= A(2,k)_**

v= 4 5 6

Também é possivel obter a diagonal da matriz sob a forma de um vector coluna. Por exemplo para a seguinte matriz a:

>> a=[1:4;5:8;9:12;13:16]

a = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

>> k= diag (a)

k = 1 6 11 16

  • O Operador “:”

A criação de vectores elemento a elemento é bastante morosa e para matrizes de grandes dimensões quase irrealizável. O Matlab permite gerar sequências de números de forma rápida se fizermos uso do operador “ : ”. Por exemplo, para gerar o vector v =[1,2,3,...,100] podemos fazer :

>>v= 1:

A notação geral para o operador “ : ” é a seguinte :

número_inicial : incremento : número_final

Por exemplo, usando 2 como incremento :

>> c=1:2:

c =

1 3 5 7 9 11 13 15 17 19

O operador “ : ” permite a geração de sequências de números inteiros como no exemplo anterior ou mesmo de números reais. Eis alguns exemplos:

>> d=1:pi/20:pi (pi é igual a 3.1416)

d = Columns 1 through 7

Columns 8 through 14

2.0996 2.2566 2.4137 2.5708 2.7279 2.

>> e=5:-1:-

e = 5 4 3 2 1 0 -1 -2 -3 -4 -

  • Matrizes Elementares

As funções seguintes permitem a criação de algumas matrizes elementares:

  • zeros Cria uma matriz preenchida com zeros
  • ones Cria uma matriz preenchida com uns
  • eye Cria a matriz identidade
  • rand Cria uma matriz de números aleatórios com distribuição uniforme
  • randn Cria uma matriz de números aleatórios com entradas normalmente distribuídas (média 0 e desvio padrão 1)

Vejamos alguns exemplos de utilização destas funções:

>>Z= zeros (2,5)

Z = 0 0 0 0 0 0 0 0 0 0

>>O= ones(2,3)

O= 1 1 1 1 1 1

_>>T= ones(2,3)_*

T= 3 3 3 3 3 3

>> R=rand(4)

R =

_>> A= randn(1,3)i_* (“i” representa a unidade imaginária)

A=

0 - 1.3362i 0 + 0.7143i 0 + 1.6236i

É ainda possivel combinar as diferentes funções, por exemplo:

_>> B = [ones(3) zeros(3,2); zeros(2,3) 4eye(2)]_*

B = 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 0 4 0 0 0 0 0 4

Cria uma matriz B usando submatrizes elementares: ones, zeros, e a matriz identidade de tamanhos específicos.

  • (^) Concatenação de matrizes

Concatenar matrizes consiste em formar matrizes a partir de outras mais pequenas. A notação é idêntica à utilizada para formar matrizes com números. Os seguintes exemplos ilustram a concatenação de matrizes.

>>a= [1,2; 3,4]

a= 1 2 3 4

>>A= [a a; a a] (Matriz 4x4, formada a partir da matriz a anterior)

A=

A remoção de um elemento isolado de uma matriz não é possível uma vez que esta deixaria de respeitar as propriedades de uma matriz

>>A (1,2)=[ ] (operação não é permitida pelo Matlab)

??? Indexed empty matrix assignment is not allowed.

  • Supressão de resultados no Matlab

Quando as matrizes são de grande dimensão torna-se bastante incómodo para o utilizador a apresentação do resultado no ecrã do computador de todos os cálculos efectuados. Para evitar a apresentação dos resultados basta colocar no final da linha de comando um ponto e vírgula tal como o seguinte exemplo demonstra:

>> g=[1:500;501:1000];

  • Calculos entre matrizes

É possível resolver com o Matlab diversos problemas da álgebra linear, sendo fácil realizar cálculos elaborados com matrizes, como por exemplo, o produto de duas matrizes, inversão de matrizes, cálculo dos valores próprios, etc. Dadas as matrizes A e B, por exemplo:

>> A=[1:4;5:8;9:12;-3:0] (Matriz A)

A = 1 2 3 4 5 6 7 8 9 10 11 12 -3 -2 -1 0

>> B=[13:16;-8:-5;17:20;21:24] (Matriz B)

B =

  • Soma de Matrizes:

>>C= A+B ( A soma de matrizes só é válida se A e B são do mesmo tamanho.) C = 14 16 18 20 -3 -1 1 3 26 28 30 32 18 20 22 24

  • (^) Subtracção de Matrizes:

>>D= A-B ( A subtracção de matrizes só é válida se A e B são do mesmo tamanho.)

D = -12 -12 -12 - 13 13 13 13 -8 -8 -8 - -24 -24 -24 -

  • Multiplicação de Matrizes :

_>>E= AB_* ( A subtracção de matrizes só é válida se o número de colunas de A é igual ao número de linhas de B.)

E = 132 142 152 162 304 330 356 382 476 518 560 602

  • Potência de uma matriz:

>>A^2 ou _>>AA_*

ans = 26 36 46 56 74 100 126 152 122 164 206 248 -22 -28 -34 -

  • Polinómio característico de uma matriz:

>>p= poly(A)

p = 1.0000 -18.0000 16.0000 -0.0000 -0.

o que indica que o polinómio característico (λI) é:

λ^4 -18 λ 3 + 16 λ 2 - 0 λ 1 – 0

  • Transformação de matrizes
    • Alterar o tipo: Transformar uma matriz A (3 por 4) numa matriz B (2 por 6):

>> A = [1 4 7 10; 2 5 8 11; 3 6 9 12]

A =

>>B = reshape(A, 2, 6)

B =

  • Alterar para Transposta:

Transpor a Matriz A de maneira a que as colunas se tornem linhas e as linhas colunas;

>>B = transpose (A) ou >> B=A’

B =

A =

Triangular inferior;

>> tril (A)

ans = -3 0 0 0 1 2 0 0 5 6 7 0 9 10 11 12

Triangular superior;

>> triu (A)

ans = -3 -2 -1 0 0 2 3 4 0 0 7 8 0 0 0 12

  • Equações Com Matrizes

O Matlab permite resolver equações com matrizes, numericamente de forma muito eficiente. Considere-se a equação com matrizes ( Ax = B ) em que:

A= 4 1 2 B= 0

Para resolver a equação podemos utilizar:

x = A −^1 B

e o correspondente comando Matlab

_>>x= inv (A)B_*

x=

-0.