Upload
fitocorrea9750
View
109
Download
4
Embed Size (px)
DESCRIPTION
Uploaded from Google Docs
Citation preview
Introdução ao MATLAB
Introdução ao MATLAB
Rafaela Goulart de Andrade
Universidade Federal de Santa Catarina
Florianópolis, Maio de 2010
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
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
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
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.
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
Introdução ao MATLAB
Dia 1: Comandos Básicos
O que é o MATLAB?
Comandos auxiliares
clear
clc
help
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
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.
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
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 -
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)
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.
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
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
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
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
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
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
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
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
Introdução ao MATLAB
Dia 1: Comandos Básicos
Funções
Sintaxe
[Saida1, ..., SaidaN] = Funcao(Entrada1, ..., EntradaM)
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
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
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
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
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
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
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);
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
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
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
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
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
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
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)
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;
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
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.
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
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
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';
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']
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')
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
Introdução ao MATLAB
Dia 2: Strings e Grá�cos
Manipulando Strings
O comando disp
>> disp(['O valor de x é: ', num2str(x)])
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.
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
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'
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)
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
∖∖ ∖%% %
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' ;
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
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�;
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)
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;
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
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
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
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')
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')
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')
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')
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')
Introdução ao MATLAB
Dia 2: Strings e Grá�cos
Grá�cos Bidimensionais
Exemplo
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
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
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
Introdução ao MATLAB
Dia 2: Strings e Grá�cos
Grá�cos Tridimensionais
O comando peaks
>> [x, y z] = peaks;
>> surf(x,y,z)
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
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
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
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
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
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
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
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
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;
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
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).
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
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.
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
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.
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
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
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
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)
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)
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
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
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
Introdução ao MATLAB
Dia 3: Lógica Booleana, Estruturas e Métodos
Aplicações
Ferramentas
A função feval.
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.