Os princípios de construção de programas
no Octave são simples e muito úteis para aplicações em Engenharia. Para um
melhor funcionamento deste software livre, a combinação de uso desejável é com algum
sistema livre como o Ubuntu ou o Linux, por algumas incompatibilidades com o
Windows. Mas, este problema é relativamente simples de resolver, já que estes
softwares livres são de fácil instalação e não são ‘pesados’ (ocupam pequeno
espaço de memória, podendo ser armazenados em pen drives, por exemplo).
Como a memória de armazenamento de um
computador é finita e este trabalha usando um número finito de casas decimais
(vide post Bases e Sistemas de Numeração), após o
arredondamento, são incluídos erros nos resultados finais obtidos. Deve partir
do programador o conhecimento necessário para avaliá-los e ver se são
aceitáveis, bem como conseguir um método, dentro dos princípios de construção,
que leve ao resultado esperado. Todos os valores calculados são em ponto
flutuante, ou seja, trabalha-se nesta precisão finita, com espaço de memória
aberto e reservado diretamente pelo Octave.
Para cada comando digitado, o Octave
inclui uma sequência numerada, indicando ‘Octave 1’, Octave 2’, etc. Este
comando pode ser uma simples atribuição de valores para variáveis, como a = 4
ou b
= 5;
- no caso de ausência de ponto-e-vírgula, os resultados são apresentados a cada
nova linha do programa, caso contrário, ficam ‘guardados’ até o final da
execução. Não é necessário escrever apenas um comando por linha, como por
exemplo:
a=5; b=6; c=a+b
Para navegar entre diferentes comandos
anteriores e alterá-los, caso a edição de código esteja sendo feita no próprio
programa Octave, utiliza-se as setas direcionais ß
e Ý
para modificar comandos, e estes são alterados para todo o programa, na edição
simples. Como dito anteriormente, o próprio programa aloca espaço de memória,
tanto que, ao contrário de outras linguagens de programação como o C#, não é preciso declarar as dimensões de matrizes
e vetores, cuja notação segue o exemplo abaixo:
x = [1 2 3 4 5];
A = [1 2 3; 4 5 6; 7 8 9];
Quando se deseja declarar matrizes ou
vetores em que há alguma regra de formação dos elementos (intervalo entre um
valor e outro), é possível realizar a seguinte estrutura: Nome do vetor =
[valor inicial : razão da progressão aritmética : valor final], como no
exemplo:
v = [0.1: 0.01: 0.2]
O que equivalerá ao vetor v = (0,1 0,11
0,12 0,13 0,14 0,15 0,16 0,17 0,18 0,19 0,2)
Desejando uma matriz com sequências deste
modo, basta criar um vetor para cada coluna ou linha, e depois declará-la da
forma M
= [u v w]
Para realizar operações com matrizes, é
importante observar que há diferenciação entre vetor linha e vetor coluna,
sendo necessário observar as regras matemáticas que envolvem operações
com matrizes. Os sinais das operações são: +
(soma), -
(subtração), * (multiplicação), ‘ (transposição), ^
(potenciação) e inv (inversão).
Para trabalhar com funções, como não é
possível trabalhar com domínios infinitos, é preciso restringi-los a conjuntos
de valores, de forma análoga ao ensino de funções durante o Fundamental, em que
se fazem tabelinhas de valores para o domínio, a fim de aproximar-se a curva da
função. Cria-se vetores domínio (vetorização) com intervalos predefinidos
equidistantes, conforme visto acima. Depois, cria-se outro vetor que conterá o
mesmo número de elementos do vetor domínio, que será o vetor imagem. Para isso,
será necessário abrir mão de um recurso específico do Octave, que é a operação
por componente vetorial, usando um ponto precedendo a operação. Por exemplo:
x = [0.1: 0.1: 0.3]
x = [0.1 0.2 0.3]
y = x.*x
y = [0.01 0.04 0.09]
Neste caso, estávamos tendo a função y =
x². Se pode fazer qualquer estrutura polinomial com os valores do vetor domínio
e jogá-los no vetor imagem, componente a componente. Mas é importantíssimo usar
o ponto, senão y nada mais será do que uma operação matricial. Para obter a
famosa tabelinha com os valores de x e y = f(x), cria-se uma matriz tabela T:
T = [x’ y’]
Para obter o gráfico da função, basta usar
o comando plot, para diferentes tipos de gráfico:
plot (x, y) – gráfico com a curva
aproximada, de acordo com a quantidade de pontos (componentes do domínio);
plot (x, y, ‘0’) – gráfico apenas com os
pontos da função);
plot (x, y, ‘+’) – gráfico apenas com os
pontos representados em cruzetas.
Com poucos valores de domínio, pode ser
que a curva plotada seja estranha, muito reta. Para compensar o problema basta
criar um vetor domínio com mais components.
Para fazer curvas paramétricas 2D e 3D,
basta criar um domínio para t e criar funções usando os valores de t, como:
t=0:0.001:2*pi; x=cos(6*t); y=sin(2*t); plot(x,y)
ou
t=0.01:0.01:20*pi;
x=2cos(2t); y=2sin(2t); z=t.^3;
plot3(x,y,z)
Os tradicionais comandos para/faça (que
sem indicação alterna de 1 em 1), enquanto e se/senão são escritos na forma:
for i=1:m
comandos
end
while condição
comandos
end
if condição
comandos
else
comandos
end
Os algoritmos que compõem os programas a
serem feitos no Octave podem ser feitos usando um editor de texto
característico do Ubuntu, que é o gedit. Os programas podem ser editados e
salvos com a extensão .m, usando os menus File / New. Depois,
para facilitar os trabalhos, se pode informar ao gedit qual a linguagem de
programação que está sendo usada, no caso, o Octave, usando a barra inferior.
Assim, havendo erros no algoritmo, mesmo de digitação, o programa editor de
texto avisa não dando destaque colorido em alguns comandos.
Após a construção do programa no editor de
texto, é preciso referenciar em que pasta do PC está o programa desejado, sendo
a pasta / equivalente à C:\\ no Windows, e as demais /pasta 1/
pasta 2/ pasta 3/ local do programa . Digita-se o comando pwd,
agora no Octave mesmo, onde se vê as pastas já referenciadas. Caso a pasta onde
estiver o programa ainda não for conhecida por este, é preciso usar o comando cd e indicar a pasta onde está o programa. O nome
do arquivo de extensão .m passa a valer como nome de comando, bastando apenas
digitá-lo para rodar as instruções do programa criado no editor de texto. E
para dúvidas sobre algum outro comando, basta usar help <comando>.
□
Þ Gostou desta postagem? Usando estes
botões, compartilhe com seus amigos!
0 Comentários
Seu comentário será publicado em breve e sua dúvida ou sugestão vista pelo Mestre Blogueiro. Caso queira comentar usando o Facebook, basta usar a caixa logo abaixo desta. Não aceitamos comentários com links. Muito obrigado!
NÃO ESQUEÇA DE SEGUIR O BLOG DO MESTRE NAS REDES SOCIAIS (PELO MENU ≡ OU PELA BARRA LATERAL - OU INFERIOR NO MOBILE) E ACOMPANHE AS NOVIDADES!