Introdução ao Matlab. 1 Algumas regras e comandos do Matlab. 3 de março de 2015. Docente Responsável : Prof. Dr. Antônio C. Roque



Documentos relacionados
Oficina de MATLAB Nível Básico Aula 1

Scilab. Introdução ao Scilab. Como obter ajuda

Introdução ao MATLAB

UNIVERSIDADE GAMA FILHO Laboratório de Controle I - MATLAB

CURSO DE PROGRAMAÇÃO EM JAVA

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

O Excel é um programa de computador desenvolvido para gerenciar dados na forma de planilhas.

Aula 2P - Comandos básicos do Matlab aplicados a PDS

Tutorial de Matlab Francesco Franco

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Algoritmos e Programação Estruturada

MC-102 Aula 01. Instituto de Computação Unicamp

INF 1005 Programação I

Componentes da linguagem C++

17 - Funções e Procedimentos em C Programação Modular

COMO CRIAR SUA PRÓPRIA FUNÇÃO UTILIZANDO PROGRAMAÇÃO VBA - EXCEL

INF 1620 P1-10/04/02 Questão 1 Nome:

Programação 1. Rafael Vargas Mesquita. ftp://ftp.ci.ifes.edu.br/informatica/rafael/

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

Notas para um curso de Cálculo 1 Duilio T. da Conceição

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

Manual de configuração do sistema

Dicas para usar melhor o Word 2007

Linguagem e Técnicas de Programação I Programação estruturada e fundamentos da linguagem C

Como funciona? SUMÁRIO

Estruturas de Repetição

Linguagem de Programação

INTRODUÇÃO AO JAVA PARA PROGRAMADORES C

Informática no Ensino de Matemática Prof. José Carlos de Souza Junior

IFTO LÓGICA DE PROGRAMAÇÃO AULA 01

Criando um script simples

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Sistemas e Sinais (LEE & LETI)

Resumo da Matéria de Linguagem de Programação. Linguagem C

LINGUAGEM C UMA INTRODUÇÃO

Capítulo 2: Introdução à Linguagem C

TUTO TUT RIAL O DE MATLAB MA FLÁVIA BASTOS 04/05/2010

JAVA NETBEANS PGOO Prof. Daniela Pires Conteúdo

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Como incluir artigos:

Introdução à Programação

Aula 1 Tipo Abstrato de Dados

Eclipse com c++11 e boost Etapa 1- Download da IDE Eclipse c++ e configuração do MinGW

Bacharelado em Ciência e Tecnologia Bacharelado em Ciências e Humanidades. Representação Gráfica de Funções

ERROS MAIS COMUNS COMETIDOS EM PROGRAMAS E ALGORITMOS

Curso de Linguagem C

Capítulo 5. ARQUIVOS E FUNÇÕES MATEMÁTICAS INTRÍNSECAS

Capítulo 13. VARIÁVEIS DO TIPO REAL DUPLA

Projeto SIGA-EPT. Manual do usuário Módulo Requisição de Almoxarifado SISTEMA INTEGRADO DE GESTÃO ACADÊMICA

Exercícios de Java Aula 19

Lazarus pelo SVN Linux/Windows

Departamento: Matemática Curso: Eng a Madeiras Ano: 1 o Semestre: 2 o Ano Lectivo: 2006/2007. Aula prática n o 1 - Introdução ao MATLAB

Aluísio Eustáquio da Silva

Programação de Robótica: Modo Circuitos Programados - Avançado -

CURSO DE INFORMÁTICA BÁSICA AULA 2 O AMBIENTE WINDOWS

MICROSOFT EXCEL AVANÇADO

Lista de operadores de comparação - > Maior que - < Menor que - <= Menor ou igual a - >= Maior ou igual a - === Igual a -!

MANUAL DO USUÁRIO. TOOLBOX SIA.

JSP - ORIENTADO A OBJETOS

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

Mini Curso Introdução ao MATLAB

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

Noções sobre Objetos e Classes

Microsoft Excel 2007


Introdução à Lógica de Programação

BEM-VINDO AO dhl PROVIEW

Neste artigo estudaremos os conceitos relacionados às matrizes unidimensionais (vetores) e multidimensionais.

07/03/07 1ª aula de Matlab 10:30 12:00

Criando e usando Gráficos

Introdução a Java. Hélder Nunes

Prof. Esp. Adriano Carvalho

5 Apresentando a linguagem C

Apresentando o Microsoft Excel

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES

Scriptlets e Formulários

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

Sumário. Tutorial: Editor de Exercícios Online para o professor

15 a Aula Subprogramação /Subalgoritmos Função e Procedimento

Como funcionam os comandos de SQL no Logic Basic Por Alan Oliveira

AMBIENTE DE PROGRAMAÇÃO PYTHON

4 RECURSOS AUTOMATIZADOS DO EXCEL

STK (Start Kit DARUMA) Observer2 Driver para Linguagens DOS Mini Impressoras Versão 1.0

Persistência de Dados

SuperLogo: aprendendo com a sua criatividade

Técnicas de Programação I

2 Um Primeiro Programa em C

Orientação a Objetos

2. OPERADORES ALGORITMOS, FLUXOGRAMAS E PROGRAMAS FUNÇÕES... 10

Hardware. Computador. Hardware parte do computador em que você normalmente mete o pé quando seu computador não executa uma tarefa solicitada por você.

&XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Prof. Dr. Iron Macêdo Dantas

Microsoft Office PowerPoint 2007

Transcrição:

Introdução ao Matlab 3 de março de 2015 Docente Responsável : Prof. Dr. Antônio C. Roque Monitores : Rodrigo F. O. Pena e Renan Shimoura MATLAB (MATrix LABoratory) é um programa de alta performance e de alto nível criado para auxílio no campo cientíco. Utiliza de linguagem própria, mas também interpreta várias outras linguagens como C. Foi escrito em C e em Java mas, por ser de alto nível, é de fácil uso pois utiliza de linguagem interpretada que é facilitada ao usuário. Como sua linguagem é interpretada e não é compilada, em geral é mais lento que linguagens de baixo nível como C e Fortran. É multiplataforma, ou seja, não é restrito a um sistema operacional único e é muito utilizado no meio acadêmico e cientíco. Não é um software livre, sua licença é paga e deve ser adquirida através da MathWorks. A USP possui convênio e disponibiliza licenças para alunos e professores em www.cce.usp.br. Além disso, também pode-se adquirir toolboxes que já possuem diversas funções pré-denidas para engenharias, processamento paralelo, processamento de imagens, bioinformática, entre outras. Assita um overview em www.mathworks.com/products/matlab/?s_cid=wiki_matlab_2. 1 Algumas regras e comandos do Matlab O ambiente Matlab é divido em várias janelas que podem ser customizadas de acordo com a necessidade do usuário. Algumas dessas janelas: Editor, Command, Workspace, History, etc. 1. Command: Este é o "prompt" que interpreta os comandos do Matlab. O que for digitado aqui é executado imediatamente. Para facilitar a escrita de programas mais extensos, em geral, utiliza-se o editor e não o command. Basta digitar o comando edit que o editor abrirá. 2. Editor: Aqui é possível escrever os programas e salvá-los em arquivos para depois executá-los. 1

3. History: Aqui cam armazenados os comandos recentes utilizados pelo usuário. 4. Workspace: Variáveis armazenadas durante a execução dos programas são exibidas aqui. A declaração de variáveis não é sujeita a tipicação como é feita em outras linguagens (int, oat, double, char, etc). Em Matlab basta igualar a variável ao valor desejado que o próprio programa interpretará e atribuirá o tipo. Antes de mostrar alguns exemplos, algumas regras e comandos básicos são: Matlab é feito para que os cálculos sejam matriciais, evite usar rotinas de loop como for para implementar seus programas. Os mesmos funcionarão mas não serão otimizados. Na eventual declaração de variáveis, utilizar ponto e vírgula ao m evita que as variáveis sejam exibidas na tela. Tente declarar A=1 no command e A=1; para ver a diferença. Diversas funções matemáticas já estão implementadas no Matlab, procure comandos para seno, cosseno, exponencial e logaritmo por exemplo. O comando help é extremamente útil para programar em Matlab. Basta digitar help + nome_do_comando que o próprio Matlab dará todas as explicações sobre o comando que se queira saber com exemplos incluídos. Tente digitar por exemplo help dot no command para entender como se utiliza o produto de vetores em Matlab. Para procurar comandos utilize também o comando lookfor (exemplo: lookfor 'square root' ). Atenção, em Matlab os índices para vetores e matrizes começam em 1 e não em 0 como em C. Comentário em Matlab são feitos com o símbolo de porcentagem %. Abaixo, veja a diferença de alguns programas implementados em C e em Matlab: Código 1 em C : Multiplicação de vetores //Multiplicação de Vetores Início #include <stdio.h> int main(){ int A[3], B[3], C[3]; //Declaração dos vetores for(int i = 0; i < 3; i++){ //preenchendo os vetores A[i] = i+1; B[i] = A[i]*A[i]; 2

} for(int i=0; i < 3; i++) //multiplicando } C[i] = A[i]*B[i]; for(int i=0; i < 3; i++) return 0; printf("c[%d] = %d \n",i, C[i]); //imprimindo o resultado //Fim de Código Código 1 em Matlab : Multiplicação de vetores % Multiplicação de Vetores Início A = [1 2 3]; B = A.*A; C = A.*B % Fim de Código Observações: O código em Matlab utiliza ponto + operação para indicar que a multiplicação é feita "ponto a ponto", ou seja, cada elemento i será multiplicado pelo seu correspondente i no outro vetor. Observe também que para imprimir o resultado basta tirar o ";" da variável. Aliás, nem seria necessário o uso de uma variável C, o usuário poderia simplesmente escrever A.*B que o resultado seria exibido. Código 2 em C : Multiplicação de matrizes //Multiplicação Matrizes Início #include <stdio.h> int main(){ int linhas = 3, colunas = 3; int aux_soma; //auxiliar para somar os produtos int matriz1[3][3]={{1,2,3},{4,5,6},{7,8,9}}; int matriz2[3][3]={{9,8,7},{6,5,4},{3,2,1}}; int resultado[linhas][colunas]; for(int i = 0; i < linhas; i++) for(int j = 0; j < colunas; j++){ aux_soma=0; for(int k = 0; k<linhas; k++) aux_soma+=matriz1[i][k]*matriz2[k][j]; //soma os produtos 3

} //imprimindo o resultado for(int i = 0; i < linhas; i++) resultado[i][j]= aux_soma; //coloca o resultado da soma na matriz resultado for(int j = 0; j < colunas; j++){ printf("%d ", resultado[i][j]); //printf("\n"); } return 0; } //Fim de Código Código 2 em Matlab : Multiplicação de matrizes %Multiplicação Matrizes Início matriz1 = [1 2 3; 4 5 6; 7 8 9]; matriz2 = [9 8 7; 6 5 4; 3 2 1]; matriz1*matriz2 %Fim de código Estes exemplos tem como objetivo mostrar como o Matlab possui uma linguagem facilitada para a realização de tarefas geralmente complexas em linguagens usuais como C, Java, etc. 2 Alguns Problemas Os seguintes problemas são comuns em cursos de programação básicos e te ajudarão a ganhar uma noção melhor de como o Matlab funciona, selecionamos alguns para que você tente resolvê-los. 1. Dado x = [1 2 3 4 5 6], escreva esse vetor em Matlab e entenda o signicado dos comandos abaixo: (a) x(5) (b) x(2:5) (c) x(1:end) (d) x(1:end-1) (e) x(6:-2:1) (f) x([1 5 2 1 1]) 4

(g) sum(x); mean(x); var(x); std(x) 2. Considere os vetores A = [1 2 3], B = [3 2 1] e a matriz M = [4 5 6 ; 6 5 3], digite os próximos comandos e verique se sua execução está correta, explique o porquê. Dica: utilize o comando size ou whos. (a) A + B (b) A + M (c) A' + B (d) M - [A ; B] (e) [A ; B'] (f) [A ; B] (g) M - 3 (h) A*B (i) A'*B ou A*B' (j) A.*B (k) A./B (l) inv([m ; A]) (m) det([m; A]) 3. Crie um vetor com o comando randi(100,1,10) (procure no help randi). Encontre qual é o maior valor neste vetor e seu índice. Substitua pelo seu quadrado. 4. Considere a matriz M = [10 2 10 5; 2 5 1 6; 2 4 8 10; 4 10 3 5]. Substitua os valores da primeira coluna e da última linha por 1. Utilize o comando nd para encontrar na terceira linha desta matriz os índices dos valores que são maiores que 5. Troque estes valores por 5. 5. A função de Fibonacci pode ser denida como F (0) = 0,F (1) = 1, F (n) = F (n 1) + F (n 2) para n > 1. Escreva em Matlab um programa que calcule de maneira recursiva até n = 20. 6. Chamando o harmônico de um número n de n 1 k, k=1 encontrar em Matlab o harmônico de 255. 7. Calcule uma boa aproximação de cosseno de um número n dada por cosx = 1 x2 2! + x4 4! x6 x2k +... + ( 1)k 6! (2k)! e compare ao resultado do Matlab. 5

8. Crie grácos das funções x, x 3, e x : (a) Em coordenadas rectangulares. (b) Em coordenadas logaritmicas no eixo y (semilog). (c) Em coordenadas logaritmicas nos dois eixos. 9. A expressão que modela o crescimento da população brasileria pode ser escrita como P (t) = 157, 273, 000/(1 + e 0.0313(t 1913.25) ) onde t é dado em anos. Faça um gráco que mostre o crescimento populacional de 1900 a 2100 e encontre neste gráco a população em 2050. 10. Considere o seguinte polinômio de segundo grau: f(x) = x 2 + x 6, encontre as raízes deste polinômio utilizando Matlab. Dica: utilize help para entender a função roots. 11. Escreva uma função que retorne 1 se um número for primo e 0 se não for primo. Para isto, crie um arquivo externo que contém o mesmo nome da função e utilize help function para entender como escrever funções em Matlab. Crie um arquivo separado para executar esta função. 12. Crie uma função que calcule y de uma equação genérica ax 2 + bx + c = y. Desta vez, crie a função no mesmo arquivo de execução. Dica: podese escrever uma função em Matlab utilizando a seguinte declaração f = @(x)(x^2-2); 13. Utilize a função polyval para avaliar o valor de 5x 7 + 3x 3 2 no ponto x = 87. Caso necessite, utilize help para entender como polyval funciona. 6