















































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
- - - - - - -
Tipologia: Notas de estudo
1 / 55
Esta página não é visível na pré-visualização
Não perca as partes importantes!
















































1.Introdução
O Matlab foi originalmente desenvolvido para ser um "laboratório matricial". Atualmente ele é um sistema interativo e uma linguagem de programação para a computação técnica e científica em geral. A sua filosofia de processamento está baseada em matrizes. Como os comandos do Matlab são muito similares à maneira como expressamos as soluções dos problemas em termos matemáticos, a tarefa de se escrever soluções computacionais no Matlab é muito mais rápida do que escrever programas em linguagens de alto nível, tais como FORTRAN e C. Além disto, ele possui facilidades gráficas que tornam a interface homem máquina muito amigável.
2. Área de Trabalho (Workspace)
Quando o programa Matlab é acionado a mensagem abaixo irá aparecer na tela. O prompt (>>) indica que o Matlab está esperando pela entrada de comandos.
To get started, select "MATLAB Help" from the Help menu.
O Matlab trabalha com duas janelas: uma janela de comandos que é usada para a entrada dos comandos, dados, e para mostrar os resultados na tela, e uma outra janela gráfica onde são gerados os gráficos. As duas janelas são apagadas quando do início de cada sessão de Matlab. A janela de comando pode ser limpa durante uma sessão de trabalho através do comando clc. Para se limpar a janela gráfica é usado o comando clg. A medida que se trabalha na janela de comando, o Matlab memoriza os comandos entrados, bem como as variáveis que foram criadas. Desta forma, os comandos e as variáveis
Um comando muito útil é o whos que mostra o nome de todas as variáveis existentes no espaço de trabalho global, bem como os seus tipos e dimensões. Se as variáveis acima estiverem no espaço de trabalho, o resultado da aplicação desse comando é o seguinte:
» whos Name Size Bytes Class
D 3x3 72 double array a 1x1 8 double array b 1x5 40 double array c 5x1 40 double array
Grand total is 20 elements using 160 bytes
Deve-se observar, nos exemplos acima, que todas linhas estão finalizadas por ponto e vírgula (;). Isto evita que as matrizes sejam impressas na tela. A omissão do (;), faz com que o resultado de um dado comando apareça imediatamente na tela, como por exemplo:
» b=[1 3 5 7 9] b = 1 3 5 7 9
Nos exemplos acima a é um escalar, b é um vetor linha, c é um vetor coluna, e D é uma matriz 3x3. Observe que os números dentro dos colchetes ou estão separados por vírgulas ou por espaços. O ponto e vírgula separa as linhas da matriz. Uma forma alternativa de se entrar a matriz D é a seguinte:
O Matlab permite também se definir uma matriz a partir de outra já existente. Por exemplo, considere os seguintes comandos:
A = [1 .53 1-2*j]; B = [0 -3 A];
Isto é equivalente a:
B = [ 0 -3 1 .53 1-2*j];
Pode-se também mudar ou adicionar valores num vetor através de subscrito referenciado em parêntesis. O seguinte comando:
B(1) = -1;
troca o primeiro elemento do vetor B de 0 para -1. Um vetor também pode ser estendido pela definição de novos elementos. O vetor B que possui 5 elementos passa a ter 7 elementos se o seguinte comando for executado:
B(7) = pi;
Neste caso B(6) terá , automaticamente, o valor 0.
os comandos:
dl2 = D(2,:); % Segunda linha da matriz D. dc1 = D(:,1); % Primeira coluna da matriz D. dd = D(2:3,1:2); % dd = [4 5;7 8]
Exercício 3.2: Dada a matriz R abaixo, verifique as suas respostas usando o Matlab.
No Matlab é válido se ter uma matriz vazia. Por exemplo, uma matriz vazia pode ser gerada com o seguinte comando:
a = [ ]
Deve-se observar que uma matriz vazia é diferente de uma matriz que só contenha zeros.
Os valores de uma matriz, vetor, ou escalar também podem entrar através do comando input. Isto é muito útil quando se tem o programa num arquivo tipo M.
z = input('Entre com o valor de z ')
4. Operações Escalares
As operações aritméticas entre dois escalares são mostrada na Tabela 1
Operação Forma Algébrica MATLAB Adição a + b a + b Subtração a - b a - b Multiplicação a b a * b Divisão à direita a / b a/b Divisão à esquerda b \ a a \ b Exponenciação ab^ a ^ b Tabela 1: Operações aritméticas entre dois escalares
O resultado de uma operação que não é relacionada diretamente a uma variável é automaticamente colocado numa variável chamada de ans, que pode ser usada como qualquer outra variável, como por exemplo:
3*pi^ ans =
sqrt(ans) ans =
pi
ans =
Há várias formas possíveis de formatação, que podem ser vistas usando o comando help format. Por exemplo o comando format compact suprime a linha extra que aparece nas outras formatações. Esta formatação é a utilizada na maioria dos exemplos apresentados.
format compact pi ans =
Uma outra formatação é o format long, que apresenta o resultado com 15 digitos.
format long pi ans =
Deve-se observar que o Matlab trabalha internamente com precisão dupla em todas as suas operações, e que o comando format altera apenas a forma com que os resultados são apresentados.
5. Criação de Matrizes e Vetores
O Matlab possui comandos que permitem a criação de algumas matrizes e vetores especi- ais:
zeros(m,n) cria uma matriz m x n de zeros. ones(m,n) cria uma matriz m x n de uns. eye(m,n) cria uma matriz identidade m x n. diag(v) cria uma matriz n x n com v na diagonal principal (v é um vetor de tamanho n).
Com as funções zeros e ones pode-se criar vetores, como por exemplo:
x = zeros(1,5) x = 0 0 0 0 0 y = ones(5,1) y = 1 1 1 1 1
Os comandos size e length permitem determina as dimensões de matrizes e vetores, respectivamente. Por exemplo:
size(x) ans =
As operações matemáticas entre vetores não são tão simples quanto aquelas entre ve- tores e escalares. Quando dois vetores forem de mesmo tamanho, as operações de adição, subtração, multiplicação, e divisão são aplicadas elemento a elemento. Por exemplo:
» a+b ans = 2 5 8 11 14 » ans-a ans = 1 3 5 7 9
A multiplicação e divisão elemento por elemento é feita de maneira similar, exceto por uma pequena alteração na notação:
» a.*b ans = 1 6 15 28 45
Os vetores a e b foram multiplicados elemento a elemento usando o operador (.), que é dife- rente da operação multiplicação matricial (). A divisão de vetores elemento a elemento requer o uso do símbolo ponto (.):
» a./b ans = 1.0000 0.6667 0.6000 0.5714 0. » b.\a ans = 1.0000 0.6667 0.6000 0.5714 0.
A exponenciação de vetores também é feita elemento a elemento, podendo ser definida de várias maneiras:
» a.^ ans = 1 4 9 16 25
os elementos individuais de a elevados ao quadrado.
» 2.^a
ans = 2 4 8 16 32
neste caso o escalar 2 é elevado a uma potência dada por cada elemento de a. » a.^b ans = 1 8 243 16384 1953125
aqui cada elemento do vetor a é elevado a uma potência dada por cada elemento do vetor b. A Tabela 2 mostra um resumo das operações aritméticas com vetores.
Operação Forma Algébrica MATLAB Adição a + b a + b Subtração a - b a - b Multiplicação a b a.* b Divisão à direita a / b a. / b Divisão à esquerda b \ a a. \ b Exponenciação ab^ a. ^ b Tabela 2: Operações aritméticas elemento a elemento entre dois vetores
7. Gráficos
O Matlab oferece um processador gráfico com extensiva capacidade de gerar toda a gama de gráficos, e ao mesmo tempo simplificando muito o seu uso. Pode-se gerar gráficos com apenas um comando. O gráfico mais simples é o de um conjunto de pontos no plano x-y. Por exemplo:
» x = 1:6; y = [-1 1/4 1 pi 2 1]; plot(x,y)
Aos gráficos das figuras 7.1 e 7.2 pode-se acrescentar título, nomes dos eixos, e reticulado. Pode-se também controlar as cores das curvas, bem como o tipo de linha utilizado. É possível se ter mais de uma curva num mesmo gráfico. Além destas, há muitas outras facilidades gráficas oferecidas pelo Matlab. Uma boa opção para se aprender mais sobre os recursos da função plot é o de entrar com o comando help plot. O Matlab pode gerar diversos tipos de gráficos: curvas em 2D, superfícies em 3D, gráficos de contorno de superfícies em 3D, curvas paramétricas em 2D e em 3D. Os detalhes de como são gerados esses gráficos podem ser encontrados com o auxílio do help. O comando subplot cria diversos gráficos numa mesma janela gráfica. A sua sintaxe é subplot(m,n,k), em que mn é o número de gráficos a serem criados, organizado numa matriz com m linhas e n colunas, e k é a ordem em que aparecem os gráfico ao longo das linhas. Vejamos o seguinte exemplo: 4 gráficos serão gerados numa mesma janela, e mostrados na Figura 7.3.
» x = 0:pi/20:2pi; » n = 0:.3:6; »subplot(2,2,1) »plot(x, sin(x)) »subplot(2,2,2) »plot(x, exp(-x)) »subplot(2,2,3) »stem(n, sin(2pi*n/4)) »subplot(2,2,4) »stem(n, 0.5.^n)
Figura 7.3: Gráficos múltiplos numa mesma janela.
8. Operações com Matrizes
As operações de multiplicação por escalar, soma e subtração de matrizes são efetuadas elemento a elemento de forma similar aos vetores, como visto anteriormente. A operação de transposição de matrizes ou vetores é feita por meio do ( ' ), ou seja, b = a' faz com que a matriz b seja a transposta da matriz a. O produto escalar é definido como a soma dos produtos dos elementos correspondentes de dois vetores do mesmo tamanho. No Matlab isto é implementado da seguinte forma:
prod_esc = sum(P.*Q);
em que P e Q são ambos vetores linha ou vetores coluna. O produto de AB de duas matrizes A e B só existirá se o número de colunas de A for idêntico ao número de linhas de B. Por exemplo:
-1 0 2 4 6 8
-0.
0
1
(^00 2 4 6 )
1
-1 0 2 4 6
-0.
0
1
(^00 2 4 )
1