SlideShare uma empresa Scribd logo
1a Semana da Engenharia Elétrica

   Universidade Federal do Ceará
          Campus Sobral




          Matlab Básico
         para Engenharia
Matlab Básico
               para Engenharia
●   Matlab é uma linguagem técnica de alta
    performance que integra computação,
    visualização e programação em um
    ambiente amigável no qual problemas e
    soluções são expressas de uma forma
    matematicamente familiar
Matlab Básico
                  para Engenharia
●   Aplicações tipicas:
    –   Computação Matemática
    –   Desenvolvimento de algorítimos
    –   Modelagem, simulação e prototipagem
    –   Analise de dados, exploração e visualização
    –   Aplicação gráficas Científicas e de Engenharia
    –   Desenvolvimento de aplicações
Matlab Básico
               para Engenharia
●   Matlab vem de “Matrix Laboratory”
●   Cujo intuito original era prover acesso a
    softwares matriciais desenvolvidos pelos
    projetos LINPACK e EISPACK
●   Sua primeira versão foi escrita por um
    analista numérico chamado Cleve Moler na
    década de 70.
Matlab Básico
               para Engenharia
●   Evoluiu para um sistema interativo cujo
    elemento básico de dado trata-se de
    matrizes que não requerem
    dimensionamento
●   Com o passar dos anos transformou-se na
    ferramenta padrão para ensino e pesquisa
    básica e/ou avançada na matemática,
    engenharia, ciências aplicadas etc.
●   Na industria fornece uma opção de
    ferramenta para análise pesquisa e
    desenvolvimento de alta qualidade.
Matlab Básico
               para Engenharia
●   Outra grande vantagem do Matlab da qual
    deve-se grande parte do seu sucesso são os
    chamados toolboxes.
●   Tratam-se de uma série de
    aplicações/soluções específicas
    implementadas através de funções (M-files)
    que expandem o ambiente do Matlab para
    solucionar problemas específicos nas mais
    diversas áreas.
●   Processamento de Sinais, Sistemas de
    Controle, Redes Neurais, Lógica Fuzzy,
    Wavelets, etc...
Matlab Básico
                  para Engenharia
●   O sistema Matlab consiste em cinco partes
    principais:
    –   Ambiente de Desenvolvimento
    –   Biblioteca de Funções Matemáticas
    –   Linguagem de Programação
    –   Tratamento Gráfico
    –   Aplication Program Interface (API)
Matlab Básico
                  para Engenharia
●   Ambiente de desenvolvimento
    –   Conjunto de ferramentas e “instalações” que
        visão auxiliar o uso das funções e arquivos do
        Matlab.
    –   Inclui itens como, Desktop do Matlab, Janela de
        Comando, Histórico de Comando, browsers para
        ajuda, Workspace, busca de caminhos, etc...
Matlab Básico
                  para Engenharia
●   Biblioteca de funções matemáticas:
    –   Uma vasta coleção de algorítimos
        computacionais que vão desde funções
        elementares como soma, senos ,cosenos,
        aritmética complexa etc. Até funções mais
        sofisticadas como inversão de matrizes,
        autovalores , funções de Bessel, transformada
        rápida de Fourier etc.
Matlab Básico
                  para Engenharia
●   Linguagem de programação:
    –   Linguagem de programação de alto nível
        baseada em matrizes/vetores com diretrizes de
        controle de fluxo, funções, estrutura de dados,
        entradas/saídas, propriedades de orientação a
        objeto etc...
    –   Permitem programação tanto de pequenas
        aplicações, códigos curtos e rápidos para
        solucionar demandas simples, quanto a criação
        de algorítimos extensos e complexos
Matlab Básico
                  para Engenharia
●   Tratamento Gráfico:
    –   Sistema gráfico do Matlab que inclui comandos
        de alto nível para visualização de dados de
        foram bidimensional e tridimensional. Possui
        também processamento de imagens, aprestação
        gráfica e animação.
    –   Inclui ainda comandos de “baixo nível” para
        customizar a aparência dos gráficos bem como
        construir uma interface gráfica de interação com
        o usuário completa em suas aplicações no
        Matlab.
Matlab Básico
                  para Engenharia
●   Aplication Program Interface (API):
    –   Biblioteca particular que permite que programas
        escritos em C e em Fortran interajam
        diretamente com o Matlab.
    –   Inclui dispositivos para chamada de rotinas do
        Matlab (dynamic Linking), uso do Matlab como
        “engine computacional”, leitura e escrita em
        arquivos-MAT, etc.
Matlab Básico
                  para Engenharia
●   Simulink:
    –   Software a parte do Matlab para modelagem
        simulação e analise de sistemas dinâmicos.
    –   Permite a proposição a análise de a simulação
        de um sistema qualquer.
    –   Permite a montagens de modelos desde sua
        base até a modificação de modelos existentes.
    –   Suporta Sistemas Lineares e não lineares,
        contínuos e discretos no tempo, etc.
Matlab Básico
                para Engenharia
●   Simulink:
Matlab Básico
                para Engenharia
●   Inicializando o Matlab:
Matlab Básico
para Engenharia

 Matlab Desktop
Matlab Básico
para Engenharia
Matlab Básico
              para Engenharia
●   Janela de Comando
Matlab Básico
              para Engenharia
●   Histórico de Comandos
Matlab Básico
                para Engenharia
●   Diretório Atual
Matlab Básico
                para Engenharia
●   Workspace
Matlab Básico
               para Engenharia
●   Editor Debugger
Matlab Básico
               para Engenharia
●   Editor Debugger
Matlab Básico
para Engenharia
Matlab Básico
            para Engenharia
●   START
Matlab Básico
              para Engenharia
●   Menu File => Preferences
Matlab Básico
                   para Engenharia
●   Função help
    –   Indica os tópicos de ajuda disponíveis no Matlab
Matlab Básico
                 para Engenharia
●   Para visualizarmos os tópicos de forma
    compassada utilizamos o comando:
    –   >> more on
    –   >> help
Matlab Básico
                  para Engenharia
●   Para especificarmos a ajuda que
    necessitamos especificamos o comando
    –   >> help sum ou >> help ops
Matlab Básico
               para Engenharia
●   Operações Básicas
    –Os operados básicos no matlab são + - * / ^
    –Os mesmos devem ser utilizados em conjunto
     com ()
    Ex:


significa 2 + 3/(4*5) ou 2 + (3/4)*5?
Matlab Básico
                      para Engenharia
●   O Matlab atua de acordo com as seguinte
    prioridades:
    – Quantidades contidas nos parêntesis ()
    – Potenciações: 2 + 3^2 = 2 + 9
    – * e / da esquerda para direita: 3*4/5 = 12/5
    + e - da esquerda para direita: 3 + 4 - 5 = 7-5

●   Desta forma o exemplo anterior seria:
    –   2 + (3/5)*5
Matlab Básico
               para Engenharia
●   Para associar valores a variáveis
    simplesmente utilizamos o operador = no
    prompt de comando
    –   EX:


●   Podemos permitir ou não a vizualização do
    comando anterior com o operador ;
    –   EX
Matlab Básico
                  para Engenharia
●   Realizem o exemplo:
        Z =Z  Z 1
                 2
    –



●   Em cada caso ache o valor da expressão no
    Matlab e explique o porque do resultado em
    cada caso:
Matlab Básico
                  para Engenharia
●   Números e Formatos
    –   O matlab é capaz de reconhecer diversos tipos
        de números:




Obtenha números de todos estes tipos em
 variáveis distintas:
Matlab Básico
               para Engenharia
●   No Matlab a notação e pode ser uilizada
    para representar expoentes na base 10.




●   Todos os cálculos executados pelo Matlab
    são feitos em precisão dupla, ou seja, 15
    algarismos significativos.
Matlab Básico
               para Engenharia
●   A formatação de como o matlab apresenta
    estes números pode ser controlada pelo
    comando “format”
Matlab Básico
             para Engenharia
●   Format
Matlab Básico
                    para Engenharia
●   Format




OBS: devemos chamar atenção para o fato de que o comando format
  modifica apenas a forma de como o número é apresentado e não seu
  valor ou forma de cálculo.
Matlab Básico
                  para Engenharia
●   Format
    –   Para verificarmos qual o “tipo de format” que
        está atualmente em uso utilizamos o comando
Matlab Básico
                    para Engenharia
●   Nomes para variáveis
    –   O Matlab Permite qualquer combinação entre
        letras e dígitos começadas por letras

    –   Permitido

    –   Não Permitido

    –   Case Sensitive
Matlab Básico
                  para Engenharia
●   Nomes para variáveis
    –   Alguns nomes especiais devem ser evitados
Matlab Básico
                   para Engenharia
●   Outras funções Elementares importantes:
    –Trigonométricas: sin, cos, tan
    >> help sin




    –   Notemos que os argumentos das funções
        trigonométricas devem ser expressos em
        radianos
Matlab Básico
                    para Engenharia
●   Outras funções Elementares importantes:
    –    Sqrt : Raiz quadrada
    –    Exp :
    –   Log: inverso da função exponencial (exp(x)),
    –   Log10: logarítimo na base 10

    –   Identifique as operações
Matlab Básico
                  para Engenharia
●   Matrizes e Vetores
    –   Vetores podem ser do tipo lina ou coluna
●   Vetores Linhas
    –   Separar os elementos de uma linha por espaços
        em branco ou virgulas
    –   Delimitar a lista de elementos da matriz por []

    –   O número de elementos é conhecido pelo
        comando
    –    Devemos proceder com cautela quanto a
        utilização dos espaços para a definição de
        vetores
Matlab Básico
               para Engenharia

Vetores Linhas
  –   Para vetores do mesmo tamanho podemos
      realizar certas operações aritméticas
Matlab Básico
                para Engenharia

Vetores Linhas
  –   Podemos ainda criar vetores a partir de vetores
      pré-existentes




  –   Por fim podemos manipular elementos em
      particular definindo sua posição no vetor
      utilizando o ()
Matlab Básico
                para Engenharia

Vetores Colunas
  –   Construção similar aos vetores linhas;
  –   Separação dos elementos realizada por ; ou
      “novas linhas”
  –   Ex:
Matlab Básico
               para Engenharia

Vetores Colunas
  –   Operações aritméticas também podem ser
      realizadas respeitando os precedentes
      matemáticos
  –   EX:
Matlab Básico
                para Engenharia

Transposição
  –   Podemos converter um vetor linha em um vetor
      coluna através do processo de transposição.
  –   No Matlab este processo é denotado pelo
      operador '
  –   Ex
Matlab Básico
                para Engenharia

Operador Transposto
  –   O operador de transposição pode ser utilizado
      em conjunto com sentenças matemáticas de
      forma livre
  –   Ex:
Matlab Básico
                para Engenharia

Operador Transposto
  –   Existe ainda uma outra funcionalidade para o
      operador '
  –   Quando trabalhamos com números complexos o
      operador ' representa o conjugado complexo de
      um número
  –   Ex:
Matlab Básico
                para Engenharia

Operador Transposto
  –   Verifique o que acontece quando temos
  –
Matlab Básico
                para Engenharia

Operador Transposto
  –   Para obtermos apenas o correspondente
      transposto de um vetor formado por números
      complexo utilizamos:
Matlab Básico
               para Engenharia
●   Matrizes e Vetores
Matlab Básico
                      para Engenharia
●   Matrizes e Vetores
    –   Podemos entrar com matrizes de várias formas:
         ●   Digitar explicitamente os elementos
         ●   Carregar matrizes por um arquivo externo
         ●   Gerar matrizes através de funções pé-estabelecidas
         ●   Gerar matrizes através de uma função própria criada
             (M-file)
    –   Para digitarmos os elementos em forma de lista
        devemos seguir o procedimento:
         ●   Separar os elementos de uma linha por espaços em
             branco ou virgulas
         ●   Usar o ; para indicar o fim de uma linha
         ●   Delimitar a lista de elementos da matriz por []
Matlab Básico
                  para Engenharia
●   Matrizes e Vetores
    –   Desta forma o Matlab retornará a seguinte
        resposta
Matlab Básico
                  para Engenharia
●   Matrizes e Vetores
    –   Os Elementos específicos de uma matriz podem
        ser manipulados e acessados através da
        notação A(i,j).
    –   T al notação especifica o elemento contido na
        linha i e coluna j da matriz A
    –   Ex:O Comando abaixo representa a soma de
        todos os elementos da coluna 4 da matriz A


    –   EX: Somar todas as linha e as colunas de A
Matlab Básico
                  para Engenharia
●   Matrizes e Vetores
    –   Existe ainda uma outra forma de acessar
        elementos específicos de uma matriz utilizando
        apenas um único operando.
    –   Podemos considerar a matriz como um único
        vetor linha ou coluna.
    –   Desta forma ao utilizarmos A(8) estamos nos
        referindo ao valor armazenado em A(4,2)
    –
Matlab Básico
                  para Engenharia
●   Matrizes e Vetores
    –   Se buscarmos uma posição fora das dimensões
        da matriz especificada teremos o seguinte erro
    –

    –   No entanto se atribuirmos um valor a uma
        posição anteriormente inexistente a
        característica dinâmica das matrizes no Matlab
        modificará a matriz para acomodar a nova
        entrada
    –
Matlab Básico
                  para Engenharia
●   O operador “:”
    –   Um dos operadores mais importantes ao
        trabalharmos com vetores e matrizes
    –   Em sua forma mais simples é utilizado para criar
        um vetor de passo unitário delimitados pelo
        menor e maior elemento
    –   ex:
Matlab Básico
                  para Engenharia
●   O operador “:”
    –   Configurado na forma x:y temos que o segundo
        elemento deve ser maior que o primeiro pois o
        comando busca alcançar y através do
        incremento de x.
    –   Se utilizarmos por exemplo K=100:4 teremos
        como resultado a criação de uma matriz K no
        workspace no entanto tal matriz é considerada
        “vazia”
Matlab Básico
                  para Engenharia
●   O operador “:”
    –   Podemos também utilizar o operador : da forma
        a:b:c
    –   Temos assim um vetor que vai de a até b
        através do incremento c
Matlab Básico
                  para Engenharia
●   O operador “:”
    –   O operador : é ainda utilizado para indicar
        porções de uma matriz
    –   O comando A(1:k,j) se refere ao k primeiros
        elementos da coluna j da matriz A
    –   Ex: Outra forma de obtermos a soma de uma
        coluna da matriz A



    Temos a soma dos elementos da coluna 4
Matlab Básico
                  para Engenharia
●   O operador “:”
    –   Quando utilizado de forma isolada o operador :
        se refere a todos os elementos de uma
        determinada linha ou coluna.
    –   Poemos ainda utilizar o operador “end” que
        representa o ultimo elemento de um vetor.
    –   Ex:



    –   Descreva o resultado do comando
Matlab Básico
                  para Engenharia
●   O operador “:”
    –   Podemos também utilizar o operador : da forma
        a:b:c
    –   Temos assim um vetor que vai de a até b
        através do incremento c
Matlab Básico
                     para Engenharia
●   Operações Matriciais
    –   Cinco matrizes básicas para uso no Matlab
         ●   Zeros: Matrizes formadas apenas de zeros
         ●   Ones: Matrizes formadas apenas por 1´s
         ●   Eye: Matriz identidade
         ●   Rand: matriz composta de forma randômica
             uniformemente distribuída
         ●   Randn: matriz composta de forma randômica com
             distribuição normal
    –   Ex:
Matlab Básico
                     para Engenharia
●   Operações Matriciais
    –   Cinco matrizes básicas para uso no Matlab
         ●   Zeros: Matrizes formadas apenas de zeros
         ●   Ones: Matrizes formadas apenas por 1´s
         ●   Eye: Matriz identidade
         ●   Rand: matriz composta de forma randômica
             uniformemente distribuída
         ●   Randn: matriz composta de forma randômica com
             distribuição normal
    –   Ex:
Matlab Básico
                     para Engenharia
●   Operações Matriciais
    –   Cinco matrizes básicas para uso no Matlab
         ●   Zeros: Matrizes formadas apenas de zeros
         ●   Ones: Matrizes formadas apenas por 1´s
         ●   Eye: Matriz identidade
         ●   Rand: matriz composta de forma randômica
             uniformemente distribuída
         ●   Randn: matriz composta de forma randômica com
             distribuição normal
    –   Ex:
Matlab Básico
                     para Engenharia
●   Operações Matriciais
    –   Cinco matrizes básicas para uso no Matlab
         ●   Zeros: Matrizes formadas apenas de zeros
         ●   Ones: Matrizes formadas apenas por 1´s
         ●   Eye: Matriz identidade
         ●   Rand: matriz composta de forma randômica
             uniformemente distribuída
         ●   Randn: matriz composta de forma randômica com
             distribuição normal
    –   Ex:
Matlab Básico
                     para Engenharia
●   Operações Matriciais
    –   Cinco matrizes básicas para uso no Matlab
         ●   Zeros: Matrizes formadas apenas de zeros
         ●   Ones: Matrizes formadas apenas por 1´s
         ●   Eye: Matriz identidade
         ●   Rand: matriz composta de forma randômica
             uniformemente distribuída
         ●   Randn: matriz composta de forma randômica com
             distribuição normal
    –   Ex:
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Outra forma de carregar uma matriz é através de
        um arquivo externo contendo dados no formato
        numérico.
    –   Crie um arquivo de texto no notepad com o
        seguinte conteúdo



    –   Salve o arquivo como matriz.dat no atual
        diretório corrente do matlab.
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Utilizando o Comando load podemos carregar
        eta matriz montada através de uma outra fonte
        ou em ma sessão anterior do Matlab.
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Quando o arquivo não está no formato
        suportado pelo Matlab (.DAT ou .MAT)
        utilizamos o menu FILE=>Import Data... para
        adequarmos os dados para o uso no Matlab
Matlab Básico
                   para Engenharia
●   Operações Matriciais
    –   Import Data...
Matlab Básico
                       para Engenharia
●   Operações Matriciais
    –   Concatenação
         ●   Trata-se do processo de formar matrizes maiores a
             partir de matrizes menores já existentes.
         ●   Para isto utilizamo o operador matricial [] juntamente
             com as matrizes já declaradas
Matlab Básico
                      para Engenharia
●   Operações Matriciais
    –   Deletando linhas e colunas
         ●   Utilizamos ainda o operador matricial [] da seguinte
             forma quando desejamos eliminar linhas ou colunas
             de matrizes:
         ●   X(:,2)=[] deleta a segunda coluna da matriz X
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Se tentarmos deletar um único elemento de uma
        matriz o resultado não mais seria uma matriz e
        desta forma o matlab responderia da seguinte
        forma:
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   No enanto se utilizarmos a especificação única
        para elementos de uma matriz podemos deletar
        apena um único elemento e o conjunto de dados
        resultantes toma a forma de um vetor
    –
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Uma vez familiarizado com o comando sum e o
        operador transposto ' apresentaremos outros
        importantes resultados com matrizes:
    –
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   O comando diag(A) oferece a diagonal principal
        de A
    –   Ex: soma dos elementos da diagonal principal




    –   Qual o resultado do comando
Matlab Básico
                   para Engenharia
●   Operações Matriciais
    –   Matriz simétrica
    –   A +A' ou A * A'
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Determinante de uma matriz: det(A)
Matlab Básico
                      para Engenharia
●   Operações Matriciais
    –   Inversa de uma Matriz: inv(A)




    –   Como a matriz A possui determinante 0 (singular) a mesma não
        possui inversa.
    –   O matlab avisa desta condição com um “warning” antes do
        resultado
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Autovalores: eig(A)
Matlab Básico
                  para Engenharia
●   Operações Matriciais
    –   Posto de A: rank(A)
Matlab Básico
                   para Engenharia
●   Operações Matriciais
    –   Polinômio Característico de A : Poly(A)
Matlab Básico
                   para Engenharia
●   Matrizes esparsas
    –   Necessitamos de 3 vetores. Os dois primeiros
        indicam a localização dos elementos diferentes
        de zero e o ultimo indica o valor destes elemetos
Matlab Básico
               para Engenharia
●   Operadores por elementos “.”
    –
Matlab Básico
               para Engenharia
●   Operadores por elementos “.”
    –   Ex
Matlab Básico
                  para Engenharia
●   Comando find
    –   Retorna uma lista de posições (indices) de
        elementos de um vetor ou uma matriz que
        satisfazem determinada condição
Matlab Básico
                 para Engenharia
●   Editor/Debugger
    –   Menu Desktop=>Editor
    –   Menu File=>New=>M-File
Matlab Básico
                 para Engenharia
●   Editor/Debugger
    –   Utilizado para executar uma seqüência de
        comandos pré-determinada
    –   Diversas opções para execução dos comandos
    –   Opção para seleção de breakpoints
Matlab Básico
                  para Engenharia
●   Editor/Debugger
    –   Uma vez Iniciado o processo de Debug
        podemos acessar os valores das variáveis já
        calculadas.
Matlab Básico
                  para Engenharia
●   Editor/Debugger
    –   Podemos adicionar comentários através do
        caractere % ou através do atalho CRTL+R
Matlab Básico
                   para Engenharia
●   Editor/Debugger
    –   Utilize o editor para solucionar o seguinte
        problema:
    –   Crie uma tabela para armazenar em colunas
        distintas os valores das funções sen(x2) cos(x2) e
        tan(x2) onde este ultimo valor é calculado a partir
        dos resultados das funções anteriores.
Matlab Básico
                      para Engenharia
●   Controle de Fluxo
    –   Rotina utilizadas para criar laços de repetição ou
        tomar decisões
         ●   IF
         ●   SWITCH
         ●   FOR
         ●   WHILE
         ●   BREAK
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   IF: Avalia alógica de uma expressão e executa
        um grupo de instruções quando a lógica é
        verdadeira
    –   As opções ELSEIF e ELSE fornecem a opção
        para execução de grupos alternativos de
        instruções.
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   Expressões lógicas




    –   Ex:
Matlab Básico
                      para Engenharia
●   Controle de Fluxo
    –   Expressões lógicas
         ●   Quando utilizamos matrizes ou vetores os testes são
             realizados em cada elemento
    –   Ex:
Matlab Básico
                     para Engenharia
●   Controle de Fluxo
    –   Expressões lógicas
         ●   Podemos ainda combinar expressões lógicas da
             seguinte forma:
Matlab Básico
               para Engenharia
●   Controle de Fluxo
    –   IF
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   Switch e Case: Executa um conjunto de
        instruções base ado no valor de uma variável ou
        expressão.
    –   Os comandos case ou otherwise delimitam os
        conjuntos de instruções
Matlab Básico
                   para Engenharia
●   Controle de Fluxo
    –   Switch e Case
    –   Utilize o switch para reproduzir o algorítimo
        executado com o comando IF
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   Observamos desta forma uma peculiaridade no
        comando Switch. Ao contrário de seu
        equivalente em C o comando não continua
        executando até a possibilidade final. Desta
        forma se o primeiro caso é verdadeiro as outras
        condições não são executadas mesmo sem a
        presença do comando break
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   For: Repete um grupo de comandos delimitados
        pelo “end” por um número determinado de
        vezes.
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   While: Utilizado quando queremos repetir uma
        série de comandos até que uma condição seja
        satisfeita, no entanto não podemos dizer de
        forma antecipada quantas iterações são
        necessárias.
    –   Ex: qual o maior valor de n que pode ser
        utilizado na soma para obtermos um resultado
        menor que 100?
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   While: Utilizado quando queremos repetir uma
        série de comandos até que uma condição seja
        satisfeita, no entanto não podemos dizer de
        forma antecipada quantas iterações são
        necessárias.
    –   Ex: qual o maior valor de n que pode ser
        utilizado na soma para obtermos um resultado
        menor que 100?
Matlab Básico
                  para Engenharia
●   Controle de Fluxo
    –   Break: possibilita uma saída antecipada de um
        laço for ou while.
    –   Em laços concatenados o break possibilita a
        saída do laço mais interno.
Matlab Básico
                      para Engenharia
●   Funções M-file
    –   Utilizada quando desejamos preparar uma
        combinação de operações e ideais em um script
        que pode ser acessado posteriormente de forma
        rápida.
    –   Tomaremos como exemplo o seguinte problema:
         ●   Desejamos preparar uma função que calcula a área A
             de um triangulo cujo o comprimento dos lados é a, b
             e c.
Matlab Básico
                  para Engenharia
●   Funções M-file
    –   Dois passos básicos são necessários para
        definirmos funções no matlab,
    –    O primeiro passo é definir um nome para a
        função, de forma que não tenhamos conflito com
        as funções já existentes no matlab.
    –   Para este exemplo usaremos o nome “area”
        desta forma devemos salvar suas definições no
        arquivo area.m
Matlab Básico
                  para Engenharia
●   Funções M-file
    –   Posteriormente a primeira linha do arquivo deve
        ser formatada da seguinte forma:




    –   Em nosso exemplo temos como entradas as
        variáveis a, b e c representando o comprimento
        dos lados e como saída a área A
Matlab Básico
                 para Engenharia
●   Funções M-file
    –   Finalmente implementamos o código que deve
        ser utilizado para implementar a função.
    –   No caso do exemplo temos:
Matlab Básico
                 para Engenharia
●   Funções M-file
    –   Finalmente implementamos o código que deve
        ser utilizado para implementar a função.
    –   No caso do exemplo temos:
Matlab Básico
                  para Engenharia
●   Funções M-file
    –   Por fim podemos documentar através de
        comentários o arquivo de função de forma que o
        usuário tenha acesso ao comando ajuda
Matlab Básico
                  para Engenharia
●   Funções M-file
    –   Por fim podemos documentar através de
        comentários o arquivo de função de forma que o
        usuário tenha acesso ao comando ajuda
Matlab Básico
                  para Engenharia
●   Funções M-file
    –   O exemplo anterior funciona apenas se a soma
        de qualquer dois lados não exceder o terceiro.
    –   Modifique a função para considerarmos esta
        condição.
Matlab Básico
                  para Engenharia
●   Eficiência de códigos
    –   O matlab permite cronometrarmos secções de
        códigos através das funções “tic” e “toc”
    –   “tic” ativa o cronometro para CPU
    –   Enquanto o toc para o cronometro e retorna o
        valor de tempo decorrido.
    –   Ex
Matlab Básico
                   para Engenharia
●   Gráficos
    –   O matlab possui uma extensa variedade para
        representar vetores e matrizes na forma gráfica.
    –   Veremos agora algumas das principais destas
        ferramentas
Matlab Básico
                      para Engenharia
●   Gráficos
    –   Plot
         ●   Possui diferentes formas de uso dependendo da
             quantidade de seus argumentos de entrada.
         ●   Em sua forma mais simples, dado um vetor y o
             comando “plot(y)” produz um gráfico dos elementos
             de y distribuídos de forma linear ao longo do x
         ●   Ex: crie um veto Y aleatório de 10 posições de utilize
             o comando plot(Y)
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Plot(Y)
Matlab Básico
                   para Engenharia
●   Gráficos
    –   Se utilizarmos 2 vetores x e y como entrada
        teremos como resultado um gráfico de x vs y
         ●   EX:
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Podemos identificar os eixos presentes no
        gráfico bem como adicionar um título ao mesmo
        através dos comandos:
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Múltiplos pares de dados z-y como argumentos
        de entrada produzem múltiplos gráficos em
        apenas uma chamada do “plot”
    –   EX:
Matlab Básico
                   para Engenharia
●   Gráficos
    –   É possível ainda especificarmos a cor e o estilo
        de marcador do gráfico utilizando o “plot” com a
        seguinte sintaxe
    –   EX:
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Números Complexos: Ao trabalharmos com
        números complexos o comando plot necessita
        apenas de um argumento para entrada dos dos
        já que os mesmo já estão representados em
        suas partes reais e imaginárias
    –   EX:
Matlab Básico
                   para Engenharia
●   Gráficos
    –   Plot(Z):
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Números Complexos: No entanto se utilizarmos
        o “plot” com mais de um argumento de entrada o
        Matlab irá ignorá a parte imaginária dos
        números na tentava de adequar o gráfico a
        apenas 2 dimensões:
    –   EX:
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Números Complexos: No entanto se utilizarmos
        o “plot” com mais de um argumento de entrada o
        Matlab irá ignorá a parte imaginária dos
        números na tentava de adequar o gráfico a
        apenas 2 dimensões:
    –   EX:
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Hold: O comando “plot” possui como modo de
        execução padrão de limpar a janela gráfica
        antes de adicionar um novo. No entanto este
        comportamento não nos permite executar
        comparação de gráficos se o mesmo forem
        criados em estágios diferentes do código.
    –   Desta forma o comando “hold on” sobrepor
        gráficos a partir de um determinado momento
Matlab Básico
               para Engenharia
●   Gráficos
    –   EX:
Matlab Básico
                  para Engenharia
●   Gráficos
    –   Subplot: A janela de gráficos do matlab pode ser
        dividida em uma matriz de mxn janelas menores
        nas quais cada uma pode conter um ou mais
        gráficos.
    –   As janelas são numeradas na forma de um vetor
        coluna iniciando da janela superior esquerda
    –   Comandos como “hold” ou “label” também são
        válidos nestes casos.
Matlab Básico
                        para Engenharia
●   Gráficos
    –   EX:
●  Especificamos que a
janela grafica deve serdividida em uma
matriz 2x2 onde selecionamos a
subjanela 1 para conter os resultados do
comando plot(x,y)
●  Utilizamos agora os comandos “label”
para identificarmos os eixos do
grafico da primeira subjanela.
Matlab Básico
                para Engenharia
●   Gráficos
    – EX: Proceda da forma anterior para completar
    as janelas livres com as funções COS(X),
      SEN(3X) e COS(3X).
Matlab Básico
               para Engenharia
●   Gráficos
Matlab Básico
               para Engenharia
●   Gráficos
Matlab Básico
               para Engenharia
●   Gráficos
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    – Uma superfície é definida matematicamente
      como uma função de duas variáveis f  x , y
    – Correspondendo a cada valor (x,y) computamos
      o valor funcional por z= f  x , y 
    – Desta forma para traçarmos a superfície
      devemos primeiramente decidir os limites de x e
      y
    – Se por exemplo tivermos 2≤x≤4 e 1≤ y≤3
    obtemos como base o seguinte plano xy
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    –   Uma realizadas estas definições construímos
        uma superfície analisando o comportamento da
        função z= f  x , y  em cada ponto da “malha
        diferencial” construída z= f  x , y 
    –   No matlab estas operações são realizadas
        através dos comando “meshgrid” e “mesh”
        respectivamente
Matlab Básico
                   para Engenharia
●   Gráficos 3D
    –   Tomaremos o seguinte exemplo:
    –   Construa a superfície definida pela função


    Para os intervalos
Matlab Básico
                   para Engenharia
●   Gráficos 3D
    –   Tomaremos o seguinte exemplo:
    –   Construa a superfície definida pela função


    Para os intervalos

    –   1o Passo: Para construirmos a malha diferencial
        do plano XY criaremos dois vetores baseados
        nos intervalos que desejamos analisar e com o
        passo igual ao incremento diferencial em cada
        direção
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    –




    –   2o Passo: Implementamos a função desejada
        nas matrizes criadas pelo comando “meshgrid”
    –
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    –   3o Passo: Traçamos a superfície desejada
        através do comando “mesh”
    –
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    –   EX
    –
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    –   EX
    –
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    –   EX
    –
Matlab Básico
                  para Engenharia
●   Gráficos 3D
    –   EX
    –

Mais conteúdo relacionado

PDF
Lec 2 agents
PPTX
Expert systems
PDF
Apostila curso matlab
PDF
Apostila de matlab
PDF
Minicurso Matlab IVSEE 2013 UERJ
PDF
Tutorial matlab
PPTX
Redes Neurais Artificiais: Regras de Aprendizado
KEY
Redes Neurais Artificiais - Modelos e suas implementações
Lec 2 agents
Expert systems
Apostila curso matlab
Apostila de matlab
Minicurso Matlab IVSEE 2013 UERJ
Tutorial matlab
Redes Neurais Artificiais: Regras de Aprendizado
Redes Neurais Artificiais - Modelos e suas implementações

Destaque (16)

PDF
Redes neurais com matlab
PDF
Computação Científica com Python 2013
PDF
TCC_Gabriel Estêvão de Morais Rodrigues - Temporário
PDF
CONCEPÇÃO DE ESTRUTURA DE QUADRICICLO A PEDAL DESENVOLVIDO E ANALISADO NO CAT...
PDF
CONCEPÇÃO DE ESTRUTURA DE QUADRICICLO A PEDAL DESENVOLVIDO E ANALISADO NO CAT...
PDF
Análise de Viga através de NX Nastran e Matlab (Galerkin)
PDF
Curso de simulink_2.0
PDF
CV Diego Reis
PDF
Computação científica com numpy e scipy
PPTX
Introdução ao Matlab
PDF
Libro de MATLAB
PDF
Advanced MATLAB Tutorial for Engineers & Scientists
PDF
MATLAB Programs For Beginners. | Abhi Sharma
PDF
Introduction to Matlab
PDF
RNA - Redes neurais artificiais
Redes neurais com matlab
Computação Científica com Python 2013
TCC_Gabriel Estêvão de Morais Rodrigues - Temporário
CONCEPÇÃO DE ESTRUTURA DE QUADRICICLO A PEDAL DESENVOLVIDO E ANALISADO NO CAT...
CONCEPÇÃO DE ESTRUTURA DE QUADRICICLO A PEDAL DESENVOLVIDO E ANALISADO NO CAT...
Análise de Viga através de NX Nastran e Matlab (Galerkin)
Curso de simulink_2.0
CV Diego Reis
Computação científica com numpy e scipy
Introdução ao Matlab
Libro de MATLAB
Advanced MATLAB Tutorial for Engineers & Scientists
MATLAB Programs For Beginners. | Abhi Sharma
Introduction to Matlab
RNA - Redes neurais artificiais
Anúncio

Semelhante a Curso matlab (20)

PDF
Guia Matlab
PDF
47612195 apostila-de-scilab
PDF
apostila matlab
PDF
Apostila matlab
PDF
Apostila 20 matlab
DOC
Matlab basico
PPT
Introducao ao matlab
PDF
Course in GNU Octave / Matlab and Applications for Engineers (in Portuguese: ...
PPT
minicurso_Matlab_ssssssssssssssasdasdOctave.ppt
PDF
Tutorial matlab
PDF
Apostila_MATLAB.pdf
PDF
Apostila matlab
PDF
Matlab1
PDF
Aula01
PDF
Curso de Matlab basico
PDF
Filtro_matlab_toobox
PDF
Apostila vol1 matlab
PPTX
Introdução ao matlab
PDF
Introdução ao SciLab
PDF
20220093 scilab-manual
Guia Matlab
47612195 apostila-de-scilab
apostila matlab
Apostila matlab
Apostila 20 matlab
Matlab basico
Introducao ao matlab
Course in GNU Octave / Matlab and Applications for Engineers (in Portuguese: ...
minicurso_Matlab_ssssssssssssssasdasdOctave.ppt
Tutorial matlab
Apostila_MATLAB.pdf
Apostila matlab
Matlab1
Aula01
Curso de Matlab basico
Filtro_matlab_toobox
Apostila vol1 matlab
Introdução ao matlab
Introdução ao SciLab
20220093 scilab-manual
Anúncio

Último (20)

PDF
O retorno a origem (islã Islamismo)
PPTX
NR11 - Treinamento Direcao Defensiva - 2023.pptx
PPT
sistema reprodutor para turmas do oitavo ano
PPT
História e Evolução dos Computadores domésticos
PDF
Ebook - Matemática_Ensino_Médio_Saeb_V1.pdf
PDF
saeb_documentos_de_referencia_versao_1.0.pdf
PDF
A Revolução Francesa de 1789 slides história
PPTX
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
PDF
DAQUISIÇÃO E DESENVOLVIMENTO DA FALA 12 A 24 MESES
PPTX
Realismo e Naturalismo: Aluísio Azevedo.
PPTX
INDÚSTRIA_ Histórico da industrialização.pptx
PPTX
Aula 13 - Tópico Frasal - Argumentação.pptx
PPTX
ELEMENTOS E FUNÇÕES DE LINGUAGEM (EMOTIVA, REFERENCIAL, CONATIVA, POÉTICA, FÁ...
PDF
A provisão de jojuador (ramadã) islamismo
PDF
aulademeiodetransporteemlibras-120304202807-phpapp01_removed.pdf
PPTX
GUERRAFRIA.pptdddddddddddddddddddddddddx
PPTX
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
PPTX
A História da Europa na Baixa Idade Média.pptx
PDF
manual-orientacao-asb_5a8d6d8d87160aa636f63a5d0.pdf
PPTX
Slide_Macronutrientes e Antinutrientes da Dieta Humana.pptx
O retorno a origem (islã Islamismo)
NR11 - Treinamento Direcao Defensiva - 2023.pptx
sistema reprodutor para turmas do oitavo ano
História e Evolução dos Computadores domésticos
Ebook - Matemática_Ensino_Médio_Saeb_V1.pdf
saeb_documentos_de_referencia_versao_1.0.pdf
A Revolução Francesa de 1789 slides história
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
DAQUISIÇÃO E DESENVOLVIMENTO DA FALA 12 A 24 MESES
Realismo e Naturalismo: Aluísio Azevedo.
INDÚSTRIA_ Histórico da industrialização.pptx
Aula 13 - Tópico Frasal - Argumentação.pptx
ELEMENTOS E FUNÇÕES DE LINGUAGEM (EMOTIVA, REFERENCIAL, CONATIVA, POÉTICA, FÁ...
A provisão de jojuador (ramadã) islamismo
aulademeiodetransporteemlibras-120304202807-phpapp01_removed.pdf
GUERRAFRIA.pptdddddddddddddddddddddddddx
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
A História da Europa na Baixa Idade Média.pptx
manual-orientacao-asb_5a8d6d8d87160aa636f63a5d0.pdf
Slide_Macronutrientes e Antinutrientes da Dieta Humana.pptx

Curso matlab

  • 1. 1a Semana da Engenharia Elétrica Universidade Federal do Ceará Campus Sobral Matlab Básico para Engenharia
  • 2. Matlab Básico para Engenharia ● Matlab é uma linguagem técnica de alta performance que integra computação, visualização e programação em um ambiente amigável no qual problemas e soluções são expressas de uma forma matematicamente familiar
  • 3. Matlab Básico para Engenharia ● Aplicações tipicas: – Computação Matemática – Desenvolvimento de algorítimos – Modelagem, simulação e prototipagem – Analise de dados, exploração e visualização – Aplicação gráficas Científicas e de Engenharia – Desenvolvimento de aplicações
  • 4. Matlab Básico para Engenharia ● Matlab vem de “Matrix Laboratory” ● Cujo intuito original era prover acesso a softwares matriciais desenvolvidos pelos projetos LINPACK e EISPACK ● Sua primeira versão foi escrita por um analista numérico chamado Cleve Moler na década de 70.
  • 5. Matlab Básico para Engenharia ● Evoluiu para um sistema interativo cujo elemento básico de dado trata-se de matrizes que não requerem dimensionamento ● Com o passar dos anos transformou-se na ferramenta padrão para ensino e pesquisa básica e/ou avançada na matemática, engenharia, ciências aplicadas etc. ● Na industria fornece uma opção de ferramenta para análise pesquisa e desenvolvimento de alta qualidade.
  • 6. Matlab Básico para Engenharia ● Outra grande vantagem do Matlab da qual deve-se grande parte do seu sucesso são os chamados toolboxes. ● Tratam-se de uma série de aplicações/soluções específicas implementadas através de funções (M-files) que expandem o ambiente do Matlab para solucionar problemas específicos nas mais diversas áreas. ● Processamento de Sinais, Sistemas de Controle, Redes Neurais, Lógica Fuzzy, Wavelets, etc...
  • 7. Matlab Básico para Engenharia ● O sistema Matlab consiste em cinco partes principais: – Ambiente de Desenvolvimento – Biblioteca de Funções Matemáticas – Linguagem de Programação – Tratamento Gráfico – Aplication Program Interface (API)
  • 8. Matlab Básico para Engenharia ● Ambiente de desenvolvimento – Conjunto de ferramentas e “instalações” que visão auxiliar o uso das funções e arquivos do Matlab. – Inclui itens como, Desktop do Matlab, Janela de Comando, Histórico de Comando, browsers para ajuda, Workspace, busca de caminhos, etc...
  • 9. Matlab Básico para Engenharia ● Biblioteca de funções matemáticas: – Uma vasta coleção de algorítimos computacionais que vão desde funções elementares como soma, senos ,cosenos, aritmética complexa etc. Até funções mais sofisticadas como inversão de matrizes, autovalores , funções de Bessel, transformada rápida de Fourier etc.
  • 10. Matlab Básico para Engenharia ● Linguagem de programação: – Linguagem de programação de alto nível baseada em matrizes/vetores com diretrizes de controle de fluxo, funções, estrutura de dados, entradas/saídas, propriedades de orientação a objeto etc... – Permitem programação tanto de pequenas aplicações, códigos curtos e rápidos para solucionar demandas simples, quanto a criação de algorítimos extensos e complexos
  • 11. Matlab Básico para Engenharia ● Tratamento Gráfico: – Sistema gráfico do Matlab que inclui comandos de alto nível para visualização de dados de foram bidimensional e tridimensional. Possui também processamento de imagens, aprestação gráfica e animação. – Inclui ainda comandos de “baixo nível” para customizar a aparência dos gráficos bem como construir uma interface gráfica de interação com o usuário completa em suas aplicações no Matlab.
  • 12. Matlab Básico para Engenharia ● Aplication Program Interface (API): – Biblioteca particular que permite que programas escritos em C e em Fortran interajam diretamente com o Matlab. – Inclui dispositivos para chamada de rotinas do Matlab (dynamic Linking), uso do Matlab como “engine computacional”, leitura e escrita em arquivos-MAT, etc.
  • 13. Matlab Básico para Engenharia ● Simulink: – Software a parte do Matlab para modelagem simulação e analise de sistemas dinâmicos. – Permite a proposição a análise de a simulação de um sistema qualquer. – Permite a montagens de modelos desde sua base até a modificação de modelos existentes. – Suporta Sistemas Lineares e não lineares, contínuos e discretos no tempo, etc.
  • 14. Matlab Básico para Engenharia ● Simulink:
  • 15. Matlab Básico para Engenharia ● Inicializando o Matlab:
  • 18. Matlab Básico para Engenharia ● Janela de Comando
  • 19. Matlab Básico para Engenharia ● Histórico de Comandos
  • 20. Matlab Básico para Engenharia ● Diretório Atual
  • 21. Matlab Básico para Engenharia ● Workspace
  • 22. Matlab Básico para Engenharia ● Editor Debugger
  • 23. Matlab Básico para Engenharia ● Editor Debugger
  • 25. Matlab Básico para Engenharia ● START
  • 26. Matlab Básico para Engenharia ● Menu File => Preferences
  • 27. Matlab Básico para Engenharia ● Função help – Indica os tópicos de ajuda disponíveis no Matlab
  • 28. Matlab Básico para Engenharia ● Para visualizarmos os tópicos de forma compassada utilizamos o comando: – >> more on – >> help
  • 29. Matlab Básico para Engenharia ● Para especificarmos a ajuda que necessitamos especificamos o comando – >> help sum ou >> help ops
  • 30. Matlab Básico para Engenharia ● Operações Básicas –Os operados básicos no matlab são + - * / ^ –Os mesmos devem ser utilizados em conjunto com () Ex: significa 2 + 3/(4*5) ou 2 + (3/4)*5?
  • 31. Matlab Básico para Engenharia ● O Matlab atua de acordo com as seguinte prioridades: – Quantidades contidas nos parêntesis () – Potenciações: 2 + 3^2 = 2 + 9 – * e / da esquerda para direita: 3*4/5 = 12/5 + e - da esquerda para direita: 3 + 4 - 5 = 7-5 ● Desta forma o exemplo anterior seria: – 2 + (3/5)*5
  • 32. Matlab Básico para Engenharia ● Para associar valores a variáveis simplesmente utilizamos o operador = no prompt de comando – EX: ● Podemos permitir ou não a vizualização do comando anterior com o operador ; – EX
  • 33. Matlab Básico para Engenharia ● Realizem o exemplo: Z =Z  Z 1 2 – ● Em cada caso ache o valor da expressão no Matlab e explique o porque do resultado em cada caso:
  • 34. Matlab Básico para Engenharia ● Números e Formatos – O matlab é capaz de reconhecer diversos tipos de números: Obtenha números de todos estes tipos em variáveis distintas:
  • 35. Matlab Básico para Engenharia ● No Matlab a notação e pode ser uilizada para representar expoentes na base 10. ● Todos os cálculos executados pelo Matlab são feitos em precisão dupla, ou seja, 15 algarismos significativos.
  • 36. Matlab Básico para Engenharia ● A formatação de como o matlab apresenta estes números pode ser controlada pelo comando “format”
  • 37. Matlab Básico para Engenharia ● Format
  • 38. Matlab Básico para Engenharia ● Format OBS: devemos chamar atenção para o fato de que o comando format modifica apenas a forma de como o número é apresentado e não seu valor ou forma de cálculo.
  • 39. Matlab Básico para Engenharia ● Format – Para verificarmos qual o “tipo de format” que está atualmente em uso utilizamos o comando
  • 40. Matlab Básico para Engenharia ● Nomes para variáveis – O Matlab Permite qualquer combinação entre letras e dígitos começadas por letras – Permitido – Não Permitido – Case Sensitive
  • 41. Matlab Básico para Engenharia ● Nomes para variáveis – Alguns nomes especiais devem ser evitados
  • 42. Matlab Básico para Engenharia ● Outras funções Elementares importantes: –Trigonométricas: sin, cos, tan >> help sin – Notemos que os argumentos das funções trigonométricas devem ser expressos em radianos
  • 43. Matlab Básico para Engenharia ● Outras funções Elementares importantes: – Sqrt : Raiz quadrada – Exp : – Log: inverso da função exponencial (exp(x)), – Log10: logarítimo na base 10 – Identifique as operações
  • 44. Matlab Básico para Engenharia ● Matrizes e Vetores – Vetores podem ser do tipo lina ou coluna ● Vetores Linhas – Separar os elementos de uma linha por espaços em branco ou virgulas – Delimitar a lista de elementos da matriz por [] – O número de elementos é conhecido pelo comando – Devemos proceder com cautela quanto a utilização dos espaços para a definição de vetores
  • 45. Matlab Básico para Engenharia Vetores Linhas – Para vetores do mesmo tamanho podemos realizar certas operações aritméticas
  • 46. Matlab Básico para Engenharia Vetores Linhas – Podemos ainda criar vetores a partir de vetores pré-existentes – Por fim podemos manipular elementos em particular definindo sua posição no vetor utilizando o ()
  • 47. Matlab Básico para Engenharia Vetores Colunas – Construção similar aos vetores linhas; – Separação dos elementos realizada por ; ou “novas linhas” – Ex:
  • 48. Matlab Básico para Engenharia Vetores Colunas – Operações aritméticas também podem ser realizadas respeitando os precedentes matemáticos – EX:
  • 49. Matlab Básico para Engenharia Transposição – Podemos converter um vetor linha em um vetor coluna através do processo de transposição. – No Matlab este processo é denotado pelo operador ' – Ex
  • 50. Matlab Básico para Engenharia Operador Transposto – O operador de transposição pode ser utilizado em conjunto com sentenças matemáticas de forma livre – Ex:
  • 51. Matlab Básico para Engenharia Operador Transposto – Existe ainda uma outra funcionalidade para o operador ' – Quando trabalhamos com números complexos o operador ' representa o conjugado complexo de um número – Ex:
  • 52. Matlab Básico para Engenharia Operador Transposto – Verifique o que acontece quando temos –
  • 53. Matlab Básico para Engenharia Operador Transposto – Para obtermos apenas o correspondente transposto de um vetor formado por números complexo utilizamos:
  • 54. Matlab Básico para Engenharia ● Matrizes e Vetores
  • 55. Matlab Básico para Engenharia ● Matrizes e Vetores – Podemos entrar com matrizes de várias formas: ● Digitar explicitamente os elementos ● Carregar matrizes por um arquivo externo ● Gerar matrizes através de funções pé-estabelecidas ● Gerar matrizes através de uma função própria criada (M-file) – Para digitarmos os elementos em forma de lista devemos seguir o procedimento: ● Separar os elementos de uma linha por espaços em branco ou virgulas ● Usar o ; para indicar o fim de uma linha ● Delimitar a lista de elementos da matriz por []
  • 56. Matlab Básico para Engenharia ● Matrizes e Vetores – Desta forma o Matlab retornará a seguinte resposta
  • 57. Matlab Básico para Engenharia ● Matrizes e Vetores – Os Elementos específicos de uma matriz podem ser manipulados e acessados através da notação A(i,j). – T al notação especifica o elemento contido na linha i e coluna j da matriz A – Ex:O Comando abaixo representa a soma de todos os elementos da coluna 4 da matriz A – EX: Somar todas as linha e as colunas de A
  • 58. Matlab Básico para Engenharia ● Matrizes e Vetores – Existe ainda uma outra forma de acessar elementos específicos de uma matriz utilizando apenas um único operando. – Podemos considerar a matriz como um único vetor linha ou coluna. – Desta forma ao utilizarmos A(8) estamos nos referindo ao valor armazenado em A(4,2) –
  • 59. Matlab Básico para Engenharia ● Matrizes e Vetores – Se buscarmos uma posição fora das dimensões da matriz especificada teremos o seguinte erro – – No entanto se atribuirmos um valor a uma posição anteriormente inexistente a característica dinâmica das matrizes no Matlab modificará a matriz para acomodar a nova entrada –
  • 60. Matlab Básico para Engenharia ● O operador “:” – Um dos operadores mais importantes ao trabalharmos com vetores e matrizes – Em sua forma mais simples é utilizado para criar um vetor de passo unitário delimitados pelo menor e maior elemento – ex:
  • 61. Matlab Básico para Engenharia ● O operador “:” – Configurado na forma x:y temos que o segundo elemento deve ser maior que o primeiro pois o comando busca alcançar y através do incremento de x. – Se utilizarmos por exemplo K=100:4 teremos como resultado a criação de uma matriz K no workspace no entanto tal matriz é considerada “vazia”
  • 62. Matlab Básico para Engenharia ● O operador “:” – Podemos também utilizar o operador : da forma a:b:c – Temos assim um vetor que vai de a até b através do incremento c
  • 63. Matlab Básico para Engenharia ● O operador “:” – O operador : é ainda utilizado para indicar porções de uma matriz – O comando A(1:k,j) se refere ao k primeiros elementos da coluna j da matriz A – Ex: Outra forma de obtermos a soma de uma coluna da matriz A Temos a soma dos elementos da coluna 4
  • 64. Matlab Básico para Engenharia ● O operador “:” – Quando utilizado de forma isolada o operador : se refere a todos os elementos de uma determinada linha ou coluna. – Poemos ainda utilizar o operador “end” que representa o ultimo elemento de um vetor. – Ex: – Descreva o resultado do comando
  • 65. Matlab Básico para Engenharia ● O operador “:” – Podemos também utilizar o operador : da forma a:b:c – Temos assim um vetor que vai de a até b através do incremento c
  • 66. Matlab Básico para Engenharia ● Operações Matriciais – Cinco matrizes básicas para uso no Matlab ● Zeros: Matrizes formadas apenas de zeros ● Ones: Matrizes formadas apenas por 1´s ● Eye: Matriz identidade ● Rand: matriz composta de forma randômica uniformemente distribuída ● Randn: matriz composta de forma randômica com distribuição normal – Ex:
  • 67. Matlab Básico para Engenharia ● Operações Matriciais – Cinco matrizes básicas para uso no Matlab ● Zeros: Matrizes formadas apenas de zeros ● Ones: Matrizes formadas apenas por 1´s ● Eye: Matriz identidade ● Rand: matriz composta de forma randômica uniformemente distribuída ● Randn: matriz composta de forma randômica com distribuição normal – Ex:
  • 68. Matlab Básico para Engenharia ● Operações Matriciais – Cinco matrizes básicas para uso no Matlab ● Zeros: Matrizes formadas apenas de zeros ● Ones: Matrizes formadas apenas por 1´s ● Eye: Matriz identidade ● Rand: matriz composta de forma randômica uniformemente distribuída ● Randn: matriz composta de forma randômica com distribuição normal – Ex:
  • 69. Matlab Básico para Engenharia ● Operações Matriciais – Cinco matrizes básicas para uso no Matlab ● Zeros: Matrizes formadas apenas de zeros ● Ones: Matrizes formadas apenas por 1´s ● Eye: Matriz identidade ● Rand: matriz composta de forma randômica uniformemente distribuída ● Randn: matriz composta de forma randômica com distribuição normal – Ex:
  • 70. Matlab Básico para Engenharia ● Operações Matriciais – Cinco matrizes básicas para uso no Matlab ● Zeros: Matrizes formadas apenas de zeros ● Ones: Matrizes formadas apenas por 1´s ● Eye: Matriz identidade ● Rand: matriz composta de forma randômica uniformemente distribuída ● Randn: matriz composta de forma randômica com distribuição normal – Ex:
  • 71. Matlab Básico para Engenharia ● Operações Matriciais – Outra forma de carregar uma matriz é através de um arquivo externo contendo dados no formato numérico. – Crie um arquivo de texto no notepad com o seguinte conteúdo – Salve o arquivo como matriz.dat no atual diretório corrente do matlab.
  • 72. Matlab Básico para Engenharia ● Operações Matriciais – Utilizando o Comando load podemos carregar eta matriz montada através de uma outra fonte ou em ma sessão anterior do Matlab.
  • 73. Matlab Básico para Engenharia ● Operações Matriciais – Quando o arquivo não está no formato suportado pelo Matlab (.DAT ou .MAT) utilizamos o menu FILE=>Import Data... para adequarmos os dados para o uso no Matlab
  • 74. Matlab Básico para Engenharia ● Operações Matriciais – Import Data...
  • 75. Matlab Básico para Engenharia ● Operações Matriciais – Concatenação ● Trata-se do processo de formar matrizes maiores a partir de matrizes menores já existentes. ● Para isto utilizamo o operador matricial [] juntamente com as matrizes já declaradas
  • 76. Matlab Básico para Engenharia ● Operações Matriciais – Deletando linhas e colunas ● Utilizamos ainda o operador matricial [] da seguinte forma quando desejamos eliminar linhas ou colunas de matrizes: ● X(:,2)=[] deleta a segunda coluna da matriz X
  • 77. Matlab Básico para Engenharia ● Operações Matriciais – Se tentarmos deletar um único elemento de uma matriz o resultado não mais seria uma matriz e desta forma o matlab responderia da seguinte forma:
  • 78. Matlab Básico para Engenharia ● Operações Matriciais – No enanto se utilizarmos a especificação única para elementos de uma matriz podemos deletar apena um único elemento e o conjunto de dados resultantes toma a forma de um vetor –
  • 79. Matlab Básico para Engenharia ● Operações Matriciais – Uma vez familiarizado com o comando sum e o operador transposto ' apresentaremos outros importantes resultados com matrizes: –
  • 80. Matlab Básico para Engenharia ● Operações Matriciais – O comando diag(A) oferece a diagonal principal de A – Ex: soma dos elementos da diagonal principal – Qual o resultado do comando
  • 81. Matlab Básico para Engenharia ● Operações Matriciais – Matriz simétrica – A +A' ou A * A'
  • 82. Matlab Básico para Engenharia ● Operações Matriciais – Determinante de uma matriz: det(A)
  • 83. Matlab Básico para Engenharia ● Operações Matriciais – Inversa de uma Matriz: inv(A) – Como a matriz A possui determinante 0 (singular) a mesma não possui inversa. – O matlab avisa desta condição com um “warning” antes do resultado
  • 84. Matlab Básico para Engenharia ● Operações Matriciais – Autovalores: eig(A)
  • 85. Matlab Básico para Engenharia ● Operações Matriciais – Posto de A: rank(A)
  • 86. Matlab Básico para Engenharia ● Operações Matriciais – Polinômio Característico de A : Poly(A)
  • 87. Matlab Básico para Engenharia ● Matrizes esparsas – Necessitamos de 3 vetores. Os dois primeiros indicam a localização dos elementos diferentes de zero e o ultimo indica o valor destes elemetos
  • 88. Matlab Básico para Engenharia ● Operadores por elementos “.” –
  • 89. Matlab Básico para Engenharia ● Operadores por elementos “.” – Ex
  • 90. Matlab Básico para Engenharia ● Comando find – Retorna uma lista de posições (indices) de elementos de um vetor ou uma matriz que satisfazem determinada condição
  • 91. Matlab Básico para Engenharia ● Editor/Debugger – Menu Desktop=>Editor – Menu File=>New=>M-File
  • 92. Matlab Básico para Engenharia ● Editor/Debugger – Utilizado para executar uma seqüência de comandos pré-determinada – Diversas opções para execução dos comandos – Opção para seleção de breakpoints
  • 93. Matlab Básico para Engenharia ● Editor/Debugger – Uma vez Iniciado o processo de Debug podemos acessar os valores das variáveis já calculadas.
  • 94. Matlab Básico para Engenharia ● Editor/Debugger – Podemos adicionar comentários através do caractere % ou através do atalho CRTL+R
  • 95. Matlab Básico para Engenharia ● Editor/Debugger – Utilize o editor para solucionar o seguinte problema: – Crie uma tabela para armazenar em colunas distintas os valores das funções sen(x2) cos(x2) e tan(x2) onde este ultimo valor é calculado a partir dos resultados das funções anteriores.
  • 96. Matlab Básico para Engenharia ● Controle de Fluxo – Rotina utilizadas para criar laços de repetição ou tomar decisões ● IF ● SWITCH ● FOR ● WHILE ● BREAK
  • 97. Matlab Básico para Engenharia ● Controle de Fluxo – IF: Avalia alógica de uma expressão e executa um grupo de instruções quando a lógica é verdadeira – As opções ELSEIF e ELSE fornecem a opção para execução de grupos alternativos de instruções.
  • 98. Matlab Básico para Engenharia ● Controle de Fluxo – Expressões lógicas – Ex:
  • 99. Matlab Básico para Engenharia ● Controle de Fluxo – Expressões lógicas ● Quando utilizamos matrizes ou vetores os testes são realizados em cada elemento – Ex:
  • 100. Matlab Básico para Engenharia ● Controle de Fluxo – Expressões lógicas ● Podemos ainda combinar expressões lógicas da seguinte forma:
  • 101. Matlab Básico para Engenharia ● Controle de Fluxo – IF
  • 102. Matlab Básico para Engenharia ● Controle de Fluxo – Switch e Case: Executa um conjunto de instruções base ado no valor de uma variável ou expressão. – Os comandos case ou otherwise delimitam os conjuntos de instruções
  • 103. Matlab Básico para Engenharia ● Controle de Fluxo – Switch e Case – Utilize o switch para reproduzir o algorítimo executado com o comando IF
  • 104. Matlab Básico para Engenharia ● Controle de Fluxo – Observamos desta forma uma peculiaridade no comando Switch. Ao contrário de seu equivalente em C o comando não continua executando até a possibilidade final. Desta forma se o primeiro caso é verdadeiro as outras condições não são executadas mesmo sem a presença do comando break
  • 105. Matlab Básico para Engenharia ● Controle de Fluxo – For: Repete um grupo de comandos delimitados pelo “end” por um número determinado de vezes.
  • 106. Matlab Básico para Engenharia ● Controle de Fluxo – While: Utilizado quando queremos repetir uma série de comandos até que uma condição seja satisfeita, no entanto não podemos dizer de forma antecipada quantas iterações são necessárias. – Ex: qual o maior valor de n que pode ser utilizado na soma para obtermos um resultado menor que 100?
  • 107. Matlab Básico para Engenharia ● Controle de Fluxo – While: Utilizado quando queremos repetir uma série de comandos até que uma condição seja satisfeita, no entanto não podemos dizer de forma antecipada quantas iterações são necessárias. – Ex: qual o maior valor de n que pode ser utilizado na soma para obtermos um resultado menor que 100?
  • 108. Matlab Básico para Engenharia ● Controle de Fluxo – Break: possibilita uma saída antecipada de um laço for ou while. – Em laços concatenados o break possibilita a saída do laço mais interno.
  • 109. Matlab Básico para Engenharia ● Funções M-file – Utilizada quando desejamos preparar uma combinação de operações e ideais em um script que pode ser acessado posteriormente de forma rápida. – Tomaremos como exemplo o seguinte problema: ● Desejamos preparar uma função que calcula a área A de um triangulo cujo o comprimento dos lados é a, b e c.
  • 110. Matlab Básico para Engenharia ● Funções M-file – Dois passos básicos são necessários para definirmos funções no matlab, – O primeiro passo é definir um nome para a função, de forma que não tenhamos conflito com as funções já existentes no matlab. – Para este exemplo usaremos o nome “area” desta forma devemos salvar suas definições no arquivo area.m
  • 111. Matlab Básico para Engenharia ● Funções M-file – Posteriormente a primeira linha do arquivo deve ser formatada da seguinte forma: – Em nosso exemplo temos como entradas as variáveis a, b e c representando o comprimento dos lados e como saída a área A
  • 112. Matlab Básico para Engenharia ● Funções M-file – Finalmente implementamos o código que deve ser utilizado para implementar a função. – No caso do exemplo temos:
  • 113. Matlab Básico para Engenharia ● Funções M-file – Finalmente implementamos o código que deve ser utilizado para implementar a função. – No caso do exemplo temos:
  • 114. Matlab Básico para Engenharia ● Funções M-file – Por fim podemos documentar através de comentários o arquivo de função de forma que o usuário tenha acesso ao comando ajuda
  • 115. Matlab Básico para Engenharia ● Funções M-file – Por fim podemos documentar através de comentários o arquivo de função de forma que o usuário tenha acesso ao comando ajuda
  • 116. Matlab Básico para Engenharia ● Funções M-file – O exemplo anterior funciona apenas se a soma de qualquer dois lados não exceder o terceiro. – Modifique a função para considerarmos esta condição.
  • 117. Matlab Básico para Engenharia ● Eficiência de códigos – O matlab permite cronometrarmos secções de códigos através das funções “tic” e “toc” – “tic” ativa o cronometro para CPU – Enquanto o toc para o cronometro e retorna o valor de tempo decorrido. – Ex
  • 118. Matlab Básico para Engenharia ● Gráficos – O matlab possui uma extensa variedade para representar vetores e matrizes na forma gráfica. – Veremos agora algumas das principais destas ferramentas
  • 119. Matlab Básico para Engenharia ● Gráficos – Plot ● Possui diferentes formas de uso dependendo da quantidade de seus argumentos de entrada. ● Em sua forma mais simples, dado um vetor y o comando “plot(y)” produz um gráfico dos elementos de y distribuídos de forma linear ao longo do x ● Ex: crie um veto Y aleatório de 10 posições de utilize o comando plot(Y)
  • 120. Matlab Básico para Engenharia ● Gráficos – Plot(Y)
  • 121. Matlab Básico para Engenharia ● Gráficos – Se utilizarmos 2 vetores x e y como entrada teremos como resultado um gráfico de x vs y ● EX:
  • 122. Matlab Básico para Engenharia ● Gráficos – Podemos identificar os eixos presentes no gráfico bem como adicionar um título ao mesmo através dos comandos:
  • 123. Matlab Básico para Engenharia ● Gráficos – Múltiplos pares de dados z-y como argumentos de entrada produzem múltiplos gráficos em apenas uma chamada do “plot” – EX:
  • 124. Matlab Básico para Engenharia ● Gráficos – É possível ainda especificarmos a cor e o estilo de marcador do gráfico utilizando o “plot” com a seguinte sintaxe – EX:
  • 125. Matlab Básico para Engenharia ● Gráficos – Números Complexos: Ao trabalharmos com números complexos o comando plot necessita apenas de um argumento para entrada dos dos já que os mesmo já estão representados em suas partes reais e imaginárias – EX:
  • 126. Matlab Básico para Engenharia ● Gráficos – Plot(Z):
  • 127. Matlab Básico para Engenharia ● Gráficos – Números Complexos: No entanto se utilizarmos o “plot” com mais de um argumento de entrada o Matlab irá ignorá a parte imaginária dos números na tentava de adequar o gráfico a apenas 2 dimensões: – EX:
  • 128. Matlab Básico para Engenharia ● Gráficos – Números Complexos: No entanto se utilizarmos o “plot” com mais de um argumento de entrada o Matlab irá ignorá a parte imaginária dos números na tentava de adequar o gráfico a apenas 2 dimensões: – EX:
  • 129. Matlab Básico para Engenharia ● Gráficos – Hold: O comando “plot” possui como modo de execução padrão de limpar a janela gráfica antes de adicionar um novo. No entanto este comportamento não nos permite executar comparação de gráficos se o mesmo forem criados em estágios diferentes do código. – Desta forma o comando “hold on” sobrepor gráficos a partir de um determinado momento
  • 130. Matlab Básico para Engenharia ● Gráficos – EX:
  • 131. Matlab Básico para Engenharia ● Gráficos – Subplot: A janela de gráficos do matlab pode ser dividida em uma matriz de mxn janelas menores nas quais cada uma pode conter um ou mais gráficos. – As janelas são numeradas na forma de um vetor coluna iniciando da janela superior esquerda – Comandos como “hold” ou “label” também são válidos nestes casos.
  • 132. Matlab Básico para Engenharia ● Gráficos – EX: ● Especificamos que a janela grafica deve serdividida em uma matriz 2x2 onde selecionamos a subjanela 1 para conter os resultados do comando plot(x,y) ● Utilizamos agora os comandos “label” para identificarmos os eixos do grafico da primeira subjanela.
  • 133. Matlab Básico para Engenharia ● Gráficos – EX: Proceda da forma anterior para completar as janelas livres com as funções COS(X), SEN(3X) e COS(3X).
  • 134. Matlab Básico para Engenharia ● Gráficos
  • 135. Matlab Básico para Engenharia ● Gráficos
  • 136. Matlab Básico para Engenharia ● Gráficos
  • 137. Matlab Básico para Engenharia ● Gráficos 3D – Uma superfície é definida matematicamente como uma função de duas variáveis f  x , y – Correspondendo a cada valor (x,y) computamos o valor funcional por z= f  x , y  – Desta forma para traçarmos a superfície devemos primeiramente decidir os limites de x e y – Se por exemplo tivermos 2≤x≤4 e 1≤ y≤3 obtemos como base o seguinte plano xy
  • 138. Matlab Básico para Engenharia ● Gráficos 3D – Uma realizadas estas definições construímos uma superfície analisando o comportamento da função z= f  x , y  em cada ponto da “malha diferencial” construída z= f  x , y  – No matlab estas operações são realizadas através dos comando “meshgrid” e “mesh” respectivamente
  • 139. Matlab Básico para Engenharia ● Gráficos 3D – Tomaremos o seguinte exemplo: – Construa a superfície definida pela função Para os intervalos
  • 140. Matlab Básico para Engenharia ● Gráficos 3D – Tomaremos o seguinte exemplo: – Construa a superfície definida pela função Para os intervalos – 1o Passo: Para construirmos a malha diferencial do plano XY criaremos dois vetores baseados nos intervalos que desejamos analisar e com o passo igual ao incremento diferencial em cada direção
  • 141. Matlab Básico para Engenharia ● Gráficos 3D – – 2o Passo: Implementamos a função desejada nas matrizes criadas pelo comando “meshgrid” –
  • 142. Matlab Básico para Engenharia ● Gráficos 3D – 3o Passo: Traçamos a superfície desejada através do comando “mesh” –
  • 143. Matlab Básico para Engenharia ● Gráficos 3D – EX –
  • 144. Matlab Básico para Engenharia ● Gráficos 3D – EX –
  • 145. Matlab Básico para Engenharia ● Gráficos 3D – EX –
  • 146. Matlab Básico para Engenharia ● Gráficos 3D – EX –