Matlab – curso básico (1)

38
MATLAB – CURSO BÁSICO Felipe Souza Amaral

Transcript of Matlab – curso básico (1)

Page 1: Matlab – curso básico (1)

MATLAB – CURSO BÁSICO

Felipe Souza Amaral

Page 2: Matlab – curso básico (1)

Provavelmente, a característica mais importante do MATLAB é a sua extensibilidade, que permite que engenheiros, matemáticos cientistas, e até mesmo você, contribuam para o enriquecimento.

MATLAB

Page 3: Matlab – curso básico (1)
Page 4: Matlab – curso básico (1)

Procure salvar seus arquivos com nomes diferentes das funções do Matlab.

Page 5: Matlab – curso básico (1)

Para sair do matlab: QUIT ou EXIT

Salvar variáveis: save save nome_do_arquivo.mat

Comando LOAD

Page 6: Matlab – curso básico (1)

Comando para ajuda:

HELP LOOKFOR: procura entre todas as funções doMATLAB a palavra-chave especificada

Page 7: Matlab – curso básico (1)

MATRIZES

Matriz pode ser qualquer expressão

Elementos individuais de uma matriz podem ser referenciados com seus respectivos índices entre parêntesis.

Page 8: Matlab – curso básico (1)

GERANDO VETORES

elemento_inicial : elemento_final

elemento_inicial : passo: elemento_final

Page 9: Matlab – curso básico (1)

MATRIZES DENTRO DE MATRIZES

É possível construir matrizes maiores a partir de matrizes menores.

Page 10: Matlab – curso básico (1)

MATRIZES DENTRO DE MATRIZES

Page 11: Matlab – curso básico (1)

EXERCÍCIOS

Page 12: Matlab – curso básico (1)

EXERCÍCIOS

2) Gerar os seguintes vetores:

a)X começa em 0, vai ate 15 com passo 1b)X começa em -3.4 vai até 8 com passo 0.32c)X começa em 10, vai até 1 com passo -1.23d)X começa em 0, vai até 15², passo 10*pi

Page 13: Matlab – curso básico (1)

Operações Elemento – por – Elemento

•Pode-se perceber que no segundo caso p que ocorreu foi: elemento a11 * b11 , a12 * b12 , a21* b21.

•Diferente do primeiro caso, onde ocorreu uma multiplicação de duas matrizes

Page 14: Matlab – curso básico (1)

Operadores Lógicos e Relacionais

Page 15: Matlab – curso básico (1)

Operadores e Manipulação de Matrizes

variável = A(comparação).

Page 16: Matlab – curso básico (1)

Exercicios

2) Extrair a partir do vetor x do exercício anterior:

a) elementos maiores que 5b) elementos diferentes de 3 e 5c) elementos iguais a 2 5 8 9d) elementos cujo resto da divisão por 3 é 1. Dica: utilize a função rem.

Dica: para resolver esse problema utilize comandos lógicos & e |

Page 17: Matlab – curso básico (1)

Algumas Funções

Dúvidas use o comando help

Page 18: Matlab – curso básico (1)

Representando Polinômios no MATLAB

X³– 6x² –72x – 27 -> escrita do polinômio

Escrita no Matlab

Page 19: Matlab – curso básico (1)

Funções Relacionadas à Polinômios

Page 20: Matlab – curso básico (1)

Exercicios

1) Sejam os polinômios p = x 4 – 3x 2 +5x – 30 e q = 2x 4 –7x 3 +2x –15. Calcule:

a) p x q

b) p / q

c) p(2)

d) raízes q

e) 1 ª derivada de p

g) 1 ª derivada de p q

f) 1 ª derivada de p no ponto x =3

Page 21: Matlab – curso básico (1)

Graficos 2D

Comando PLOT

Page 22: Matlab – curso básico (1)

TABELA DE CORES PARA PLOT

Tabelas

Page 23: Matlab – curso básico (1)

exemplo

Page 24: Matlab – curso básico (1)

Exercicios

Comandos: plot, title, xlabel, ylabel, axis, gtext, grid

Exercícios:1) Plote o gráfico das seguintes funções, no intervalo especificado:

a)y = x 3 –5x +2, x Î [-20;20] c) y = cos(e x ), x Î [0;20]

b) y = sin(x)*cos(x), x Î [-2p;p]

d) y = d(x 3 –5x + 2)/dx, x Î [0;10]

Page 25: Matlab – curso básico (1)

Gráficos 3-D

O MATLAB cria uma variedade de funções para gráficos em 3 dimensões. Entre elas:

Page 26: Matlab – curso básico (1)

Gráficos 3-D - Meshgrid

• O MATLAB define uma superfície do tipo mesh (rede) pelas coordenadas Z sobre um plano x-y.

• Superfícies tipo mesh são úteis para visualizar matrizes demasiadamente grandes.

• para plotar uma função de 2 variáveis z=f(x,y) é preciso:• gerar matrizes X e Y contendo linhas e colunas repetidas (domínio da função)• A função meshgrid transforma o domínio especificado por dois vetores x y em duas

matrizes X e Y.

Page 27: Matlab – curso básico (1)

f(x,y) = sen(x 2 + y 2 ) ½ / (x 2 + y 2 ) ½

Page 28: Matlab – curso básico (1)

Comando subplot: subplot(m,n,p) quebra a figura em m por n subgráficos e seleciona o p-ésimo como o atual.

Page 29: Matlab – curso básico (1)

Exercícios

Comandos: plot3, mesh, contour, surf, meshgrid, view, subplot, colormap

1) Plote as seguintes funções no intervalo especificado:

a)f(x,y) = x 2 + y 2 , x, y Î [-5;5]

b)f(x,y) = (1 - x 2 - y 2 ) ½ , x, y Î [-0.5;0.5]

c) f(x,y) = x × y , x, y Î [0;1]

d)f(x,y) = arctg(x 2 + y 2 ) , x, y Î [-8;8]

2) Plote os seis primeiros gráficos do item anterior na mesma figura.

Page 30: Matlab – curso básico (1)

PROGRAMAÇÃO

Outra grande vantagem do MATLAB é a facilidade para criar programas, da mesma forma que linguagens como o C, BASIC ou Fortran.

Page 31: Matlab – curso básico (1)

Controladores de Fluxo - FOR

O laço for permite um comando, ou grupo de comandos, repetir-se um número determinado de vezes. A forma geral de um laço for é:

for variável = expressãocomandos

end

Page 32: Matlab – curso básico (1)

Controladores de Fluxo - While

O laço while permite que o comando seja repetido um número indefinido de vezes, enquanto uma condição lógica seja satisfeita. A forma geral do laço while é:

while (expressão verdadeira)comandos

end

Page 33: Matlab – curso básico (1)

Controladores de Fluxo - IFO comando if estabelece caminhos alternativos para a fluência do programa. Sua forma geral é:

if condição verdadeiracomandos

elseif condição 2 verdadeira Comandos

elsecomandos

end

Controladores de Fluxo - IF

Page 34: Matlab – curso básico (1)

Arquivos M

Arquivos que contém comandos do MATLAB são chamados arquivos M porque possuem extensão .m.

Existem dois tipos distintos de arquivos: Scripts e Funções.

Page 35: Matlab – curso básico (1)

ARQUIVOS-FUNÇÃOUma função difere de um script já que argumentos podem ser passados para a função, e as variáveis criadas e manipuladas na função são locais para a mesma.

Na primeira linha de um arquivo função deverá aparecer a palavra function, definirá o nome da função.

Page 36: Matlab – curso básico (1)

1) Crie uma função que:

a) calcule a média de um vetor

b) calcule o produto de duas matrizes

Exercicios

Page 37: Matlab – curso básico (1)

E agora...?

Page 38: Matlab – curso básico (1)