matlab 6 otÍlia gerotto r12. o que é o matlab? - matlab (matrix laboratory) – software p/...
TRANSCRIPT
MATLAB 6
OTÍLIA GEROTTO
R12
O que é o Matlab?- MATLAB (Matrix Laboratory) – software p/ cálculo numérico e científico de visualização de alta performance.- Elementos Básicos: Matrizes que não requerem dimensionamento.- Mais rápido e eficiente que C, Basic, Pascal ou Fortran.
- TOOLBOXES:Grande coleção de funções para: otimização, manip.algébrica, redes neurais, process. Sinais, simul.sist.dinâmicos, etc.
Objetivos:
Resolver problemas matemáticos rápida e eficientemente;Fácil de ser usado;Problemas e soluções são expressos quase que da mesma maneira que no papel;Facilidade de transcrição de fórmulas matemáticas para serem usadas em computadores;Utilizado em aplicações matemáticas, engenharia e análises científicas;
Elementos Básicos do Matlab:
Escalares (matriz 1X1)Vetores: Linha e ColunaMatrizes bi e multidimensionaisVariáveis Reservadas: ans, pi, i, j, inf, version, flops, NaN, computerExpressões LógicasPolinômiosGráficos 2D e 3DProgramação e também o Help
Tipos de Dados:
INTEIRO : 5 COMPLEXO: ´i´ e ´j´ . Ex: -3i NOTAÇÃO CIENTÍFICA: -1.23e4 CHARACTER. Ex: ´ant´
Variáveis:
Alfanuméricas com até 32 caracteres; 1º caractere deve ser uma letra; Aceita ‘-’ no meio da variável; São sensíveis a maiúsculo e minúsculo;
Declaração de Variáveis:
Exemplos: >>vet_01=[0.1 -0.5 1] Vet_01 = 0.1000 -0.5000 1.000 >>Mat1=[1 2 3 4 5 6; 7 8 9 2 0 5] Mat1 =
1 2 3 4 5 6 7 8 9 2 0 5
nome-do-tipo :: lista-de-identificadores
Comando de Atribuição:
Variável = expressão
- Exemplos:
x = sin(5) y=1/3
Z=9.63973 w=1.602e-20
r = .0001 soma=3+2i
c = ‘ABC’
Expressões Aritméticas:
OPERADOR OPERAÇÃO
+ Adição
- Subtração
* Multiplicação Matricial
.* Multiplicação Escalar
/ Divisão Matricial
./ Divisão Escalar
.\ Divisão ‘esquerda’
^ Potência
.^ Potência escalar
´ Transposta
() Precedência
Funções Básicas:
Exp E Poly Polinômio característico
Log Logarritmo natural
Det Determinante
Log10 Log.base 10 Abs Valor absoluto
Find Indice não zero Sqrt Raiz quadrada
Max Máximo valor Real Parte real nº complexo
Min Mínimo valor Imag Parte imag.nºcomplexo
Mean Média aritmética
Conj Conjunto nº complexo
Std Desvio padrão Round
arredondar
Expressões Lógicas:
Operador Significado
< Menor que
<= Menor ou igual que
= = Igual
~= Não igual
> Maior que
>= Maior ou igual que
Operadores lógicos: & Para conjunção
| Para disjunção
~ Para a negação
Polinômios
Vetores de uma linha, com coeficientes ordenados em ordem descrescente.Ex: x³ - 6x² - 72x – 27
é representado da forma: > p=[1 –6 –72 27] p =
1 -6 -72 -27
Funções para Polinômios:
Roots -> raízes do polinômioPolyval -> valor do polinômio no pontoConv -> multiplicação polinômiosDeconv -> divisão de polinômiosPolyder -> derivadasoutras...
GRÁFICO 2D
PLOT : função básica para desenhar gráficos em duas dimensões.Ex: f(x) = sen(x), 0<x<2*pi fica:
>>x=[0:0.1:2*pi];>>plot(x,sin(x))Que resulta no seguinte gráfico:
Ex. de Gráfico 2D:
f(x) = sen(x)
Gráficos 3D: Podem ser: Curvas ou Superfícies Curvas:
plot3 – plota curvas em 3D contour – curvas de nível
Superfícies: surf, surfc, sufl – superfícies em 3D mesh, meshc – linhas em perspectivas 3D
Exemplo de um gráfico de curvas de uma hélice circular: t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t);
Ex. Gráfico 3D de curvas:
Um exemplo em 3 tempos: f(x,y) = sin(x/2).cos(y/3) -pi< x,y<pi
1). Se utilizarmos um gráfico 2D: x=[-pi:0.1:pi]; y=x; z=sin(x/2).*cos(y/3); plot(z)
(x,y,z são vetores linha de 1x63)
2). Gráfico 3D com curvasx=[-pi:0.1:pi];y=x;[x,y]=meshgrid(x,y);z=sin(x/2).*cos(y/3);plot3(x,y,z)
3). Gráfico 3D com superfíciesx=[-pi:0.1:pi];y=x;[x,y]=meshgrid(x,y);z=sin(x/2).*cos(y/3);mesh(z); (x,y,z são matrizes
63x63)
1).Utilizando-se plot (2D):
2).Utilizando-se meshgrid+plot3
3).Utilizando-se meshgrid+mesh
Programação:
Controladores de Fluxo Arquivos m : Scripts
matrizes extensas Comandos frequentemente digitados
Funções Função Funções
Controladores de Fluxo:1). FOR variável = expressão bloco de comandos
...
ENDEx:>For i=^1:10 v(i) = 3*i; endCria um vetor V com 10 elementos:1 6 9 12 15 18 21 24 27 30
Controladores de Fluxo....
2). WHILE (expressão verdadeira) bloco de comandos
...
ENDEx do cálculo do fatorial de n até n!< 10¹00>N=1; while prod(1:N)<1.e100 prod(1:N)
N=N+1; end> N = 70
Controladores de Fluxo....
3). IF condição verdadeira bloco de comandos ELSEIF condição2 verdadeira bloco de comandos ELSE bloco de comandos END
BREAK – termina um laçoINPUT - recebe dados do teclado.PAUSE - pausa na execução pgma até
que qq.tecla seja pressionada.PAUSE(n) – dá uma pausa de n segundos.
Controladores de Fluxo....
Arquivos m:
Automatizam uma sequência comandos.Úteis p/entrar com matrizes extensas.Podem ser criados a partir de qq.editor
de texto e são arquivos textos comuns.Três tipos de arquivos M: Scripts Funções Funções Função
Scripts:Quando chamado, o Matlab executa todos os comandos do arquivo. Ex arq. Fibonacci.m:
% Arquivo M que calcula prim.números de Fibonaccif= [1 1];I=1;while f(i) = f(i+1) < 1000
f(i+2) = f(i) + f(i+1); i = i+1;
end plot(f)
Para executar: somente fibonacci, fatorial, etc.
Gráfico do script fibonacci
Ex. de Script p/eq. 2o.Grau: Arquivo func2grau.m:
% plota uma funcao y=ax^2 + bx +c no intervalo -5<x<5clearaux='s';while aux=='s', clc a=input('a='); b=input('b='); c=input('c='); x=-5:0.1:5; y=a*x.^2+b*x+c; plot(y) figure(1) pause clc close aux=input('Plotar outro? (s/n) ==> ','s');end
Execução do script func2grau
Para executar: func2grau a=3 b=4 c=5 já é criado a figuraPlotar outro? (s/n) ==> n>>
Figura gerada pela execução:
Arquivos Função:
Uma função difere de um script porque argumentos podem ser passados p/ela.
Na prim.linha do arq. Deverá aparecer a palavra function que definirá o nome da função
Ex. arq. Função:function y= escal(a,b)% escal Produto escalar de dois vetoresif size(a) ~= size(b) error(´Erro: vetores tamanhos diferentes´)endy=sum(ª*b);
p/ executar: a=3; b=98; escal(a,b);> Ans = 294
Arquivos Funções Funções:As Funções Funções recebem strings que são nomes de funções.Ex. de algumas funções funções:
Fplot veja ex. Gráfico de uma função
Fzero Raíz de uma função
Quad veja ex. IntegraçãoNumérica
Fmin Mínimo de uma função
Ex. Função Fplot da função velocid
function v=velocid(t)% velocid velocidade de uma partícula num instante
tv=sin(t).*t.^2+8*t+1;
Agora usando a função função fplot> fplot(‘velocid’,[0,12])
Script que utiliza funções:% Nome desse script tvelocid.m% Script para rodar a funçao velocid x=0:0.5:12;y=velocid(x);figure(1)plot(x,y)title('Figura 01 com plot')pause% Script para rodar a funçao velocid utilizando-se a funcao funcao fplot figure(2)fplot('velocid',[0,12])title('Figura 02 com fplot')pause% Script da mesma funcao velocid, utilizando-se a funcao funcao quad
(integracao numerica)xint=quad('velocid',0,12)
Execução script tvelocid
>> tvelocid (nesse ponto foi gerada as 2 figuras com pause
entre elas)
xint =
453.2950
Resultado execução tvelocid
Bibliografia:
1. BALTHAZAR, J.Manoel, MATLAB Conceitos Básicos – UNESP – DEMAC, 2001
2. MATSUMOTO, Élia Yathie, Matlab6 Fundamentos Pgmação, 2001;
3. TODESCO, José Leomar, Curso Introdut. MATLAB – UFSC, 1995;