GNU Octave/Básico
Octave pode ser usado tanto como uma linguagem de programação quanto como um interpretador de comandos. Ou seja, é possível usar o Octave apenas para fazer contas, mostrando o resultado.
Modo interativo
[editar | editar código-fonte]Entre no octave (entre em um terminal e digite octave):
octave
O interpretador está esperando alguma instrução. Digite:
octave> x = -3 octave> y = 1
e observe o resultado. Aparentemente, foram definidas duas variáveis, x e y, com valores numéricos -3 e 1, respectivamente.
Porém algo mais ocorreu. A linguagem octave é fortemente orientada a cálculos com matrizes, portanto x e y não são escalares, mas sim matrizes 1x1. Este detalhe é muito importante, pois uma fonte comum de erros é utilizar as variáveis do octave como se fossem escalares, e não como sendo matrizes.
As variáveis podem ser reutilizadas, pois, uma vez definidas, elas se tornam permanentes (podem, porém, ser alteradas). Por exemplo, após definir x e y como acima, pode-se fazer:
octave> a = x + y
Uma forma de definir um vetor é listando seus elementos, separados por espaços (ou por vírgulas), e fechando tudo com colchetes (o que vem após o % é um comentário, e será ignorado pelo interpretador; obviamente, não é preciso digitá-lo):
octave> z = [1 -1] % z = [1, -1] tambem esta certo
Novamente, z não é um vetor - z é uma matriz 1x2. De novo, aqui deve-se tomar muito cuidado, pois em matemática costuma-se identificar vetores de n dimensões com matrizes n x 1; em octave, um vetor n x 1 deve ser declarado usando-se ; como separador:
octave> v = [1; 2; 3]
Uma matriz n x m é definida listando-se pelas linhas, e, em seguida, pelas colunas. Ou seja, uma instrução do tipo:
octave> A = [1, 1, 2; 3, 5, 8; 13, 21, 34] % lembrando que a vírgula é opcional
define a matriz 3 x 3:
A = 1 1 2 3 5 8 13 21 34
Para sair do modo iterativo, use quit:
octave> quit
Debug
[editar | editar código-fonte]Algumas instruções são úteis para debug:
- whos -variables - lista informações sobre as variáveis
- clear - apaga todas as variáveis
- clear x - apaga apenas a variável x
- history - consulta o histórico de comandos
Scripts
[editar | editar código-fonte]Obviamente, ninguém vai entrar iterativamente uma grande quantidade de linhas. Para isto, existem os scripts.
Um script no octave é um arquivo texto, de extensão .m. Por exemplo, crie o arquivo meuscript.m (no mesmo diretório que você usou para invocar o octave):
% arquivo meuscript.m % isto é um comentário x = 1 y = -2 z = x + y
Para usar este script no octave, basta escrever o seu nome:
meuscript
Note-se que, conforme as linhas são lidas e executadas, seu resultado vai sendo mostrado. É possível ler de um script e executá-lo sem que cada passo seja mostrado, para isto, basta terminar cada linha com um ponto-e-vírgula:
% arquivo meuscript.m % isto é um comentário x = 1; y = -2; z = x + y;
O resultado final é o mesmo (x, y e z são definidos, respectivamente, como 1, -2 e -1), mas nada é exibido no terminal.
Um cuidado que deve ser tomado é que, se o script tiver o mesmo nome de uma variável, ele não será invocado:
octave> meuscript = 10 octave> meuscript % mostra o 10 e não executa meuscript.m
O programa considera como path padrão o local onde ele foi invocado. Para trocar, usar cd:
octave> p = cd % coloca em p o nome do ''path'' atual octave> cd .. % sobe um nivel de diretorio
Obtendo ajuda
[editar | editar código-fonte]O comando help é usado para obter ajuda. Para descobrir como usar help, digite:
octave> help help