matlab (apostila)

matlab (apostila)

(Parte 1 de 4)

Apostila de MATLAB Luis Marcelo de Mattos Zeri

INPE dezembro/2001

Apresentação

No documento final do I-EPGMET (Encontro dos Alunos de Pós-Graduação em Meteorologia), realizado em 2000, expressa-se claramente que os alunos gostariam de ter cursos introdutórios dos principais softwares e linguagens de programação utilizados pela comunidade de Meteorologia do INPE. Desde então, essa demanda permaneceu presente, mas adormecida. Recentemente, em setembro, com a retomada das discussões sobre a necessidade de cursos, propôs-se a elaboração de apostilas simples, básicas, voltadas para o usuário que nada ou muito pouco conhece do software ou da linguagem de programação. Dessa proposta nasceu o Projeto Apostila.

O Projeto Apostila é composto de 5 grupos. Cada grupo foi responsável pela elaboração de uma apostila sobre um software ou uma linguagem de programação. Os grupos são: Rosane Chaves e Daniel Andres (Grads); Rita Andreoli e João Carlos Carvalho (Fortran); Luis Marcelo de Mattos Zeri (Matlab); Pablo Fernandez e Emanuel Giarolla (Latex); e Hélio Camargo e Marcos Oyama (Unix). Os grupos, durante 2 meses, trabalharam intensamente (sem se descuidar das suas dissertações e teses) para produzir as apostilas. A apostila que você está recebendo é fruto do esforço de um dos grupos.

Gostaríamos de agradecer a todos os colegas que revisaram a versão "0" das apostilas: Alexandra Amaro de Lima, Antônio Marcos Mendonça, Edna Sousa, Elizabeth Reuters, Everson dal Piva, José Francisco de Oliveira Júnior, Marcos Yoshida, Maurício Bolzan, Patrícia Moreno Simões, Paulo Marcelo Tasinaffo, Raimundo Moura, Rodrigo de Souza e Wantuir Aparecido de Freitas. As sugestões, críticas e os comentários apresentados foram de grande valia. Muito obrigado!

Gostaríamos, também, de agradecer a Anísio Moliterno por disponibilizar a área pública da fractal para os arquivos de exemplos das apostilas.

As apostilas não têm o objetivo de competir com os cursos que são oferecidos pelo CPTEC ou INPE, mas complementar. A idéia é que o usuário, após estudar a apostila, possa caminhar sozinho, consultando manuais ou os colegas; ou seja, torne-se independente. A apostila é uma ponte, não o fim. Recomenda-se aos leitores da apostila que façam os cursos oferecidos pelo CPTEC ou INPE: sempre temos algo a aprender! Além disso, no futuro, as apostilas podem servir de base para cursos ministrados por alunos-instrutores.

Espera-se que, no futuro, outros Projetos Apostila sejam realizados, melhorando e atualizando as apostilas existentes. Além disso, outras apostilas (p.ex. Fortran 90), poderão ser elaboradas.

Boa leitura!

Instalação dos exemplos

Peça a alguém do Suporte (ou algum colega que conheça um pouco de UNIX) para instalar os exemplos na sua área. As instruções são as seguintes:

1. Transfira (via ftp, como usuário anônimo) o arquivo instala_apostila da área pública da fractal ( /pub/software/apostila ) para o home do usuário.

(em negrito está o que você deve digitar; θ é a tecla Enter) nevasca:/home/fulano>ftp fractal θ

Name (fractal:fulano):anonymous θ Guest login ok...

Password:fulano@cptec.inpe.br θ#ATENÇÃO: não irá aparecer na tela!

Guest login ok...

ftp>cd pub/software/apostila θ ftp>asc θ ftp>get instala_apostila θ ftp>quit θ nevasca:/home/fulano>

2. Abra a permissão de execução de instala. nevasca:/home/fulano>chmod u+x instala_apostila θ

3. Execute instala_apostila (e entre com as informações pedidas durante a instalação). nevasca:/home/fulano>instala_apostila θ

Explicação dos exemplos

O MATLAB está instalado na Fenix e roda em diversas máquinas além dela, como Caos, Neblina, Nevasca, Terra, Urano e Vortice.

Dos 3 exemplos que acompanham a apostila apenas o segundo exige intervenção do usuário na sua execução. Os detalhes para tal procedimento estão no arquivo chamado leiame.txt, na mesma pasta desse exemplo. Abaixo é mostrado o conteúdo do arquivo leiame.txt:

Esse programa pede que seja entrado com o nome de um arquivo contendo dados. Esse arquivo acompanha o programa e chama-se d25413h.dat. Basta digitar o seu nome quando solicitado pelo programa.

1. INTRODUÇÃO2
2. INICIANDO O MATLAB2
3. DEFINIÇÃO DE VARIÁVEIS2
4. VETORES E MATRIZES4
4.1 Vetores4
4.2 Matrizes6
4.3 Importando dados7
4.4 Operações matemáticas com matrizes8
5. GRÁFICOS10
6. ESCREVENDO PROGRAMAS NO MATLAB14
6.1 Controle de Fluxo num Programa18
6.2 Criação de funções pelo usuário18

Sumário 7. AJUDA ON LINE NO MATLAB E REFERÊNCIAS...............................................19

1. Introdução

O MATLAB é tanto uma linguagem de programação quanto um ambiente de computação técnica que possibilita a análise e visualização de dados, cálculos matemáticos e desenvolvimento de algoritmos, entre outras aplicações. Sua primeira versão foi escrita no final da década de 70 nas Universidades do Novo México e Stanford visando fornecer suporte a cursos de teoria matricial, álgebra linear e análise numérica.

2. Iniciando o MATLAB

O espaço de trabalho do MATLAB é iniciado ao se digitar no prompt do terminal o comando matlab. Feito isso é iniciado o ambiente de trabalho. Nesse ambiente é possível usar comandos de gerenciamento de arquivos, como delete arquivo e edit arquivo, e comandos de movimentação entre diretórios, comuns aos usuários de DOS e shell (UNIX), como dir, ls e cd diretório. Para sair do ambiente basta digitar exit ou quit.

3. Definição de variáveis

No MATLAB é possível definir variáveis que serão usadas na sessão de trabalho, como no exemplo abaixo:

» a=10 a= 10

Pressionando a tecla ENTER, o MATLAB confirma na tela o valor inserido a menos que seja colocado um sinal de ponto e vírgula (;) após o fim da linha:

Essa opção é interessante para a definição de variáveis extensas, evitando que todos os seus valores sejam exibidos na tela.

Uma variável complexa é definida especificando-se suas partes real e a imaginária:

»c=1 + 2i c = 1.0 + 2.0i »

Definidas as variáveis é possível então efetuar operações matemáticas com elas. As operações básicas são listadas abaixo

Operação Símbolo adição, a+b+ subtração, a-bmultiplicação, a·b* Divisão, a÷b/ potenciação ^ e alguns exemplos são dados a seguir:

» a+b ans= 30 onde ans é a variável padrão usada para resultados. Pode-se direcionar a saída para outra variável da seguinte forma:

» d=a+b d= 30

Algumas regras devem ser obedecidas na definição de variáveis: • as variáveis são sensíveis à maiúsculas e minúsculas;

• devem conter no máximo 31 caracteres;

• os nomes devem começar com letras e caracteres acentuados não são permitidos.

Alguns exemplos de nomes para variáveis são: total_anual2000, media25, MEDIA25, X1251330. Note que, segundo as regras acima, o segundo e o terceiro exemplo referem-se a variáveis diferentes.

Algumas variáveis já são pré-definidas, como pi (π), i e j (1−), realmin e realmax (menor e maior número real utilizável pelo MATLAB, respectivamente).

Pode-se visualizar todas as variáveis já definidas através do comando whos:

NameSize Bytes Class
a1x1 8 double array
ans1x1 8 double array
b1x1 8 double array
c1x1 16 double array (complex)
d1x1 8 double array

» whos

Grand total is 5 elements using 48 bytes »

Nessa listagem vê-se o nome (name), dimensão (size) e tamanho (medido em bytes) de cada variável definida anteriormente. A última coluna informa o tipo da variável (class). Para apagar uma variável usa-se o comando clear nome_da_variável. O comando clear all remove todas as variáveis do espaço de trabalho.

4. Vetores e Matrizes

4.1 Vetores

(Parte 1 de 4)

Comentários