introducao ao matlab

94

Upload: fitocorrea9750

Post on 22-Nov-2014

109 views

Category:

Documents


4 download

DESCRIPTION

Uploaded from Google Docs

TRANSCRIPT

Page 1: Introducao ao Matlab

Introdução ao MATLAB

Introdução ao MATLAB

Rafaela Goulart de Andrade

Universidade Federal de Santa Catarina

Florianópolis, Maio de 2010

Page 2: Introducao ao Matlab

Introdução ao MATLAB

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 3: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 4: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

O que é o MATLAB?

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 5: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

O que é o MATLAB?

O que é o MATLAB?

MATrix LABoratory

Elemento básico de trabalho são matrizes.

Dentre as aplicações do software destacam-se:

matemática e computação;desenvolvimento de algoritmos;análise de dados;visualização de resultados;modelamento, simulação e prototipação;desenvolvimento de aplicativos.

Page 6: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

O que é o MATLAB?

Versões e Sistema Operacional

O MATLAB encontra-se atualmente na versão R2010a.

Esta versão encontra-se disponível para:

WindowsLINUXSun-SolarisMac OS

Page 7: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

O que é o MATLAB?

Comandos auxiliares

clear

clc

help

Page 8: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 9: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

Números

O MATLAB utiliza a seguinte notação para representarnúmeros:

sinal '-' para indicar número negativo;'.' para indicar casa decimal;'e' para indicar notação cientí�ca;'i' e 'j' para notação de números complexos.

A variável 'ans' é reservada para armazenar o resultado daúltima operação executada na linha de comando.

Page 10: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

Números

Exemplo:>> -1.5

ans =

-1.5000

>> 3e-5

ans =

3.0000e-005

>> 2-5i

ans =

2.0000 - 5.0000i

Page 11: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

Formato de exibição dos números

>> format tipo

tipo Formato Exemplo (pi)

format short precisão simples 3.1416format long precisão dupla 3.14159265358979format short e precisão simples E 3.1416e + 000format long e precisão dupla E 3.141592653589793e + 000format hex hexadecimal 400921fb54442d18format bank duas casas decimais 3.14format rat quociente 355/113format + sinal + ou -

Page 12: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

Constantes

Constante Valores - números em ponto �utuante com precisão dupla

pi 3.14159265358979 (4*atan(1))eps 2.220446049250313e..016 (precisão numérica relativa)realmim 2.225073858507201e..308 (menor número real)realmax 1.797693134862316e + 308 (maior número real)Inf in�nito (exemplo: 1÷ 0)NaN not-a-number (não-número, por exemplo: 0÷ 0)

Page 13: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

Matrizes e Vetores

`[' indica início da de�nição da matriz;

`]' indica �nal da de�nição da matriz;

` ' ou `,' separa elementos da mesma linha;

`;' encerra de�nição de linha.

Page 14: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

Matrizes e Vetores

Exemplo:

Vetor Linha: 1 x 3:

>> [1 2 3]

ans =

1 2 3

Vetor Coluna: 3 x 1:

>>[1; 2; 3]

ans =

1

2

3

Page 15: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Números, Vetores e Matrizes

Matrizes e Vetores

Exemplo:

>> mat_2_x_3 = [1 2 3; 4 5 6]

mat_2_x_3 =

1 2 3

4 5 6

>> mat_4_x_2 = [1 2; 3 4; 5 6; 7 8]

mat_4_x_2 =

1 2

3 4

5 6

7 8

Page 16: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Operadores

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 17: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Operadores

Soma e Subtração

Soma `+':

>> a+b

ans =

6 8

10 12

Subtração `-':

>> a-b

ans =

-4 -4

-4 -4

Page 18: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Operadores

Multiplicação

Multiplicação Matricial `*':

>> a*b

ans =

19 22

43 50

Multiplicação Escalar `.*':

>> a.*b

ans =

5 12

21 32

Page 19: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Operadores

Divisão

Divisão Matricial `/' (a/b equivale a a ∗ b−1):

>> a/b

ans =

3.0000 -2.0000

2.0000 -1.0000

Divisão Escalar `./':

>> a./b

ans =

0.2000 0.3333

0.4286 0.5000

Page 20: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Operadores

Potência

Potência (matriz � escalar) `� ' (a � 3 equivale a a*a*a):

>> a^3

ans =

37 54

81 188

Potência Escalar `.� ' (elemento a elemento):

>> a.^b

ans =

1 64

2187 65536

Page 21: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Funções

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 22: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Funções

Sintaxe

[Saida1, ..., SaidaN] = Funcao(Entrada1, ..., EntradaM)

Page 23: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Funções

Funções Trigonométricas

>> x = 0.5;

>> v = [0 1];

>> sin(x)

ans =

0.4794

>> cos(v)

ans =

1.0000 0.5403

Page 24: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Funções

Funções Matemáticas

>> x = 0.5;

>> v = [0 1];

>> sqrt(x)

ans =

0.7071

>> exp(v)

ans =

1.0000 2.7183

>> log(v)

ans =

-Inf 0

Page 25: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Funções

Funções Matriciais

>> a = [2 3; 5 -8]

ans =

2 3

5 -8

>> a'

ans =

2 5

3 -8

>> det(a)

ans =

-31

>> inv(a)

ans =

0.2581 0.0968

0.1613 -0.0645

Page 26: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 27: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Concatenação

Concatenação por linha:

>> a = [1 2; 3 4]

a =

1 2

3 4

>> b = [10 20 30; 40 50 60]

b =

10 20 30

40 50 60

Page 28: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Concatenação

Concatenação por coluna:

>> d = [1 2 3]

d =

1 2 3

>> e = [d; b]

e =

1 2 3

10 20 30

40 50 60

>> c = [a b]

c =

1 2 10 20 30

3 4 40 50 60

Page 29: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Indexação

Indexação;

O operador�:� para blocos;

O operador �:� para seleção de colunas/linhas;

Comando end ;

Vetores sequenciais(a:passo:b);

Page 30: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Indexação

>> a=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15];

Elemento da 2a linha e 4a coluna da matriz a:

>> a(2,4)

ans =

9

Criar b com os elementos da 2a a 4a coluna da 2a linha damatriz a:

>> a(2,2:4)

ans =

7 8 9

Page 31: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Indexação

>> a=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15];

Criar d com todos os elementos da 1a linha da matriz a:

>> d = a(1,:)

d =

1 2 3 4 5

Criar e com todos os elementos da 2a linha da matriz a, apartir da 2a coluna:

>> e = a(2,2:end)

e =

7 8 9 10

Page 32: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Indexação

>> a=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15];

Exercício:

Dada a matriz a acima, criar uma matriz f2×2 com a 1a linhacomposta pelos 3o e 10o elementos de a, e a 2o linha pelos 5o e 12o

elementos.

>> f = [ a(3) a(10); a(5) a(12)]

f =

11 4

7 14

Page 33: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Indexação

>> a=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15];

Exercício:

Dada a matriz a acima, criar uma matriz f2×2 com a 1a linhacomposta pelos 3o e 10o elementos de a, e a 2o linha pelos 5o e 12o

elementos.

>> f = [ a(3) a(10); a(5) a(12)]

f =

11 4

7 14

Page 34: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Indexação

>> a=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15];

Exercício:

Dada a matriz a acima, criar uma matriz g com a 1a e a 3a linha damatriz a.

>> g = a(1:2:3,:)

g =

1 2 3 4 5

11 12 13 14 15

>> g = [a(1,:);a(3,:)]

g =

1 2 3 4 5

11 12 13 14 15

Page 35: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Indexação

>> a=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15];

Exercício:

Dada a matriz a acima, criar uma matriz g com a 1a e a 3a linha damatriz a.

>> g = a(1:2:3,:)

g =

1 2 3 4 5

11 12 13 14 15

>> g = [a(1,:);a(3,:)]

g =

1 2 3 4 5

11 12 13 14 15

Page 36: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Funções Matriciais Elementares

eye - Matriz Identidade

zeros - Composta por 0

ones - Composta por 1

rand - Composta por números aleatórios (distribuiçãouniforme)

randn - Composta por números aleatórios (distribuição normal)

randint - Composta por números aleatórios (valores inteiros)

Page 37: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Manipulação de Matrizes

Álgebra Linear

det - Calcula o determinante da matriz;

inv - Calcula a inversa da matriz;

rank - Calcula o posto da matriz;

size - Informa o número de linhas e colunas da matriz;

numel - Informa o número de elementos da matriz;

Page 38: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Exercícios

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 39: Introducao ao Matlab

Introdução ao MATLAB

Dia 1: Comandos Básicos

Exercícios

Exercícios - 1o Dia

Criar um vetor com os números pares entre 2 e 100;

Criar um vetor com os números ímpares entre 1 e 99;

Calcular a expressão ln(2 + t + t2) onde t é um vetor;

Criar uma matriz5x5 com entradas aleatórias no intervalo[-3,10] e escolher um bloco3x2 dela.

Page 40: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 41: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Strings

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 42: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Strings

Construção

Todos os caracteres de �strings� são colocados entre apóstrofo. OMATLAB considera toda �string� como um vetor linha com 1elemento para cada caracter. Por exemplo:

>> mensagem = 'Curso de MATLAB';

Page 43: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Strings

Construção

Para criar um vetor coluna com �strings� em cada linha, cada texto�string� deve ter exatamente o mesmo número de caracteres. Porexemplo o comando:

>> nomes = ['Maria'; 'Laura'; 'Carla'; 'Pedro']

Page 44: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Strings

O comando char

O comando char converte �strings� para uma matriz, preenchendoos espaços em branco de cada linha automaticamente.

>> oi = char('Hi', 'Hello', 'Namaste')

Page 45: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 46: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

O comando disp

>> disp(['O valor de x é: ', num2str(x)])

Page 47: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

Funções para a manipulação de strings

Comando Descrição

char converte strings para uma matrizabs converte caracteres para a tabela ASCIInum2str converte número para textosischar verdadeiro (=1) para uma seqüência de caracteresisletter verdadeiro (=1) para um caracter alfabéticoisstring verdadeiro (=1) se o argumento é um textomat2str converte uma matriz para uma stringlower converte letras maiúsculas em letras minúsculasupper converte letras minúsculas em letras maiúsculasstrcmp compara duas matrizes e retorna 1 se forem iguaisstrncmp compara os primeiros n caracteres de uma dada string.

Page 48: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

Substituição de strings

>> s1='Este é um bom exemplo';

>> strrep(s1,'bom','péssimo')

>> ans =

Este é um péssimo exemplo

Page 49: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

O comando deblank

>> A{1,1} = 'MATLAB ';

>> A{1,2} = 'SIMULINK ';

>> A

A =

'MATLAB ' 'SIMULINK '

>> deblank(A)

ans =

'MATLAB' 'SIMULINK'

Page 50: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

sprintf

Gera cadeia de caracteres a partir de dado numérico formatado:sprintf('X = %Δ e Y = %Δ',a,b)

Δ Tipo da Variável

s strings

d decimal

f notação de ponto �xo

>> sprintf('X = %.3f e Y = %.4f',a,b)

Page 51: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

sprintf

sprintf('X = %d e Δ Y = %d',a,b)onde Δ pode ser:

Δ Descrição

∖t Tabulação

∖n Nova linha

∖∖ ∖%% %

Page 52: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Manipulando Strings

Exercícios

Crie um arquivo �.m� que receba 2 valores (x e y) e retorne aseguinte frase: �O valor da soma de `valor de x' com `valor dey' é `resultado' ;

Crie um arquivo �.m� que receba uma string com 5 números(ex: '1 2 3 4 5'), multiplique todos os números e retorne aseguinte frase: �O resultado da multiplicação dos números`exibir string' é `resultado' ;

Page 53: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 54: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Plotando Grá�cos

Comando �plot�;

Adicionar cores e formas;

Adicionar textos;

Comando �hold on�;

Page 55: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Exemplo

>> X = [0 1 2 3 4 5 6 7 8 9 10];

>> Y = X.^2;

>> plot(X,Y)

Page 56: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Exercícios

Plotar a função seno com período �;

Plotar as funções x , x3 e ex2no intervalo 0 < x < 4;

Page 57: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Cores e Formas

Sintaxe:� plot(X,Y,'comando')

TABELA DE CORES

Comando Cor

b azul

g verde

r vermelho

c ciano

m magenta

y Amarelo

k Preto

Page 58: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Cores e Formas

Sintaxe:>> plot(X,Y,'comando')

TABELA DE TIPOS DE PONTOS

Comando Tipo de Ponto Comando Tipo de Ponto

. ponto v triângulo(para baixo)

o círculo ∧ triângulo(para cima)

x X < triângulo)(para esquerda)

+ + > triângulo (para direita)

* asterisco p pentágono

s quadrado h hexágono

d losango

Page 59: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Cores e Formas

Sintaxe:� plot(X,Y,'comando')

TABELA DE TIPOS DE LINHAS

Comando Tipo de Linha

- linha cheia

: pontilhado

-. traço e ponto

� tracejado

sem especi�car sem linha

Page 60: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Textos

title

Utilidade: Insere título.Sintaxe: >> title('Título do Gráfico')

xlabel e ylabel

Utilidade: Insere nomes nos eixos X e Y.Sintaxe: >> xlabel('Nome do Eixo X')

text

Utilidade: Insere texto no grá�co.Sintaxe: >> text(X,Y,'Texto')

gtext

Utilidade: Insere texto no grá�co com clique do mouse.Sintaxe: >> gtext('Texto')

Page 61: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Textos

title

Utilidade: Insere título.Sintaxe: >> title('Título do Gráfico')

xlabel e ylabel

Utilidade: Insere nomes nos eixos X e Y.Sintaxe: >> xlabel('Nome do Eixo X')

text

Utilidade: Insere texto no grá�co.Sintaxe: >> text(X,Y,'Texto')

gtext

Utilidade: Insere texto no grá�co com clique do mouse.Sintaxe: >> gtext('Texto')

Page 62: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Textos

title

Utilidade: Insere título.Sintaxe: >> title('Título do Gráfico')

xlabel e ylabel

Utilidade: Insere nomes nos eixos X e Y.Sintaxe: >> xlabel('Nome do Eixo X')

text

Utilidade: Insere texto no grá�co.Sintaxe: >> text(X,Y,'Texto')

gtext

Utilidade: Insere texto no grá�co com clique do mouse.Sintaxe: >> gtext('Texto')

Page 63: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Textos

title

Utilidade: Insere título.Sintaxe: >> title('Título do Gráfico')

xlabel e ylabel

Utilidade: Insere nomes nos eixos X e Y.Sintaxe: >> xlabel('Nome do Eixo X')

text

Utilidade: Insere texto no grá�co.Sintaxe: >> text(X,Y,'Texto')

gtext

Utilidade: Insere texto no grá�co com clique do mouse.Sintaxe: >> gtext('Texto')

Page 64: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Exemplo

% - Procedimento que gerar gráficos sobrepostos

x = linspace(0,2*pi,100); % Cria o vetor x de 0 a 2*pi com

% 100 posições.

y1 = sin(x); % Calcula y1.

y2 = x; % Calcula y2.

y3 = x-(x.^3)/6+(x.^5)/120; % Calcula y3.

plot(x,y1) % Desenha (x,y1) com uma

% linha sólida.

hold on

plot(x,y2,'r--') % Desenha (x,y2) como uma

% linha tracejada vermelha.

hold on

plot(x,y3,'go') % Desenha (x,y3) com círculos verde.

axis([0 5 -1 5]) % Ajusta os eixos do gráfico.

xlabel('x')

ylabel('Aproximação do sen(x)')

legend('sin(t)','Aprox. linear','Aprox. de 5a ordem')

Page 65: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Exemplo

Page 66: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Bidimensionais

Alguns Grá�cos Especí�cos em 2D

area cria uma área preenchidabar cria um grá�co de barrasbarh cria um grá�co de barras horizontaiscomet faz uma animação 2Dcompass cria um grá�co de vetores para números complexoscontour faz um grá�co de curvas de nívelcontourf faz um grá�co de curvas de nível preenchidaserrorbar desenha um grá�co com barras de errofeather faz um grá�co do vetor velocidade�ll desenha um polígono preenchido com uma cor especi�cadafplot desenha uma função de uma única variável.hist faz um histograma

Page 67: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Tridimensionais

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 68: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Tridimensionais

Funções mais comuns

plot3 plot curvas no espaço

stem3 cria dados discretos na plotagem fatiados

bar3 desenha grá�cos 3D em barras

bar3h idem acima para barras horizontais

pie3 desenha o grá�co de pizza 3D

comet3 faz animação grá�ca para grá�cos 3D

�ll3 desenha �guras 3D preenchidas

contour3 faz os contornos de um grá�co 3D

guiver3 desenha vetores de campo em 3D

scatter3 faz grá�cos 3D espalhados

mesh desenha superfície

surf desenha superfície em 3D (igual ao mesh, porém preenchido)

slice desenha uma superfície volumétrica em pedaços

waterfall cria um grá�co em forma de cachoeira

cylinder cria um cilindro

sphere cria uma esfera

Page 69: Introducao ao Matlab

Introdução ao MATLAB

Dia 2: Strings e Grá�cos

Grá�cos Tridimensionais

O comando peaks

>> [x, y z] = peaks;

>> surf(x,y,z)

Page 70: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 71: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Lógica Booleana

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 72: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Lógica Booleana

Lógica Booleana

Símbolo Teste

== Igual∼= Diferente< Menor que> Maior que<= Menor ou igual>= Maior ou igual

Page 73: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Lógica Booleana

Lógica Booleana

Símbolo Operador

∼ Negação& E| OU

Page 74: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 75: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

if, elseif, else

if <Exp. Bool><Expressão>

end

Page 76: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

if, elseif, else

if <Exp. Bool.1><Expressão1>

else<Expressão2>

end

Page 77: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

if, elseif, else

if <Exp. Bool.1><Expressão1>

elseif <Exp. Bool.2><Expressão2>

else<Expressão3>

end

Page 78: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

Exercícios

Fazer uma função que diz se um número dado é par ou ímpar(dica: usar a função mod).

Fazer o mesmo do item anterior só que imprimir se o númerodigitado deixa resto 0, 1 ou 2 na divisão por 3;

Page 79: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

switch, case, otherwise

switch <Variavel_teste>case <Expr_case1><Expressão1>

case <Expr_case2><Expressão2>...

case <Expr_caseN><ExpressãoN>

otherwise<Expressão>

end

Page 80: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

Exercícios

Fazer uma função que, dependendo de uma variável, calcula ovalor de uma função num ponto ou sua derivada no ponto.

Fazer uma função que gera a sequência de Fibonacci até on-ésimo termo(onde n é a variável de entrada).

Page 81: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

while

while <Expr_Bool><Expressão1>...<ExpressãoN>

end

Page 82: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

Exercícios

Fazer uma função para que uma mensagem seja exibida umcerto número de vezes.

Fazer uma função para calcular o fatorial de um número.

Page 83: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

for

for <Variavel> = <Inicio>:<Incremento>:<Fim><Expressão1>...<ExpressãoN>

end

Page 84: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

Exercícios

Triângulo de Pascal:

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

Regra de formação: A(i,j) = A(i-1,j-1) + A(i-1,j).Dica: Criar uma matriz triângular inferior.

Page 85: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Estruturas de seleção e repetição

Exercícios

function A = triang_pascal(n)

A = eye(n);A(:,1) = 1;

for i = 3:nfor j = 2:i-1

A(i,j) = A(i-1,j-1) + A(i-1,j);end

end

Page 86: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Introdução ao Symbolic Math Toolbox

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 87: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Introdução ao Symbolic Math Toolbox

O que é

O Symbolic Math Toolbox é constituído de quase duzentas funçõesque executam operações de matemática algébrica e simbólicadentro do ambiente MATLAB, separadas nas seguintes áreas:

Áreas Tópicos

Cálculo Funções, derivação, integração, limitesÁlgebra Simpli�cações, substituiçõesÁlgebra Linear Determinante, inversa, autovalor, autovetorSoluções de Equações Equações algébricas, simbólicas, diferenciasTransformadas Fourier, Laplace, Z, inversas

Page 88: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Introdução ao Symbolic Math Toolbox

Cálculo

Derivada e derivada parcial:

>> syms x

>> syms y

>> diff(x^2*cos(x))

ans =

2*x*cos(x) - x^2*sin(x)

>> diff(x^2*cos(y),x)

ans =

2*x*cos(y)

Page 89: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Introdução ao Symbolic Math Toolbox

Cálculo

Integral:

>> syms x

>> syms y

>> int(x^2*cos(x))

ans =

x^2*sin(x) - 2*sin(x) + 2*x*cos(x)

>> int(x^2*cos(y),0,pi)

ans =

(-2)*pi

>> int(x^2*cos(y),y)

ans =

x^2*sin(y)

Page 90: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Introdução ao Symbolic Math Toolbox

Soluções de Equações

solve: Resolve equações simbólicas

>> syms x

>> r = solve(x^3-6*x^2+11*x-6)

r =

1

2

3

Page 91: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Introdução ao Symbolic Math Toolbox

Soluções de Equações

>> syms x

>> syms y

>> s = solve(x^2+y^2-1,x-y)

s =

x: [2x1 sym]

y: [2x1 sym]

>> s.x

ans =

2^(1/2)/2

-2^(1/2)/2

>> s.y

ans =

2^(1/2)/2

-2^(1/2)/2

Page 92: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Aplicações

1 Dia 1: Comandos BásicosO que é o MATLAB?Números, Vetores e MatrizesOperadoresFunçõesManipulação de MatrizesExercícios

2 Dia 2: Strings e Grá�cosStringsManipulando StringsGrá�cos BidimensionaisGrá�cos Tridimensionais

3 Dia 3: Lógica Booleana, Estruturas e MétodosLógica BooleanaEstruturas de seleção e repetiçãoIntrodução ao Symbolic Math ToolboxAplicações

Page 93: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Aplicações

Ferramentas

A função feval.

Page 94: Introducao ao Matlab

Introdução ao MATLAB

Dia 3: Lógica Booleana, Estruturas e Métodos

Aplicações

Opções

Métodos para aproximar raízes de funções:Método de Newton-Raphson;Método da Secante.

Resolução de Sistemas Lineares:Fatoração LU.

Integração Numérica:Método dos Trapézios;Método de Simpson;Quadratura de Gauss.

Resolução de PVI:Método de Euler;Método da Runge-Kutta.