Curso MATLAB 6 - PowerPoint PPT Presentation

About This Presentation
Title:

Curso MATLAB 6

Description:

Curso MATLAB 6 Instrutor: Marcelo Escobar Introdu o escobar029_at_hotmail.com Introdu o a Programa o: Algoritmo: Linguagem MATLAB: Janelas MATLAB: Tipos de ... – PowerPoint PPT presentation

Number of Views:57
Avg rating:3.0/5.0
Slides: 36
Provided by: rhoden
Category:
Tags: matlab | curso

less

Transcript and Presenter's Notes

Title: Curso MATLAB 6


1
Curso MATLAB 6
Instrutor Marcelo Escobar Introdução escobar029_at_h
otmail.com
2
Introdução a Programação
Processamento
Entradas
Saídas
Dados Fornecidos ao Programa Argumentos
de Entrada
Lógica de Programação Algoritmo Linguagem Seqüên
cia de comandos
Dados Fornecidos pelo Programa Argumentos
de Retorno
Ex Dados ???
Retornar x1, x2, x3

menor Valor
3
Algoritmo
Sequência de Passos Lógicos Independente da
Linguagem. Dados x1, x2, x3 Ler x1 Comparar x1
e x2 Se x1 lt x2, min x1 Se x2 lt x1, min
x2 Comparar min e x3 Se minltx3 , minmin Se x3
ltmin,minx3 Retornar min Obs Dúvidas?
Referências/Lógica de Programação no CD rom
4
Linguagem MATLAB
Núcleo da Linguagem formada por vetores e
Matrizes. Recursos de Programação. Ferramenta
de Interface Gráfica com o Usuário. Caixas de
Ferramentas. Comand Window área de
trabalho gtgtdemo apresenta uma série de
demonstrações de uso gtgttour apresenta um
tour pelo matlab
5
Janelas MATLAB
Comand Window Área de Trabalho. Comand History
Registro de Comandos executados na C.W. Current
Directory Mostra Arquivos presentes no Diretorio
Atual. Worspace Armazenamento de Variáveis
criadas na Comand Window. M-file Editor Área de
Edição de arquivos. Launch Pad Caixas de
Ferramentas do matlab. Simulink Ferramenta do
Matlab para Sistemas Dinâmicos.
6
Tipos de Variáveis
Real , Inteira double array- variáveis
numéricas. Complexa double array
(complex)-variáveis numéricas. Caracter Char
array-variáveis de texto. Célula cell
array-Permite armazenamento de variáveis de tipos
diferentes no formato celular do
Matlab. Estrutura struct array-Permite
armazenamento de variáveis de tipos diferentes no
formato estrutural do Matlab.
7
Formato de Variáveis Numéricas
gtgthelp format gtgtformat short 5
dígitos gtgtformat short e 5 dígitos
expoente gtgtformat long 16
dígitos gtgtformat long e 16 dígitos
expoente gtgtformat positivo, negativo ou
0 gtgtformat rat Aproximação racional
8
Comandos do MATLAB
Na comand Window ( gtgt sinal de prompt
) gtgthelpdesk documentação gtgthelpwin help on
line gtgt help lista os tópicos de ajuda Ex
gtgthelp elfun funções matemáticas Fornece uma
listagem de funções. Para verificar o
funcionamento de cada função Exgtgthelp sin
sin(X) is the sine of the elements of X. De
maneira Geral saída1,...,saídancomando(entrad
a1,...,entradan) lookfor procura de comandos
com alguma palavra.
9
Primeiros Passos
Após abrir o Matlab e fazer um reconhecimento
geral, a primeira coisa a se fazer após editar as
suas preferências, é selecionar o diretório de
trabalho. Caso isso não seja feito, o Matlab
salva os arquivos na pasta Work dentro do
diretorio no qual o Matlab se encontra instalado.
Como mudar o Diretório? Opção 1 Na barra de
ferramentas, em current directory, clicar no
botão ... e selecionar o diretorio como no
explorer. Opção 2 usando o comando cd e
digitar todo o caminho do diretorio, lembrando
que nesse caso, não deve haver espaços nem
caracteres especiais. help cd. gtgtcd
c\meus_documentos
10
Como criar Variáveis
Atribuição x Equivalência Ex
gtgtA2 atribui a A o valor numérico 2
gtgtA2A2 ?, retorna 1 se verdadeiro e 0 se
falso Matlab é case Sensitive. Variável A é
diferente de a Caso não se forneça o nome da
variável de atribuição, o Matlab cria uma
variável chamada ans.answer. Se a variável já
existe, o matlab armazena sempre a ultima
atribuição feita. Deve-se evitar dar nomes às
variáveis usando nomes de comandos internos do
matlab ou usando variáveis especiais que
controlam o fluxo da programação. O nome da
variável deve começar por uma letra e não deve
conter caracteres especiais nem espaço.
11
Como criar Variáveis
Variáveis Especiais For end if while function
elseif case otherwise switch continue else try
catch global persistent break Dica Para saber
se o nome da variável é um comando interno do
matlab, basta dar um gtgthelp nome da
variável. Caso não seja, o matlab retorna uma
mensagem dizendo que a variável nome não foi
encontrada. Comandos de Gerenciamento gtgt help
general Who lista as variaveis atuais Whos
lista as variaveis atuais com seus respectivos
tipos. What lista os arquivos no diretorio
atual. Cd seta o diretorio. Pwd retorna o
caminho do diretorio atual em uma
variável. Clear limpa as variaveis atuaisclear
all Clc limpa a tela de comando sem deletar as
variaveis. Close all fecha as janelas de figuras
abertas.
12
Como criar Variáveis
Execução de comandos -no final do comando
executa e não exibe resultado. ,-permite a
execução de dois comandos na mesma linha,
lembrando que eles são executados
seqüencialmente. CrtlC -interrompe a execução
do comando, usado no caso de travamento durante a
execução. -retorna as linhas executadas
anteriormente. -indica comentário ...-permite
continuação de escrita do comando na linha
seguinte ex A2.1B3A Comandos de
Dimensionamento length dimensão do vetor size
dimensão da matriz
13
Vetores
Criando um vetor Opção 1 gtgt C1 2 3 4 5 ou gtgt
C1 ,2 ,3 ,4 ,5 Opção 2 Usando comando
linspace, ou logspace. linspace(valor inicial,
valor final, número de pontos) linspace cria um
vetor linearmente espaçado. gtgtClinspace(1,5,5) Op
ção 3 gtgtC115 Valor inicial incremento valor
final Opção 4 Usando estrutura for For
i15 C(i)i end Obs gtgtA2 O matlab encara a
variável A como uma matriz 1x 1.

14
Manipulação de Vetores

Operações Básicas , - , ,/, Operações Ponto
a Ponto ./, ., . Transposição C transposta
de C-usa aspas simples Operações
elementares Log exp sin cos tan etc... gtgthelp
elfun Ex gtgt a 1 2 3 b 4 5 6 gtgt
a.b gtgtab
15
Matrizes
Como criar Opção 1 a partir de vetores C 2
3D 3 4 MCD Opção 2 M 2 3 3 4 ou
M 2,3 3, 4 Opção 3 usando estrutura for For
i12 For j12 M(i,j)ij end end gtgthelp
printmat exibição da matriz na tela

16
Manipulação de Matrizes
Além das operações já citadas anteriormente para
vetores. gtgthelp elmat gtgthelp matfun gtgthelp
sparfun Produto Matricial AB Inversa
inv(A) Determinante det(A) Posto
rank(A) Valores Caracteristicos eig(A) rand ,
eye, zeros, ones- criam matrizes de ordens
definidas.

17
Indexação de Matrizes
M(linha, coluna) M(1,1)- retorna elemento
M11 Caso não seja especificado a coluna da
matriz, o que não é necessário no caso de
vetores, ele considera o vetor coluna 1. Ex A
1 2 3 4 A(1)1 A(2)3 Pode-se também usar
incrementos C 1 2 3 4 5 6 C(12,2)2 5
C(1,123)1 3 C(1,23)2 3 C(,3)3
6 indica todas as linhas ou colunas.
18
Matrizes Celulares
Opção 1 Criando matriz celular vazia e depois
preencher Mcell( num linhas, num colunas),
Mcell(2,3) Opção 2 Preencher direto M(1,1)
1 2 3 4 Indexação de posições celulares M
linha 1, coluna j M1,2 1 2 3
4 Indexando elemento internos das
células M1,2(2,1)3 gtgtcellpisp exibe toda a
célula Utilizada para armazenar variáveis
matriciais ou de diferentes tipos com fácil
indexação.
19
Estruturas
Como criar? Variável Marcelo Marcelo.idade25 Mar
celo.peso70 Marcelo.altura1.70 Variável
utilizada para armazenar variaveis de tipos
diferentes de uma forma estruturada. Utilizada
por exemplo em Banco de dados com fácil acesso de
informações.
20
Variáveis de Texto
Como criar? Dvalores E resultados
obtidos gtgtdisp(D) exibe o texto contido em
D gtgteval(D) avalia o conteúdo do
string. Ex gtgtTD2 gtgteval(T) cria a variável
D. Concatenação Str valor D Vamos ver
melhor para que a concatenação em interfaces.
21
Conversão de Variáveis
gtgthelp datatypes gtgthelp strfun gtgtChar
converte para caracter gtgtDouble converte
para número gtgtint2str converte de inteiro
para string gtgtstr2int converte de string para
inteiro gtgtnum2str converte de real para
string gtgtstr2num converte de string para
real
22
Funções de Arredondamento
gtgthelp elmat gtgthelp fix Arredonda na
direção do zero gtgthelp floor Arredonda na
direção de -oo gtgthelp ceil Arredonda na
direção de oo gtgthelp round na direção do
inteiro mais próximo gtgthelp rem resto
de divisão gtgthelp abs modulo gtgthelp
singn sinal
23
Operações Relacionais e Lógicas
gtgthelp ops Operadores Relacionais lt - menor
que lt -menor ou igual gt - maior que gt -maior ou
igual - equivalência -diferente Operadores
lógicas -e -ou -não
24
Operações Relacionais e Lógicas
Retornam sempre 1 se verdadeiro e 0 se
falso Exemplos v 1 -2 3 -4 5 Vgt0 1 0 1 0
1 (Vgt0) (Vlt4) 1 0 1 0 0 (V1) (Vlt0)
1 1 0 10 (Vlt0) 10 10 1 Comando
find nfind(vgt0) Ou n,mfind(vgt0) N-linha M-col
una Encontra os índices da matriz que satisfazem
operações relacionais e lógicas.
25
Funções Relacionais e Lógicas
Retornam sempre 1 se verdadeiro e 0 se
falso. xor ou any qualquer all
todos isreal verdadeiro se
real iscomplex verdadeiro se
complexo isprime verdadeiro se
primo isifinite verdadeiro se
infinito isnan verdadeiro se não é um
número
26
Controle de Fluxo
gtgthelp lang Teste condicional If else
end Teste múltiplo Switch case
otherwise Exemplos If A0
switch A B3
case 0 B3 Else
otherwise B4 end B4 end Se A é igual a
zero B3 senão B4.
27
Controle de Fluxo
Loops For i110 A(i)i end A 1 2 3 4 5 6 7
8 9 10 O uso da estrutura for, limita o número
de iterações, ou seja, o número de vezes que os
comandos são executados. it0 While
itlt10 itit1 A(it)it End A 1 2 3 4 5 6 7 8
9 10 A estrutura while permite a execução até
que um critério seja satisfeito.
28
Arquivos M
gtgt edit Ou Menu File New--- M-file O uso do
editor permite que os comandos a serem executados
sejam salvos em um arquivo. Tipos de
arquivos Script entradas definidas
internamente ou interativamente Function
arquivo genérico com entradas e saídas Ex
Script soma.m
Função som.m A2 B3
function Ssoma(A,B) SomaAB
SAB
Execução gtgtsoma
ou gtgtsom(2,3) gtgthelp type exibe m-file na
tela
29
Argumentos de Arquivos M
gtgthelp iofun Entrada de dados gtgt help xlsread
lê dados de uma planilha em excel gtgthelp input
recebe entrada de dados na Comand
Window gtgthelp dlmread lê dados em arquivo de
texto gtgthelp save salva dados em arquivo
.mat gtgthelp load carrega dados de arquivos
.mat Saída de dados gtgt help diary
registro do log da sessão Pode ser usado para
armazenar resultados em arquivo txt. gtgthelp disp
exibição de texto e de variáveis na
tela Interfaces mais avançadas será vista no
capitulo Interfaces com o usuário
30
Argumentos de Arquivos M
gtgthelp nargin numero de argumentos de entrada
de uma função gtgthelp nargout numero de
argumentos de uma função Nargin pode ser usado
para usar entradas opcionais. Nargout pode ser
usado para limitar a execução de linhas de
comando desnecessaria se um dos argumentos de
saída não é pedido na chamada da função. Quando
criamos as nossas funções, podemos inserir um
texto de ajuda antes da primeira linha de
comando, assim quando executarmos help
nome_da_função esse texto será exibido na
tela. function s1,s2nome(e1,e2) Digite aqui
o help da função if narginlt2e20.001end S1e1e2
if nargoutlt1 s22e2end
31
Execução de Arquivos M
gtgthelp pause permite uma pausa durante a
execução gtgthelp echo escreve na tela as
linhas de comando gtgthelp beep emite um sinal
sonoro gtgthelp error emite uma mensagem de erro
na tela gtgthelp warning emite uma mensagem de
warning na tela gtgthelp keyboard suspende
execução até que o teclado seja acionado gtgthelp
waitforbuttonpress suspende execução até que o
mouse seja acionado
32
Variáveis Globais e Locais
A execução de um arquivo m como um script, lê as
variáveis existentes no workspace e salva todas
as variáveis criadas durante sua execução. No
entanto, quando executamos um arquivo m tipo
function, este não lê as variáveis existentes no
workspace, lê apenas as variáveis dadas na
entrada do programa ou aquelas definidas
internamente. Além disso, a function pode até
exibir na tela resultados se não usarmos no
final da linha, mas ela só retorna os argumentos
assinados em sua saída e não salva as demais
variáveis no workspace. Para que uma function
leia uma variável definida externamente, é
necessário definir essa variável como global em
todos os arquivos em que ela é utilizada, ou
passar como parâmetro de entrada.
33
Variáveis Globais e Locais
A desvantagem de passar como parâmetro, é que se
usarmos uma sub-rotina pronta sendo chamada pelo
nosso arquivo principal, precisamos alterar a
mesma para esta receber as variáveis. ExQueremos
resolver uma equação na forma F(x) x2 ax2,
onde a é fornecido pelo usuário.
Sub-rotina Function yf(x) global a Y x2
ax2 Programa principal Function
smain(a) global a sfsolve(f,0)
Sub-rotina Function yf(x,a) Y x2
ax2 Programa principal Function
smain(a) sfsolve(f,0,,a)
Ou
34
Variáveis Globais e Locais
Nesse caso, a função fsolve, já possui uma
entrada para parâmetros, mas muitas vezes quando
usamos uma rotina genérica para resolver nosso
problema, temos que redefinir a entrada da função
e a depender da complexidade do programa temos
que alterar em varias linhas e isso deixa a nossa
sub rotina menos genérica. O sugerido é usar
variáveis globais, e sempre no inicio dos
programas usar um clear all para limpar as
variáveis existentes no workspace evitando
confusão na memória durante a execução de nossos
problemas.
35
Debugando Arquivos M
Debugar, consiste em depurar o programa, ou seja,
verificar a existência de erros. gtgthelp depfun
dependências do arquivo Permite o retorno de
diretórios utilizados, funções utilizadas,dentre
outras informações. gtgthelp profile Perfil de
desempenho Traça um perfil de desempenho, com o
tempo associado à execução de cada comando,
dentre outras informações. Uso gtgtprofile
on gtgtminha_função gtgtprofile report
Write a Comment
User Comments (0)
About PowerShow.com