Professional Documents
Culture Documents
Tutorial do OCTAVE /
OCTAVE Tutorial
Autores:
MMaauurriicciio
oGGa
allo o
PPa
auullo
od deeOOlliiv
veeiirra
aCCa
amma
arrg
goo
1. INTRODUO
2. INICIANDO O OCTAVE
3. OPERAES COM MATRIZES E VETORES
4. GRFICOS
5. ARQUIVOS SCRIPT
6. CONTROLE DE FLUXO
7. ABERTURA E VISUALIZAO DE IMAGENS
8. IMPORTAO / EXPORTAO DE DADOS
Autores: 9. CRIAO E USO DE FUNES
MMaauurriicciio
oGGa
allo o
2
2001
166 PPa
auullo
od deeOOlliiv
veeiirra
aCCa
amma
arrg
goo
REFERNCIAS
Departamento de Cartografia / FCT - UNESP
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Este material foi preparado a partir das seguintes referncias (em ordem alfabtica): 1. INTRODUO
CORAL, A. M.; SANTOS, M. P.; BASTOS, T. D. A.; BORBA, M. Curso de Matlab. Universidade Federal de
Santa Catarina, Dep. de Eng. de Produo, Programa Especial de Treinamento PET. Florianpolis SC, 1999.
1.1. O que OCTAVE
29p.
EATON, J. W.; BATEMAN, D.; HAUBERG, S. GNU Octave Edition 3 for Octave version 3.2.3, July, 2007.
672p.
EATON, J. W.; BATEMAN, D.; HAUBERG, S.; WEHBRING, R. GNU Octave Edition 4 for Octave version
O OCTAVE um aplicativo que foi originalmente desenvolvido com o propsito
4.0.0 Free Your Numbers, March, 2015. 966p.
HANSELMAN, D.; LITTLEFIELD, B. Matlab - Verso do Estudante: guia do usurio (Traduo). So didtico, mais especificamente para o projeto de reatores qumicos e surgiu a partir da
Paulo: Makron Books, 1997. 305p.
inteno de criar um aplicativo no qual a programao fosse mais rpida do que nas
McANDREW, A. Introduction to Digital Image Processing with MATLAB. Thomson Course Technology,
2004. 509p. ISBN: 0-534-40011-6 demais linguagens.
PAGAMISSE, A.; SOUZA, L. H. G. Introduo ao Software Octave. Semana de Cursos de Matemtica,
Estatstica e Computao, 25-29 de agosto de 2003, FCT/UNESP, Presidente Prudente, 2003. 54p.
SIGMON, K. Matlab Primer Third Edition. Department of Mathematics, University of Florida, Gainesville, Deste modo, os alunos poderiam dedicar mais tempo na anlise e soluo dos
1993. 35p. Disponvel em http://skomam.vsb.cz/program/primer.pdf. Acesso em 13/Junho/2015.
problemas de qumica, do que especificamente na implementao.
ZERI, L. M. M. Apostila de Matlab. Instituto Nacional de Pesquisas Espaciais INPE, 2001. 19p.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 3 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 4
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
O seu desenvolvimento comeou por volta de 1988 e um de seus idealizadores foi Caractersticas bsicas:
John W. Eaton, alm de James B. Rawlings da Universidade de Wisconsin-Madison e
John G. Ekerdt da Universidade do Texas. Atualmente o desenvolvimento feito por - Domnio pblico;
vrios profissionais, de diferentes pases, sendo a sua distribuio feita de acordo com a - Possui vrios comandos que so semelhantes ao MATLAB e SciLab;
licena GLP (GNU General Public License). - So disponveis verses para diferentes sistemas operacionais: Linux, Unix,
Windows, Mac, etc.
Onde encontrar:
http://www.gnu.org/software/octave/
ltima verso (estvel):
http://octave.sourceforge.net/
4.0.0 (Lanada em Maio/2015)
ltima atualizao:
4.0.3 (Lanada em Julho/2016)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 5 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 6
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
1
Interface no grfica - OCTAVE verso 3.2.4.
Consulte a pgina ftp://ftp.gnu.org/gnu/octave/ para ver algumas destas verses.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 7 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 8
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Alm dessas verses, que podem ser instaladas e executadas no modo off-line, tambm
possvel executar o OCTAVE de modo online, a partir do endereo mostrado abaixo.
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 11 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 12
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
2. INICIANDO O OCTAVE
Para a instalao de um pacote qualquer, de nome package_file_name.tar.gz, basta
ativar o seguinte comando no prompt do OCTAVE: 2.1. Variveis
pkg install package_file_name.tar.gz O OCTAVE trabalha essencialmente com um tipo de varivel: matriz, que pode conter
nmeros, complexos ou no (um escalar uma matriz 1 x 1) e textos. Em alguns casos,
No diretrio mencionado anteriormente (C:\Octave\Octave-4.0.0\src) pode-se notar
um tratamento especial dado a uma matriz 1 x 1 (escalar) ou a matrizes 1 x n ou n x 1
que vrios outros pacotes/bibliotecas esto disponveis. Pode-se notar que neste diretrio
(vetores).
tem-se tambm o arquivo build_packages.m que contm o script que permite a
instalao de vrias outras bibliotecas.
2.1.1. Entrando com valores
Uma vez que para o desenvolvimento deste tutorial so necessrias apenas algumas
delas, sugere-se a instalao apenas dos seguintes pacotes: No OCTAVE no necessrio que sejam declaradas as variveis e os respectivos
tipos (inteiro, char, double, etc,) para inici-las, como feito em outras linguagens de
programao (C/C++, dentre outras). Ao atribuir valores numricos (ou alfanumricos) a
uma varivel, o programa aloca a memria automaticamente.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 13 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 14
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
A maneira mais fcil de entrar com uma pequena quantidade de valores digitando ou
diretamente os dados: A=[1, 2, 3; 4, 5, 6; 7, 8, 9]
- envolva os elementos com colchetes, [ ]; (Para matrizes e vetor)
- separe cada elemento com espaos ou vrgulas; Resultado: A =
- use ponto-e-vrgula (;) para indicar fim da linha. 1 2 3
4 5 6
Por exemplo, para entrar com a matriz abaixo na memria do computador, e guard-la 7 8 9
na varivel A:
1 2 3
A = 4 5 6
OBS: Para que o computador realize a operao e no mostre a sada, basta terminar a
expresso com ponto-e-vrgula (;). Isto muito til para evitar que o computador mostre
7 8 9
resultados de clculos intermedirios desnecessrios, e para acelerar as operaes.
Basta digitar:
A=[1 2 3; 4 5 6; 7 8 9]
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 15 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 16
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 17 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 18
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Todo clculo realizado com todas as casas decimais (eps), embora os nmeros O formato + uma maneira compacta de mostrar matrizes de grandes dimenses. Os
mostrados ocultem algumas dessas casas. Para mudar o formato de sada dos nmeros, smbolos "+", "-", e "espao em branco" so mostrados, respectivamente para elementos
pode-se usar o comando format. positivos, elementos negativos e zeros.
O formato default, chamado de formato short, mostra aproximadamente 5 dgitos
significativos ou usam notao cientfica. Exemplo: Podem-se construir expresses com os operadores aritmticos usuais:
+ adio /e\ Diviso
>> x = [4/3 1.2345e-6]
- subtrao ^ Potenciao
mostrada, para cada formato usado, da seguinte maneira: * multiplicao matriz transposta
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 21 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 22
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Usando os comandos vistos determine a mdia, desvio padro, a soma dos elementos, 2.2.1. Comandos
bem como os valores mximo e mnimo do vetor V abaixo:
Ao sair do OCTAVE (atravs do comando quit ou exit) todas as variveis do
V=[1 2 3 4 5 6 7 8 9] workspace so perdidas, a menos que sejam salvas usando o comando save.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 23 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 24
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
2.2.2. Exerccios
Um dos comandos mais teis no OCTAVE, bem com em diversos aplicativos, o
help, que fornece ajuda on-line sobre qualquer outro comando. Por exemplo, para obter
1) Armazene no workspace os seguintes valores:
ajuda sobre o comando who:
a = 3
help who b = -2.123
WHO Lista as variveis no workspace atual. c = 4*3
WHOS Lista as variveis e informaes adicionais sobre elas. d = [1 2 3 4]
e = [1; 2; 3; 4]
Outro comando til: lookfor. Este comando procura e lista todas as funes do
OCTAVE que contm a palavra-chave especificada.
Utilize os comandos who e whos e observe as diferenas.
lookfor mean
Ative o comando clear, e digite novamente o comando whos.
Resultado: mean, meansq e mean2.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 25 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 26
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
2) Armazene no workspace os seguintes valores: Comandos: save, quit (ou exit), load, clear, whos.
a = 3.452
b = -25.123 4) Atribua as seguintes expresses s variveis:
c = 4*pi a) 4.12 a pi/c para x
b) log(a + 40.1353) para y
3) Verifique o resultado das seguintes das seguintes operaes: c) log(a) para z
a) (a + b) c c) tan(c) asin(b)
b) (c b) a / b d) sin(cos(tan(c))) 5) Salve as variveis x, y, z em um arquivo chamado exemplo.mat.
Efetuar os clculos (formato padro), depois mudar para o formato long 6) Saia do OCTAVE, entre novamente e carregue as variveis salvas anteriormente.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 27 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 28
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
> y = 0:pi/4:pi
O OCTAVE permite a manipulao de linhas, colunas, elementos individuais e partes
de matrizes. que resulta em:
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 29 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 30
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Pode-se tambm gerar vetores usando a funo linspace. 3.2. Elementos das matrizes
Sintaxe: linspace (inicio, fim, nmero de elementos)
Um elemento especfico da matriz pode ser acessado especificando a linha e a coluna
do elemento desejado, fazendo A(linha, coluna). Por exemplo, dada a matriz A:
Exemplo de uso:
A =
> k = linspace (0, l, 6) l 2 3
4 5 6
k= 7 8 9
0 0.2000 0.4000 0.6000 0.8000 1.0000
Qual o resultado da seguinte operao?
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 31 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 32
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
A = A =
l 2 3 92 99 11 18
4 5 6 98 80 17 14
7 8 10 14 81 88 20
B =
14
20
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 33 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 34
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
C uma submatriz 2x4, formada pelas linhas 2 e 3 e colunas 2 a 4 da matriz A. Exemplo 2: C uma matriz de dimenso 8x8 com elementos nulos.
>> C = zeros (8)
>> D = triu(A) << Extrai a triangular superior.
D =
92 99 11 18
Matriz identidade: eye
00 88 17 14
Matriz diagonal: diag << Extrai a diagonal de uma dada matriz.
00 00 88 20
Matriz de nmeros randmicos: rand
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 35 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 36
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
m+100
3.3. Operaes com matrizes ans =
108 101 106
Operaes matemticas simples (adio, subtrao, diviso e multiplicao)
103 105 107
envolvendo matrizes so semelhantes s operaes com escalares.
104 109 102
m=[8 1 6; 3 5 7; 4 9 2];
Nas operaes entre matrizes devem ser respeitadas as regras usuais da matemtica
3*m quanto ao nmero de linhas e colunas que duas matrizes devem ter para serem somadas,
multiplicadas, etc. No entanto existem operaes especiais. Sendo A=[a1 a2 ... an] e B=[b1
ans = b2 ... bn] duas matrizes, ento:
24 3 18
9 15 21 A./B = [a1/b1 a2/b2 ... an/bn];
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 37 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 38
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 39 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 40
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
4. GRFICOS
Caso o usurio queira modificar a interface de sada o comando
graphics_toolkit (opo) pode ser usado.
A construo de grficos no OCTAVE bem simples e a maior parte dos comandos
As imagens abaixo mostram o mesmo grfico gerado com as opes fltk e
muito parecida com os usados pelo MATLAB, sendo possvel a gerao de grficos
gnuplot, respectivamente.
bidimensionais ou tridimensionais.
Na verso atual do OCTAVE a sada grfica , por default, criada usando o OpenGL
e Qt. Caso as bibliotecas do OpenGL no estejam disponveis o GnuPlot utilizado.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 41 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 42
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 43 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 44
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Resultado:
Se t e y so vetores com dimenses iguais, o comando plot(t,y) produz um grfico
bidimensional dos elementos de t versos os elementos de y, por exemplo
>> t = 0:0.05:4*pi;
>> y = sin(t);
>> plot(t,y)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 45 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 46
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Exemplo:
>> plot(t,sin(t),t,cos(t),t,0.4*sin(t+pi),t,0.6*cos(t+pi))
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 47 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 48
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
1
Os tipos de linhas, smbolos e cores usadas para mostrar os grficos podem ser
0.8
controlados. Seguem alguns exemplos:
0.6
0.4
>> x = 0:0.05:1;
0.2
>> subplot(1,3,1);
0
>> plot(x,x.^2,'*k')
-0.2
>> subplot(1,3,2);
-0.4
-0.6
>> plot(x,log(x+0.1),'-b')
-0.8
>> subplot(1,3,3);
-1
>> plot(x,-x.^3,'+r')
0 2 4 6 8 10 12 14
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 49 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 50
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Resultado: Outros tipos de linhas, pontos e cores tambm podem ser usados:
- __________ y amarelo
m magenta
c cian
Mais opes: '--', ':', '-.'
r vermelho
+ +++++++++
g verde
x xxxxxxx
b azul
^ ^^^^^^^
w branco
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 51 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 52
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
>> t = 0:0.5:4*pi;
>> y = sin(t);
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 53 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 54
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Dado o vetor: y= [ 1 2 3 7 3 8 8 4 10 1 3 7 8 9 10 6] construa o grfico de barras bem Resultados: Grfico de barras e histograma de frequncias, respectivamente.
como o histograma (hist) de frequncias.
>> bar(y);
>> grid('on');
>> hist(y,50);
>> grid('on');
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 55 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 56
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
>> t=1:pi/10:6*pi;
>> y=(1-t).*sin(t);
>> comet(y)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 57 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 58
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 59 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 60
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Resultado:
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Outros exemplos de superfcies (ainda usando a mesma funo) no qual se considera Resultados:
que a superfcie iluminada por uma fonte de luz, dando o efeito de "sombreamento".
Seguem algumas das alternativas:
>> colormap(bone)
>> surfl(x, y, z), shading faceted
>> colormap(bone)
>> surfl(x, y, z), shading flat
(a)... ..(b) (c)
>> colormap(bone) (a) Sombreamento interpolado, com as linhas de transio visveis (shading faceted)
>> surfl(x, y, z), shading interp (b) Sombreamento interpolado mostrando as faces planas (shading flat)
(c) Sombreamento interpolado (shading interp)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 63 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 64
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 65 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 66
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Exemplos:
fplot('[tan(x),sin(x),cos(x)]',2*pi*[-1 1 -1 1])
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 67 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 68
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
>> figure(2)
>> t=linspace(-2*pi,2*pi,50);
>> y1=tan(t);
>> y2=sin(t);
>> y3=cos(t);
>>
>> plot(t,y1,"r");
>> hold on
>> plot(t,y2,"g");
>> plot(t,y3,"b");
>> legend('y1','y2','y3');
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 69 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 70
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 73 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 74
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
6. CONTROLE DE FLUXO
muito comum construes em que conjuntos de laos for so usados,
principalmente com matrizes:
Os comandos que controlam o fluxo especificam a ordem em que as operaes so
realizadas. No OCTAVE estes comandos so semelhantes aos usados na linguagem C.
for i=1:10;
for j=1:10;
6.1. Lao for
A(i,j)=i+j;
B(i,j)=i-j;
O lao for o controlador de fluxo mais simples e usado na programao OCTAVE. endfor
Analisando a expresso endfor
>> for i = 1:n; A
>> for j = 1:n;
>> ... B
>> endfor C=A+B
>> endfor
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 75 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 76
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 77 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 78
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 79 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 80
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
warning('off');
imread Faz a leitura de imagens pkg load image;
nome='lenna.jpg';
image Permite a visualizao de uma matriz como uma imagem DATA=imread(nome);
hist Calcula o histograma de um conjunto de dados
rgb2gray Converte imagem colorida (RGB) para tons de cinza figure;
axis Controla a aparncia e a escala dos eixos image(DATA);
disp Visualizao de um vetor no modo texto xlabel([ 'Imagem: ' nome ]);
disp([ 'Imagem entrada: ' nome ]);
figure Abre uma nova janela grfica
colormap Permite definir um mapa de cores figure;
Exemplo: colormap(gray(256)) DATAg=rgb2gray(DATA);
imfinfo Funo que retorna uma estrutura que contem diversas image(DATAg);
informaes sobre determinada imagem colormap(gray(256));
Exemplo de uso: imfinfo(arquivo_imagem) xlabel([ 'Imagem (tom de cinza) ' ]);
disp([ 'Imagem (tom de cinza) : ok' ]);
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 81 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 82
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Abertura de imagem / Visualizao / Converso RBG para Tom de Cinza (Cont.) Abertura de imagem / Visualizao / Converso RBG para Tom de Cinza (Cont.)
No mesmo arquivo criado antes, escreva um cdigo que permita criar a imagem No mesmo arquivo criado antes, escreva um cdigo que permita criar a imagem
negativa, em tom de cinza. Mostre esta imagem: negativa, em tom de cinza. Mostre esta imagem:
... ...
figure; figure;
DATAn=255.-DATAg; DATAn=255.-DATAg;
image(DATAn); image(DATAn);
colormap(gray(256)); colormap(gray(256));
xlabel([ 'Imagem (negativa)' ]); xlabel([ 'Imagem (negativa)' ]);
disp([ 'Imagem (negativa) : ok' ]); disp([ 'Imagem (negativa) : ok' ]);
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 83 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 84
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
400
50 100 150 200 250 300 350 400
400
50 100 150 200 250 300 350 400
400
50 100 150 200 250 300 350 400
[freq,tom]=hist(DATAg(:),0:255);
Imagem: lenna.jpg Imagem (tom de cinza) Imagem (negativa) figure;
plot(tom,freq);
title([ 'Histograma' ]);
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 85 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 86
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Resultado do processamento anterior, onde mostrada a imagem lida e respectivo Alguns comandos adicionais relacionado ao processamento de imagens:
histograma.
imshow Permite a visualizao de uma imagem
Histograma
3500 imagesc Permite a visualizao de uma imagem aps a aplicao de uma escala,
de modo que todo o mapa de cores seja utilizado
50 3000
imwrite Permite salvar uma imagem em arquivo (imwrite(imagem, nome.ext))
100 Formatos aceitos: jpg, tif, gif, pgm, bmp, png, etc
2500
150 filter2(B,X) Realiza a correlao do dado em X usando o filtro 2D armazenado em B
2000
200 conv2 (A,B) Realiza a convoluo da matriz A sobre a matriz B
1500 uint8 Converte os elementos para inteiros sem sinal (8 bits)
250
1000
int8 Converte os elementos para inteiros de 8 bits
300
350 500
400 0
50 100 150 200 250 300 350 400 0 50 100 150 200 250 300
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 87 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 88
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Leitura / Aplicao de um filtro a uma imagem / Visualizao Leitura / Aplicao de um filtro a uma imagem / Visualizao (Continuao)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 89 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 90
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
150 150
armazenamento das imagens aps o filtro de suavizao 3x3 e 5x5, em arquivos com
200 200
diferentes formatos:
250 250
300 300
350 350
400 400
50 100 150 200 250 300 350 400 50 100 150 200 250 300 350 400
Imagem: lenna.jpg [Aps fitro mdia 5x5] Imagem: lenna.jpg [Aps filtro Sobel (borda vertical]
...
50 imwrite(uint8(PARCIALa),"filtro3x3.jpg");
100 imwrite(uint8(PARCIALb),"filtro5x5.png");
150 disp(['Imagens filtro3x3.jpg e filtro5x5.png salvas.']);
200
250
300
350
400
50 100 150 200 250 300 350 400
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 91 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 92
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Os dados obtidos por outros programas podem ser importados pelo OCTAVE, desde
Os dados (matrizes, vetores, escalares, cadeia de caracteres, etc) disponveis no que estes dados sejam gravados em formato apropriado. Se os dados so armazenados no
Ambiente de Trabalho do OCTAVE, como foi visto, podem ser armazenados em arquivos formato ASCII, e no caso de matrizes, com colunas separadas por espaos e cada linha da
no modo texto, binrio (e outros formatos), utilizando o comando save. matriz em uma linha do texto, o comando load pode ser usado.
Existem diversas maneiras de utilizar este comando, como pode-se ver nos exemplos
mostrados na sequncia:
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 93 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 94
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Por exemplo suponha que um programa qualquer criou arquivo polig1.dat que
contm a seguinte matriz.
polig1
1 1 polig1 =
3 1 1 1
3 3 3 1
1 3 3 3
1 1
1 3
1 1
Ao executar o comando:
>> load polig1.dat
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 95 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 96
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Exemplo:
O OCTAVE pode tambm importar (atravs do comando load) os dados que foram
anteriormente exportados por ele. Por exemplo, para importar as variveis X, Y e Z, >> x = rand(3,3)
anteriormente exportadas usando o comando save, pode-se fazer: x =
0.2190 0.6793 0.5194
load arq1 save arq1 X Y Z 0.0470 0.9347 0.8310
load arq2.sai save arq2.sai X Y Z -ascii 0.6789 0.3835 0.0346
load arq3.sai save arq3.sai X Y Z -ascii -double
>> y = rand(3,3)
Deve-se ressaltar que o comando save, quando usado para exportar os dados do
y =
OCTAVE em formato texto, exporta apenas um bloco contendo todas as variveis. Quando 0.0535 0.0077 0.4175
os dados so importados atravs do comando load, apenas uma varivel com nome do 0.5297 0.3835 0.6868
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 97 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 98
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
0.2190 0.6793 0.5194 A estrutura geral de uma funo que pode ser criada pelo usurios do OCTAVE a
0.0470 0.9347 0.8310
0.6789 0.3835 0.0346 seguinte:
0.0535 0.0077 0.4175
0.5297 0.3834 0.6868 function [ retorno ] = teste (variveis)
0.6711 0.0668 0.5890 ...
endfunction
Repita o procedimento usando a opo save arq2.sai x y e compare os
resultados.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 99 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 100
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Na sequncia so mostrados dois exemplos de funes. Uma delas foi criada com o Funo f_matriz_rotacao armazenada no arquivo f_matriz_rotacao.m
objetivo de, dado um ngulo (alfa) em radianos, montar a matriz de rotao M:
function Mrot=f_matriz_rotacao(alfa)
alfa=alfa*pi/180;
Mrot=[ cos(alfa) sin(alfa);
x ' x -sin(alfa) cos(alfa)];
y ' = M ( ) y
endfunction
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 101 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 102
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Funo f_aplica_rotacao armazenada no arquivo f_aplica_rotacao.m Como exemplo de aplicao das funes criadas para o OCTAVE, inicialmente
escreva um script que permite ler nas variveis polig1.dat e polig2.dat, bem como permita
function [xrot,yrot]=f_aplica_rotacao(M,x,y)
a visualizao destes vetores, usando o comando plot:
# F_APLICA_ROTACAO Faz a rotao de um ponto
# do espao 2D, (x,y), usando
# a matriz de rotao M Contedo do Contedo do
# - Retorno: Coordenadas rotacionadas do ponto arquivo arquivo
# (x,y) polig1.dat polig2.dat
# 0 0 2 2
# Autores: Mauricio Galo e Paulo Camargo 1 0 3 3
# UNESP, 2016 1 1 2 3
0 1 2 2
xrot=x*M(1,1) + y*M(1,2); 0 0
yrot=x*M(2,1) + y*M(2,2);
endfunction
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 103 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 104
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Leitura dos dados / Visualizao dos polgonos Clculo da Matriz de Rotao / Rotao / Visualizao dos polgonos aps rotao
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 105 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 106
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 107 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 108
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
ZERI, L. M. M. Apostila de Matlab. Instituto Nacional de Pesquisas Espaciais INPE, 2001. 19p.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 109 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 110
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Anexo I
%{
Exemplo de uso de alguns comandos do Octave
Comandos (principais): subplot, bar, hist.
clear
y = [1 2 3 7 3 8 8 4 10 1 3 7 8 9 10 6];
figure;
subplot(2,1,1);
bar(y,'g');
xlabel('Grafico de barras');
grid
subplot(2,1,2);
hist(y,50,'b')
xlabel('Histograma de frequencia');
grid Resultado grfico do script anterior.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 111 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 112
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Anexo III
%{
Exemplo de uso de alguns comandos do Octave
Comandos (principais): pie.
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 115 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 116
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Anexo IV
%{
Exemplo de uso de alguns comandos do Octave
Comandos (principais): plot, legend, visualizao de
letras gregas.
alpha = 2;
beta = 2.4;
Delta = pi;
t=0:0.1:2*pi;
plot(t,alpha*sin(t),t,beta*sin(t/2),t,Delta*sin(t/2.5));
xlabel('Angulo t [rad], \alpha = 2, \beta = 2.4, \Delta =
\pi');
legend({'\alpha*sin(t)','\beta*sin(t/2)','\Delta*sin(t/2.5)'
},'location','southwest');
Grfico resultante do script anterior. grid
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 117 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 118
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Anexo V
%{
Exemplo de uso de alguns comandos do Octave
Comandos (principais): num2str, linewidth.
clear
xy = [
6.9 4.9 1.1 1.2 7.9 5.7 2.4 4.6 3.1 3.4 5.5 9.1 7.1 8.5 2.3;
7.1 5.7 7.7 2.6 1.2 0.8 0.6 3.0 4.7 7.3 8.7 6.1 4.6 2.4 5.5
];
xy=xy';
[lin,col]=size(xy);
x=xy(1:lin,1);
y=xy(1:lin,2);
figure
(continua)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 121 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 122
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
subplot(1,2,1)
plot(x,y,'sr');
title('Pontos da amostra.');
axis('square');
grid;
subplot(1,2,2)
plot(x,y,'sr');
tri=delaunay(x',y');
hold on;
triplot(tri,x,y);
title('Pontos da amostra e Triangulacao de Delaunay.');
axis('square');
grid;
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 123 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 124
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 125 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 126
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 127 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 128
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 129 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 130
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
Anexo VIII
[xi,yi] = meshgrid(Lmin:0.5:Lmax);
%{ zi = interp2(x, y, z, xi, yi);
Exemplo de uso de alguns comandos do Octave figure;
Comandos (principais): meshgrid, surf, interp2. surf(xi,yi,zi);
(continua)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 131 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 132
TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia TUTORIAL DO OCTAVE / OCTAVE TUTORIAL UNESP / Departamento de Cartografia
a) b)
c)
Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 133 Mauricio Galo e Paulo de Oliveira Camargo, Presidente Prudente - SP, 2016 134