Vous êtes sur la page 1sur 33
Octave: Guia de Estudo Nuno Cavatheiro Marques e Carmen Morgado 1 Breve Introdugaéo © Octave & uma linguagem de programacdo de ato nivel, destinada ao ttatamento de problemas para computaga0 numérica, O interfice com o programador é efectuado através de uma linha de comando. 0 Octave pode efectuar célculos aritméticos com reais, escalares complexos ¢ matrizes; resolver sistemas de equagdes algébricas; integrar fungSes sobre intervalos fnitos ¢ infntos e integrar sistemas de equagdes diftrenciais ordinarias e diferenciais algébricas, Permite gerar para o ecti e para a impressora grificos 2D e 3D, utiizando o Gmuplot. © Octave é em grande parte compativel com 0 MatLab. Este documento constitui um breve resumo do manual do Octave que pode ser consulkado em. hitpy/www.octave.org/dacioctave_toc. him ou localmente em ntp//www.di fet.unl pUcursos/icp/downloads/octave.pdf 2 Utilizagao do sistema Nesta secedo apresentar-se-é 0 Octave como ume ferramenta de céleulo para problemas de computagdo numérica. O seu objectivo & descrever o funcionamento geral da aplicagdo, enquanto linguagem de linha de comando, © Octave (hitp//www.octave.org) & uma aplicagdo desenvolvida utizando uma filosofia OpenSource. A principal vantagem deste tipo de aplicagdes relativamente aos seus equivalentes comerciais (nomeadamente do MatLab, Intpy/www.mathworks.com) € o custo: as ferramentas OpenSource sio de utiizayao livre, estarxlo inchsive 0 seu cédigo fonte disponivel para o piiblico em geral. Assim aplicagdes com este tipo de licenga, podem ser livemente istribuidas ¢ instaladas em qualquer computador. © cédigo fonte da aplicagao esta igualmente disponivel, 0 que fornece uma garantia de qualidade ¢ robustez, sendo ainda possivel adaplar ou estender a propria aplicagio para a solugdo de determinados problemas, Podem ser obtidos mis detalhes sobre as fertamentas desenvolvidas com este tipo de licenga, consultando hitp:/www gnu ore/philosophy/free-sw.pthiml. © Octave é uma ferramenta desenvolvida para o Sisterma Operative Linux (htip/ivww linn org), sendo actualmente dstribuida com as principais verses deste sistema operativo. A sua utiizago no ambiente Windows & ‘gualmente possivel através da utiizagdo da ferramenta Cygwin (hitpzhvww.cyewin.com), a qual fornece um ambiente de emulagao da pataforma Linux sobre Microsoft Windows. Pode efectuar-se o download do Octave para MS- Windows quer da pagina da cadeira (htpudisctunlpveusosien), quer directamente, do site htpd/sourceforgetiprojects/matinks. A instalagdo do ‘Octave mum computador equipado com sistema operative Windows XP, NT ou 2000, deverd ser relativamente simples. A instalagao é jgualmente possivel nos sistemas MS-Windows 95/98 ¢ Me, no entanto nestes ikimos por ve’s ocorrem problemas. Apés efectuar 0 Download do programa de instalagao, bastard executar este programa e o Octave sera instalado 1 seu computador. Em caso de dificuldades, o site indicado para obter mais informagdo para resolugdio de problemas relativamente a instalagio do Octave sobre plataformas Windows & Intp//octave.sourceforge.net/Octave_Windows.htm. 2.1 Linha de Comandos © primero passo para trabalhar como Octave € obviamente o inicio desta aplicagdio, Para tal bastard seleccionar programa no ment iniciar, conforme a figura abaixo. oa a BE cawnbssh206 ( aurasns oats natal De seguida deverd ser apresentada a linha de comandos do Octave com uma aparéneia semelhante & seguinte ‘figura: Contrariamente aos ambientes gréficos notmalmente disponiveis no Windows, 0 Octave caracteriza-se por receber 6s seus commandos directamente da linha de comandos (ou Prompt). Na linha de comando, o sistema indica que aguarda um comando apresentando (por omissio) 0 texto “octave :1>" seguido de um cursor a piscar. Apds este prompt & possivel escrever os comandos que controlam a aplicagdo. Deverd introduzit cada comando separadamente e seguido pel tecla [Return], Num ambiente grifico os comandos sio especificados a0 computador através de acgdes do rato sobre simbolos (ou icones) visuais. Numa linha de comandos os comandos devem ser especificados através do teclado. No exemplo anterior fo introduzido (pelo utlizador) um comando simples: 5+5 ‘Tendo 0 computador dado a resposta (resultado): ans = 10 ‘Seguida do prompt pedindo novo comando: octave: 2> E facil utilizar 0 Octave como calculadora. Eis alguns exemplos auto-explicativos: loctaver10> 2-2 lans ~ 0 loctaves11> lans = 4 202 loctavesi2> 2/3 lane = 0.66667 loctave:13> S*5*5 lane = 125 loctave:1a> 593 lane = 125 loctaveris> 5°2. lane = 55.902 loctave:16> 8\3 lane = 0.37500 loctaveri8> 3% (23+24.7-4/6)/3.5 lane = 31.743 loctaveri9> 5-3 lane ~ 0.000000 0 imico comando menos usual é a divisio a esquerda, a qual pode ser facilmente compreendida com a igualdade xy=yix ‘De igual forma podem ser utilzados comandos um pouco mais complexos, envolvendo fangdes. As seguintes, fimngdes elementares de céleulo poderdo ser utilizadas: loctave:20> sqrt (5) lans = 1.0000 lans = 2.2361 (aie quadrada loctaver21> 10gi0(z000 octaves logaritmo base 10 loctave:22> 1og(e*20) ectavese logaritmo neperiano loctaver23> pa jpi_- 3.1016 [Constante pi loctaveroa> sinipi/é lans = 0.50000 pene loctaver25> cos wo lcoseno lans — 1 loctave:76> tan(pi/a) langente loctave:27> sin (pi) Iseno de pinto 0, por causa de lane = 1.22460-16 lens de aproximango loctaver28> 30*pi/180 Jans = 0.52360 jutilizagao de valor anterior em loctave:29> ‘ Isin (ans) *2+cos (ans) *2 jesiculo 1 Repare-se que sin (pi) niéo € calculado como zero! Tal deve-se a um erro de céleulo do préprio computador. O nimero apresentado é no entanto muito préximo de zero: 1.2245*10", Trata-se de um erro de aproximagdo do algoritmo de céleulo do seno, Normalmente este nimero varia de computador para computador, mas esta sempre presente quando se efectuam célculos reais. Note-se aliis que & possivel caleular a preciso de um resultado, para tal utliza-se 0 comando format ‘contante pi {ormatago Long, a partir deste ponto a iprecisdo dos resuitados passa a ser de 15 algarismos signiticativos (max de 24 jcaracteres) {ormatagdo short, preciso passa a ser \de 3 algarismos signiicativos nips) lane = 1.220-16 vei61> format bank or femme {ormatago bank, precisdo passa a ser de 3. 0.00 2 casas decimais ve: 69> format formatago standard, precisio de 5 3uiaie algarismnos signifcativos (¢ 0 default) Em geral os interfaces por linha de comandos so menos intuitivos que os interfaces grificos, pois exigem do seu utiizador a memorizagdo de um conjunto de palavras chave. No entanto, apds o periodo inicial de adaptagaio os interfaces de linha de comandos revelam-se bastante mais fiveis e fiveis de descrever: 0 mimero de formas istntas de entrar um mesmo comando é nnito menor, sendo o mimero de acgdes de gestdo de interface reduzidas 0 minimo, Compreende-se pois que seja muito mais ficil descrever a interacgo com uma ferramenta deste tipo que a interacgdo com uma ferramenta visual. Por ser igualmente mais diffi entrar comandos rio intencionas, & jigualmente muito mais claro qual foi a acgo que deu origema um deterrrinado erro, ‘A maior vantagem desta forma de interaceaio é no entanto a de permitr ao utilzador especificar sequncias fo elementares de comandos simples. F assim possivela definigdo de commandos extremamente complexos. Este tipo de utizagdo sera descrito no proximo capitulo, Neste capitulo vamos centrar-nos na aprendizagem dos comands elementares. Durante o estudo deste texto, & ‘muito importante testar cada um dos comandos isoladamente, para melhor se compreender a que se deve cada erro, Basta escrever mal uma tra, ou esquecer um dos espagos necessérios num comando para que este ndo seja centendido pelo computador e dé origem a um err. Tal com na generalidade dos interfaces com prompt de comando, é possivel navegar pel histérico de comandos, bem como pesquisar comandos antigos. De seguida so apresentadas algumas das teclas utlizadas no Octave para facitar (tomar mais répida) a entrada e alteragdo de comandos: “Teclas cursoras (cima ¢ baixo): comando anterior/seguinte no histérico de comandos. * Teclas cursoras (esquerda e diteita): letra anterior/seguinte no comando corrente. Em alguns terminais onde as teclas cursoras nao fincionem, pode ser necessério utilizar as teclas CTRL-b (de backward) ¢ CTRL (de forward) # CTRI-a :0 cursor desloca-se para 0 inicio do texto, * CTRL :0 cursor desloca-se para o fim do texto. © CTRL-rCTRI-s : pesquisa incremental de um comando anterior/seguinte no

Vous aimerez peut-être aussi