Programando em Octave (parte 1)

Se você ainda está preso ao Windows pelo gancho do MATLAB, está na hora de adquirir a liberdade. Octave usa uma linguagem compatível com MATLAB. É uma linguagem computacional que usa as matrizes como suas variáveis. Esta forma de ver as variáveis acelera o cálculo computacional, pois todas as operações são vistas como operações entre matrizes.

[ Hits: 46.948 ]

Por: Juliao Junior em 05/05/2008


Matrizes



Para definirmos matrizes, também é muito simples. A sintaxe é a seguinte:

nome_da_matriz = [ a b c; d e f]

Ou seja: (1) comece e termine com colchetes, (2) o caracter ' ; ' separa as diversas linhas e (3) cada elemento em uma linha é separado por um espaço ou por uma vírgula. Veja mais um exemplo:

octave:18> mat1=[1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16]
mat1 =

   1   2   3   4
   5   6   7   8
   9  10  11  12
  13  14  15  16
octave:19> size(mat1)
ans =

  4  4
octave:20>

Note o comando 'size(nome_da_matriz)'. Ele fornece a dimensão da matriz.

O OCTAVE traz algumas matrizes especiais embutidas. Veja nos exemplos:

octave:20> zeros(3) %matriz com todos os elementos nulos
ans =

  0  0  0
  0  0  0
  0  0  0
octave:21> zeros(3,2) % mesmo exemplo, com dimensão diferente
ans =

  0  0
  0  0
  0  0
octave:22> ones(2,4) % semelhante a 'zeros', mas com elementos iguais a '1'
ans =

  1  1  1  1
  1  1  1  1
octave:23> rand(3,4) % elementos aleatórios, uniformemente distribuídos
ans =

  0.99643  0.19435  0.11084  0.24855
  0.51063  0.28586  0.66605  0.42729
  0.81204  0.90110  0.23174  0.45561
octave:24> randn(3,2) %elementos aleatórios, distribuição normal
ans =

  -1.33017  -0.39911
  -0.62622   1.47676
  -2.71317  -0.55859
octave:25> randn(3) %mesmo exemplo, com dimensão diferente
ans =

   0.259446   1.174647  -0.808014
  -0.135694  -0.220743  -0.035179
  -1.967795   0.458426  -1.109860
octave:26> eye(2) %matriz identidade
ans =

  1  0
  0  1
octave:27> eye(5) %mesmo exemplo, com dimensão diferente
ans =

  1  0  0  0  0
  0  1  0  0  0
  0  0  1  0  0
  0  0  0  1  0
  0  0  0  0  1                   
Como sempre, existem muitas outras matrizes pré-definidas no OCTAVE. Para conhecê-las, use o comando 'help'.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Variáveis
   3. Matrizes
   4. Funções
   5. Scripts
Outros artigos deste autor

Crie um espelho (mirror) Debian em sua máquina

Por que os GAMES não são a chave para o Linux em desktops

Instalação do sidux

CSS - Manual básico sobre estilo

SystemRescueCd - Corrigindo o sistema e recuperando dados

Leitura recomendada

Análise do Mandriva Free 2006 - Conhecendo melhor o sistema

Gerando pacotes no Slack com o checkinstall

Cygwin, um Linux dentro do Windows

Reconhecimento de síntese por voz no GNU/Linux

MetaTrader 5 facilita instalação em Linux

  
Comentários
[1] Comentário enviado por fernandocampos em 05/05/2008 - 11:43h

O octave é uma boa opção para trabalhar no linux. Trabalhei com ele no Fedora e fiquei muito satisfeito. Também temos o maxima para o linux que é totalmente free e excelente.

[2] Comentário enviado por an_drade em 05/05/2008 - 13:45h

Não podemos esquecer o Scilab, que é praticamente um clone do Matlab.

http://www.scilab.org/

[3] Comentário enviado por itocamargo em 07/05/2008 - 18:19h

Eu utilizo o Scilab no linux, baixei a documentacao pra ajudar, inclusive na disciplica de Sistemas Realimentados, usamos mto ele.

O Matlab é uma excelente ferrameta, mas o Scilab e Octave nao deixam a desejar.

no site do Scilab da pra saber ate quem esta patrocinando o software... por exemplo a Renault

Interessante neh?

[]'s

[4] Comentário enviado por dbahiaz em 09/05/2008 - 23:44h

Cara estou tendo contato com octave justamente agora , usamos matlab na facu, + em casa estou adaptando tudo pro octave, conheço muito pouco ainda, e seus artigos seram bem vindos, espero que não demore muito a postar outros, estou aguardando, abraço!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts