apostila mat laboratory
Short Description
laboratory of matrix, apostila laboratory...
Description
MATLAB BÁSICO Traçando Gráficos no Matlab FORMA BÁSICA Usando o browser de espaço de trabalho, um gráfico de uma variável pode ser gerado pressionando-se o botão direito sobre a variável e escolhendo o tipo de gráfico na opção Graph Selection no menu de contexto. plot (Y): produz um gráfico linear dos elementos de Y pelos índices de Y. plot (X,Y): produz um gráfico linear Y (ordenada) ´ X (abcissa).
· A escala é definida automaticamente bem como os eixos coordenados. · Pode-se melhorar a saída dando-se título e nomes aos eixos, por exemplo. O comando plot(X,Y), X e Y matrizes de mesma dimensão, plota as colunas de Y versus as colunas de X. Prof. Adade
MATLAB BÁSICO Traçando Gráficos no Matlab Ex.
y = [ 0 0.6 0.9 0.1 0.8 plot(y) title ('Gráficos - Teste 01') xlabel ('eixo X') ylabel ('eixo Y')
0.3 0.4]; Gráficos - Teste 01 0.9 0.8 0.7 0.6 0.5
Y o x i e0.4
0.3 0.2 0.1 0
1
2
3
4 eixo X
5
6
7
Prof. Adade
MATLAB BÁSICO Traçando Gráficos no Matlab Dados dois vetores de mesma dimensão, x e y, pode-se traçar o gráfico de y versus x através do comando plot(x,y). Ex. t = 0 : .1 : 4*pi; y = sin(t); plot(t,y), ... title('Gráficos - Teste 02'), ... xlabel('t'), ... ylabel('sent'), ... grid
Gráficos - Teste 02 1 0.8 0.6 0.4 0.2 t n e s
0
-0.2 -0.4 -0.6 -0.8 -1 0
2
4
6
8
10
12
14
t
Prof. Adade
MATLAB BÁSICO Traçando Gráficos no Matlab Ex. Traçando múltiplas curvas no mesmo gráfico. t = 0 : .1 : 3*pi; y = sin(t); z=exp(-0.3*t) .* cos(t); w = t .* sin(t); plot(t,y,t,z,t,w) xlabel('t'); ylabel('Funções') title('Gráficos - Teste 03') text(2,0.8, 'SENO') text(6,6, 't * SENO') text(1,-1,'EXP * COSENO')
Gráficos - Teste 03 8 6
t * SENO
4 s e õ 2 ç n u F
SENO
0 EXP * COSENO -2 -4 -6 0
2
4
6
8
10
t
Prof. Adade
MATLAB BÁSICO Traçando Gráficos no Matlab Títulos, Rótulos, Texto, Legenda title('Título','Propriedade1', 'Valor1', 'Propriedade2', 'Valor2') xlabel('Rótulo do eixo-X','Propriedade1, 'Valor1') ylabel('Rótulo do eixo-Y') zlabel('Rótulo do eixo-Z') gtext('Texto para anotação'); % texto posicionado na tela pelo mouse % coloca o texto na posição especificada por text(x,y,'Texto para anotação'); legend('Texto1', 'Texto2')
% y, nas unidades do último gráfico % coloca legenda com os textos especificados
x e
· A edição de uma figura/gráfico é facilitada pelos recursos proporcionados na própria janela gráfica; alternativamente, usar o comando plottools. Uma figura pode ser armazenada em arquivo .fig usando-se a opção save e carregada usando-se a opção open do menu File. Prof. Adade
MATLAB BÁSICO Traçando Gráficos no Matlab Particionamento da Tela :
subplot(r,c,p)
A tela é particionada em r ´ c janelas e p é a janela atual.
Ex: clf ; % limpa a tela gráfica wt = 0 : 0.05 : 3*pi; x = sin(wt); y = sin(wt - pi/4); subplot(1,2,1), plot(wt,x,'r',wt,y,'g'); xlabel('wt - radianos) subplot(1,2,2), plot (x,y,'b'); xlabel('x=sen(wt)'); ylabel('y=sen(wtpi/4)')
1
1
0.8
0.8
0.6
0.6 ) 4 / i p t w ( n e s = y
0.4 0.2 0
0.4 0.2 0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6
-0.8
-0.8
-1
0
5 wt - radianos
10
-1 -1
0
1
x=sen(wt)
Prof. Adade
MATLAB BÁSICO Traçando Gráficos no Matlab Controle de Tela e de Escalas shg : clf
mostra a tela gráfica;
: limpa a tela gráfica;
hold on, (hold off )
: mantém (ou não) o gráfico atual na tela tal que outros gráficos podem ser superpostos (nos mesmos eixos). gcf : retorna o número da figura atual;
figure
:
abre uma nova janela para gráficos; figure(k) expõe a késima figura e a torna a figura atual. Prof. Adade
MATLAB BÁSICO Traçando Gráficos no Matlab •
•
Um subconjunto da notação TeX produz letras gregas, símbolos matemáticos e fontes alternativas para anotações em gráficos, conforme tabela a seguir. Modificadores podem ser utilizados para controlar a fonte das letras: \bf negrito \it itálico \sl oblíqua \rm normal \fontname{fontname} especifica o nome da família de fontes. \fontsize{fontsize} especifica o tamanho da fonte.
Modificadores de fontes permanecem efetivos até o final da sucessão de caracteres (string) ou dentro do contexto definido por chaves { }. Índices são inseridos no texto por meio dos caracteres " _ " (índice inferior) e "^" (índice superior): eles modificam o caractere ou a sequência de caracteres entre chaves que imediatamente os sucedem. Prof. Adade
MATLAB BÁSICO
Prof. Adade
MATLAB BÁSICO
Prof. Adade
MATLAB BÁSICO
Prof. Adade
MATLAB BÁSICO Recursos do Desktop · A tela de partida do Matlab é denominada Matlab Desktop (vide figura) e traz recursos para se manusear arquivos, variáveis e aplicações. · Ao usar o browser do espaço de trabalho (workspace), o editor de array é acessado clicando-se duas vezes sobre uma variável. · A opção Layout (R2013) ou Desktop (R2011) (ou View, na versão 6) da barra de menus do Matlab permite selecionar quais as janelas vão compor o Desktop. · Essas janelas podem ser deslocadas para fora do Desktop. · Há diferentes configurações pré-definidas para o Desktop, podendo ser selecionadas na opção Layout (R2013) ou Desktop Layout (R2011) do menu Desktop (View). · Menus de contexto ( pop-ups menus ), apresentando as ações disponíveis são acessados clicando-se o botão direito do mouse sobre um item selecionado. Prof. Adade
MATLAB BÁSICO Recursos do Desktop (cont.) · Uma seleção de comandos da janela outra janela do Desktop.
Command History pode
ser copiada e colada em
· Uma seleção também pode ser executada clicando-se o botão direito e ativando a opção Evaluate Selection do menu de contexto. · Os comandos (chamadas de funções) Matlab são "entrados" na Janela de Comandos. O símbolo (>>) indica que o Matlab está pronto para aceitar alguma solicitação. · Após entrar um comando, pressionar a tecla Enter ou Return para que seja executado. · Para entrar múltiplas linhas de comandos sem que sejam executados, concluir cada linha usando Shift-Enter ou Shift-Return. · Pressionando Enter ou Return faz com que todas as linhas sejam executadas. · O comando clear ou os botões clear command e clear limpar a janela de comandos e o espaço de trabalho.
workspace (R2013)
permitem Prof. Adade
MATLAB BÁSICO Recursos do Desktop (cont.) Matlab Web Browser: é possível abrir um web browser e acessar uma página pelo Matlab. Menu: Desktop ® Web Browser
Equivalente ao comando: >> web url
(botão Community no menu da R2013)
% url é o endereço da página a acessar Prof. Adade
MATLAB BÁSICO Definindo Matrizes EX:
ou
Matrizes são introduzidas (definidas) como uma lista de elementos, entre colchetes [] e usando-se ponto e vírgula ( ;) para indicar término de linhas. Os elementos numa linha podem ser separados por vírgula ou por espaço em branco.
A = [1 2 3; 4 5 6; 7 8 9] A=[ 123 456 7 8 9]
u
Obs. 1 A sintaxe é sensível ao caso das letras, isto é, diferencia entre letras maiúsculas e minúsculas; assim, a e A representam variáveis distintas.
u
Matrizes também podem ser geradas por comandos e funções do MATLAB, editadas e "carregadas" via um arquivo M-file e/ou "carregadas" de arquivos externos. Prof. Adade
MATLAB BÁSICO O procedimento de entrada de dados e de comandos é simplificado pelo uso de funções e de teclas especiais do editor de linhas de comandos do MATLAB:
: reapresenta linha de comando anterior; ¯ : reapresenta linha de comando posterior; ® (¬) : adianta (volta) o cursor um caractere; Crtl+® : move o cursor uma palavra para a direita; Crtl+¬ : move o cursor uma palavra para a esquerda; Home (ou Crtl+a): move o cursor para o início da linha; End (ou Crtl+e) : move o cursor para o fim da linha; Esc (ou Crtl+u) : apaga a linha; Crtl+k : apaga do cursor até o fim da linha.
Prof. Adade
MATLAB BÁSICO Elementos das Matrizes Números reais, números complexos, expressões matemáticas e mesmo outras matrizes. Ex. 1: x = [-1.1 sqrt(3) 4*atan(1)] resulta x= -1.1000 1.7321 3.1416 u
u
Obs. O redimensionamento de uma matriz é automático. Por exemplo, x(5) = abs(x(1))
resulta x= -1.1000
1.7321
3.1416
0.0000
1.1000 Prof. Adade
MATLAB BÁSICO u
Ex. 2:
resulta
B = [A; 10 11 12] B= 1 4 7 10
u
Ex. 3:
ou resulta
2 5 8 11
3 6 9 12
C = [ 1 2; 3 4 ] + i * [ 4 3; 2 1] C = [ 1+4i
2+3i;
3+2i
4+i]
C= 1+4i 3+2i
2+3i 4+i Prof. Adade
MATLAB BÁSICO Obs 1. A princípio, isto é, por “default ”, i e j representam a unidade imaginária. Outra variável, digamos k, pode assumir essa condição simplesmente fazendo-se,
k = sqrt(-1). Obs 2. Não usar espaços na definição de elementos complexos numa matriz. Obs 3. Mesmo que i e j tenham sido alterados pelo usuário, ainda funcionam como unidade complexa em definições de números na forma a+bi. u
MATLAB também admite a estrutura definida da forma,
matriz vazia, uma matriz de dimensão 0x0
x=[] Prof. Adade
MATLAB BÁSICO Variáveis, Números e Expressões Sintaxe para cálculos no MATLAB: variável = expressão
ou
expressão Ex: ans = u
u
180/3.1416 57.2956
Obs. Terminar uma expressão com ; (ponto e vírgula) suprime a apresentação do resultado, mas a expressão é calculada. Números e operadores aritméticos: notação convencional semelhante à utilizada na linguagem C. Ex: 3 -99 .001 9.63972 1.602E-20 6.02252e23 Prof. Adade
MATLAB BÁSICO u
Operadores Aritméticos:
+ adição - subtração * multiplicação / divisão à direita \ divisão à esquerda ^ potenciação Parênteses ( ) : ordem de precedência de cálculo; melhora a clareza das expressões. u
Variáveis Pré-ajustadas
eps : precisão em ponto flutuante ou unidade de máquina ( 2-52 » 2,22´10-16); pi = p = 4 * atan(1) inf = ¥ (Ex: s = 1/0 resulta s = inf e mensagem) NaN = Not a Number (Resulta nas situações Inf/Inf e 0/0) realmin : menor número em ponto flutuante (2-1022 » 2.2251´10-308) realmax : maior número em ponto flutuante, ((2 - eps) 2 1023 » 1.7977´10+308)
Prof. Adade
MATLAB BÁSICO Exercícios. 1) Calcular o volume de um cilindro de altura 0,45m e raio da base 0,12m. Obs. O volume de um cilindro é obtido pelo produto da sua área da base ( p r 2) e a altura. Resposta: 0.0204 m 3 2) Calcular a expressão abaixo, para x = 2 e y = 5, x 3 y 2
( x - y )2
Resposta: 22.2222
Prof. Adade
MATLAB BÁSICO Acompanhamento do Espaço de Trabalho, Diretórios e Arquivos O browser de espaço de trabalho ( Workspace browser ) pode ser usado para se visualizar o conteúdo do espaço de trabalho, bem como deletar e redenominar variáveis. (R2011)
Save
Delete
Import data Open selection
Prof. Adade
MATLAB BÁSICO · Para editar as variáveis, utiliza-se o editor de array ( Array Editor): - clicando-se duas vezes sobre uma variável. - clicando-se o botão direito sobre a seleção de variáveis e escolhendo a opção Open Selection do menu de contexto que aparece.
Obs. Ao alterar um arquivo .mat este deve ser regravado para que as alterações sejam efetivadas de modo permanente. · O espaço de trabalho (todas as variáveis) pode ser gravado utilizando-se a opção Save Wokspace As do menu File (ou botão Save Workspace na (R2013)). Prof. Adade
MATLAB BÁSICO Formato de Saída
format short : ponto fixo, quatro casas decimais format short e : notação científica, quatro casas decimais (cinco dígitos) format short g : ponto fixo ou notação científica, quatro casas decimais format short eng : formato de engenharia, que tem pelo menos 5 dígitos e uma potência múltiplo de três format long: ponto fixo, quatorze casas decimais format long e: notação científica, quatorze casas decimais format long g : ponto fixo ou notação científica, quinze dígitos (double) ou sete dígitos (precisão simples) format long eng : formato de engenharia, que tem 16 dígitos significativos e uma potência múltipla de três format hex: hexadecimal format +: + (se positivo), - (se negativo), branco (se nulo) format rat: formato (aprox.) racional, isto é, razão de inteiros format bank: valor monetário (dólares e centavos) (format compact, suprime linhas em branco e format loose, que faz retornar ao formato não compactado)
Prof. Adade
MATLAB BÁSICO Formato de Saída Ex:
x = [6/7
1.1742e-5]
short: 0.8571 short e: 8.5714e-001 short eng: 857.1429e-003 0.85714285714286 long: long e: 8.571428571428571e-001 hex: 3feb6db6db6db6db +: + rat : 6/7 bank : 0.86
0.0000 1.1742e-005 11.742e-006 0.00001174200000 1.174200000000000e-005
3ee89ff031112b32 + 3/255493 0.00
Obs. Os cálculos e valores armazenados são sempre em precisão dupla, independente do formato de saída utilizado. Prof. Adade
MATLAB BÁSICO Ajuda help: proporciona informação on-line sobre um tópico escolhido. Ex: help apresenta os diretórios no trajeto de busca ( “ path”) do MATLAB; help diretório mostra arquivo contents.m, a relação de funções no diretório; help função mostra as linhas de comentários que documentam a função
Menu ® Help (ajuda) on-line: Matlab Help, Using the Desktop, Demos/Examples
doc nome_da_função : acessa uma página de referência para a função.
Prof. Adade
MATLAB BÁSICO Comentários, Continuação % : indica que o restante da linha que o contém é um comentário. %{ : inicia um bloco-comentário (deve estar sozinho na linha que precede o comentário); %} : fecha um bloco-comentário (deve estar sozinho na linha que segue o comentário). Durante a execução, MATLAB ignora o que estiver dentro de um blococomentário, inclusive código de programa. Um bloco-comentário pode ser utilizado para comentar código no meio de um comando multilinha.
... ao fim de uma linha indica que ela não está terminada e o texto que segue em outra linha é de continuação. Prof. Adade
MATLAB BÁSICO Exportar e Importar Dados · MATLAB trabalha com dados em formato binário ou texto (ASCII). Também importa dados científicos no formato HDF (Hierarchical Data Format). · A maneira mais fácil de importar dados para o ambiente Matlab é utilizar o Import Wizard , iniciado pela opção (botão) Import Data do menu File (HOME) ou pela função uiimport. · As variáveis a importar de um arquivo podem ser selecionadas.
Prof. Adade
MATLAB BÁSICO Exportar e Importar Dados Funções save e load. save
: ocasiona que todas as variáveis sejam gravadas no arquivo matlab.mat, no diretório atual (Obs. arquivos .MAT, estrutura especial em formato binário).
load : restaura o espaço de trabalho a partir do
arquivo matlab.mat.
save b:TEMP X Y Z
/ load b:TEMP armazena/restaura as variáveis X, Y e Z no arquivo TEMP na unidade de disco b.
save FNAME a*
% Salva em FNAME as variáveis que iniciam com "a"
Esses comandos também possuem a opção de arquivos no formato ASCII; o resultado é gravado num arquivo de mesmo nome que a variável, no caso do comando save, e é carregado numa variável de mesmo nome que o arquivo, no caso do comando load . Prof. Adade
Os seguintes exemplos ilustram a sintaxe e opções dos comandos
save e load:
save/load nome-de-arquivo % salva/restaura o espaço de trabalho em/a partir de % arquivo .mat save nome-de-arquivo X, Y, Z -ascii % salva variáveis X, Y e Z em arquivo ASCII load nome-de-arquivo -ascii % carrega arquivo como ASCII save nome-de-arquivo W – append % acrescenta dados a um arquivo .mat existente Para denominar a variável com nome diferente daquele do arquivo, usar a construção: TAB = load ('b:dados.txt'), por exemplo. Nos sub-diretórios de MATLAB\EXTERN\ há um conjunto de subrotinas e programas para auxiliar a leitura/gravação de arquivos .mat por programas em C ou FORTRAN.
Documentar uma Sessão diary ('nome-do-arquivo')
Omitindo-se nome-do-arquivo as informações são gravadas no arquivo diary. Para desligar a opção, diary off ; para retomar, diary on. Alternativamente, usar print (opção do menu File). Prof. Adade
MATLAB BÁSICO Operações com Matrizes Transposta ' Exs:
A=[1
B = A' B=
x=
1 2 3
4 5 6
2
3; 4
5
6; 7
8
9]
7 8 9
x = [-2
0
1 ]'
-2 0 1 Para matrizes complexas esta operação retorna a transposta da conjugada; para se obter a transposta não conjugada de uma matriz A complexa, usar A .' ou conj(A'). Prof. Adade
MATLAB BÁSICO Adição + e Subtração Ex:
C=
C=A+B 2 6 10
6 10 14
10 14 18
Operandos devem ter a mesma dimensão, exceto quando um deles for um escalar, neste caso, o escalar é somado (ou subtraído) de todos os elementos do outro operando. Ex: y= -3 -1 0
y=x-1
Prof. Adade
MATLAB BÁSICO Multiplicação * Ex:
C = A * B
C= 14 32 50
32 77 122
50 122 194
Divisão / e \ X = A \ B =
inv (A) * B
X = B / A = B * inv (A) Se A não for quadrada: A*X=B
ou
X*A=B
no sentido de mínimos quadrados. Prof. Adade
MATLAB BÁSICO Potenciação ^ Seja A uma matriz quadrada e p um escalar. Então,
A ^ p = A *A*A * ... A ( se p for inteiro) A ^ p = V * D^ p * inv(V) , [V,D] = eig(A) (p qualquer) No caso em que a é um escalar e P uma matriz quadrada, a função de matriz a^P (cujo resultado é uma matriz de mesma dimensão de P) é calculada através dos autovetores e autovalores de P. Obs. X^P , X e P matrizes, não é definido. Prof. Adade
MATLAB BÁSICO Operações Elemento a Elemento Soma + e subtração - operam de forma convencional, elemento a elemento de um vetor ou matriz.
: ./ e .\ : .^ : .*
Exs:
z=
multiplicação divisão potenciação
x=[1 2 3] , y=[4 5 6] z = x .* y 4 10 18 Prof. Adade
MATLAB BÁSICO Exs.
z = x .\ y
z=
4.0000 z=
z=
2.5000
z = x ./ y 0.2500
2.0000
% elemento de x é dividido pelo elemento de y correspondente
0.4000
0.5000
z = x .^ y 1
32 729 z = 2 .^ [x
z=
% elemento de x divide elemento correspondente de y
2
4
8
16
y] 32
64 Prof. Adade
MATLAB BÁSICO Operações Relacionais < >= == ~=
menor do que menor do que ou igual a maior do que maior do que ou igual a igual não é igual a
A comparação é feita entre pares de elementos correspondentes e o resultado é uma matriz de uns e zeros, representando verdadeiro (1) e falso (0) na comparação. Exs: 2 + 2 ~= 4 ans = 0 a = [ 1 2 3] , b = [ 1 4 6 ] z = a >= b z= 1 0 0 Prof. Adade
MATLAB BÁSICO Exs.
x = [1.3 1.9 2.8 5.0 3.2 2.2 2.7 1.5 1.1 3.0]
Y = x(x
View more...
Comments