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


Matrizes em MATLAB: Criação, Obtenção e Manipulação de Elementos, Notas de estudo de Informática

Saiba como criar, obter e manipular elementos de matrizes em matlab. Aprenda a criar matrizes, especificar índices para obter elementos individuais ou submatrizes, e utilizar funções como eye, rand e randn para gerar matrizes elementares. Além disso, saiba como utilizar o operador ':' para gerar sequências de números e obter submatrizes usando a notação ':'.

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 23/01/2008

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

2 documentos

1 / 27

Toggle sidebar

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

Não perca as partes importantes!

bg1
MATLAB
OPERAÇÕES
COM MATRIZES
Paulo Santos Nº 1026
Manuel Rua Nº 1024
António Almeida Nº 1023
Helder Regada Nº 960
Instituto Politécnico de Viseu
Escola Superior De Tecnologia e Gestão de Lamego
Engenharia Informática e Telecomunicações
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b

Pré-visualização parcial do texto

Baixe Matrizes em MATLAB: Criação, Obtenção e Manipulação de Elementos e outras Notas de estudo em PDF para Informática, somente na Docsity!

MATLAB

OPERAÇÕES

COM MATRIZES

Paulo Santos Nº 1026 Manuel Rua Nº 1024 António Almeida Nº 1023 Helder Regada Nº 960 Instituto Politécnico de Viseu Escola Superior De Tecnologia e Gestão de Lamego Engenharia Informática e Telecomunicações

Criação de Matrizes

Uma matriz é uma estrutura de dados bidimensional que permite guardar números de uma forma ordenada e indexável. Uma matriz pode ser expressa como um escalar (matriz 1 x 1), como um vector (matriz 1 x n ou n x 1) ou como uma matriz propriamente dita (matriz m x n). Os valores de uma Matriz são colocados entre parentesis rectos, sendo que, os elementos de uma coluna são separados por um espaço ou por uma vírgula, e as linhas são separadas por ponto e vírgula. É também necessário ter em mente, ao nomear as matrizes, que o Matlab faz distinção entre letras maiúsculas e minúsculas. Para criar, por exemplo, a seguinte matriz A com duas linhas e três colunas: A = 1 2 3 4 5 6

Dada uma matriz, os seus elementos podem ser obtidos especificando os índices das suas linhas (i) e colunas (j), sendo que A(i, j) representa o elemento a ij da matriz A. Em notação Matlab, para obter o elemento A(1,3) , da matriz anterior, pode-se escrever:

A(1,3) ( De notar que se escreve sempre na forma matriz(linha,coluna )) ans = 3 Para alterar o valor do elemento A(1,3) para 7 : A(1,3)= 7 A = 1 2 7 4 5 6

Índices

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

Índices

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

Operador “ : ”

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 1.0000 1.1571 1.3142 1.4712 1.6283 1.7854 1. Columns 8 through 14 2.0996 2.2566 2.4137 2.5708 2.7279 2.8850 3. e=5:-1:- e = 5 4 3 2 1 0 -1 -2 -3 -4 -

Operador “ : ”

No caso anterior são indexadas todas as linhas da matriz. Para simplificar a notação, quando não se conhece exactamente o número de linhas de uma matriz, pode-se utilizar a notação :

B=a(:,1:2:3) B = 1 3 5 7 9 11 Se quiséssemos obter a primeira linha da matriz A podíamos escrever : A (1,:) ans = 1 2 3 4

Operador “ : ”

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)

Matrizes Elementares

n=rand(3) n = 0.9501 0.8913 0. 0.2311 0.7621 0. 0.6068 0.4565 0. A= randn(1,3)i (“i” representa a unidade imaginária) A = 0 + 0.1746i 0 - 0.1867i 0 + 0.7258i É 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 Cria uma matriz B usando submatrizes 1 1 1 0 0 elementares: ones, zeros, e a matriz 1 1 1 0 0 identidade de tamanhos específicos. 0 0 0 4 0 0 0 0 0 4

Matrizes Elementares

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= 1 2 1 2 3 4 3 4 1 2 1 2 3 4 3 4

Concatenação de Matrizes

É possível remover de uma dada matriz qualquer conjunto de linhas e colunas. Para tal, basta atribuir o valor de uma matriz vazia definida por “[ ]” às linhas e colunas que se pretende remover. No exemplo que se segue, elimina-se a 2ª coluna da matriz A.

a= [1 2; 3 4]; A remoção de um elemento isolado de uma >>A= [a a; a a] matriz não é possível uma vez que esta deixaria A= 1 2 1 2 de respeitar as propriedades de uma matriz 3 4 3 4 >>A (1,2)=[ ] 1 2 1 2 ??? Indexed empty matrix assignment is not 3 4 3 4 allowed. (operação não é permitida pelo Matlab) A (:,2)= [ ] ( A 2º coluna da matriz A foi removida ) A= 1 1 2 3 3 4 1 1 2 3 3 4

Remoção de Linhas e colunas

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];

Supressão de Resultados

Soma de Matrizes:

C= A+B ( A soma de matrizes só é válida se A e B são do mesmo C = tamanho.) 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 D = mesmo tamanho.

-12 -12 -12 - 13 13 13 13 -8 -8 -8 - -24 -24 -24 -

Cálculos entre Matrizes

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 -40 -46 -52 - Produto interno entre dois vectores linha x e y : x= 1:4 ( x = 1 2 3 4) y= 3:6 ( y = 3 4 5 6) g = xy’ (vector x * transposta do vector y) g= 50

Cálculos entre Matrizes