Análise de Sinais com Gnu Octave no Ubuntu Linux - Gutsy
Liberdade é sempre um assunto motivador e as dificuldades de exerce-la no meio acadêmico é que me impulsionaram a escrever aqui. A disciplina de Análise de Sinais por si só já é uma das mais difíceis em uma Graduação na área de Exatas, somando-se a isto o fato de os softwares utilizados nesta disciplina terem baixo desempenho, terem licença restritiva ou alto valor de licença, empurram os alunos a lançarem mão de “cópias alternativas ao modelo vigente de direito autoral“ para sobreviverem nesta disciplina. Porém existem outras alternativas como o uso de software livre para realizar seus trabalhos acadêmicos, então vamos lá.
Introdução
O GNU Octave é uma linguagem de programação para computação numérica compatível com a sintaxe do Matlab, que neste artigo trataremos de seu uso para gerações de sinais e para acompanhamento da disciplina de Análise de Sinais Sistemas, ou seja, estar em curso nesta disciplina é pré-requisito para a compreensão deste artigo.
Instalação
sudo apt-get install octave2.9 octave2.9-doc octave2.9-forge gnuplot
Baixe no seu diretório /home/usuário o pacote signal que é específico para se trabalhar com sinais http://octave.sourceforge.net/signal/index.html
Inicie o octave no terminal:
$ octave
Agora você terá um prompt do Octave assim:
octave:1>
Agora se você fez o download do pacote no diretório padrão do seu usuário faça:
octave:1> pkg install signal-1.0.7.tar.gz
Se não, navegue nos diretórios pelo prompt do octave até encontrar.
Brincando com o Octave
Você pode digitar os comando diretamente no prompt ou criar uma lista de comandos e salvar em um arquivo de texto renomeando a extensão para .m, chame posteriormente o arquivo pelo promp do octave nome.m
Segue abaixo alguns códigos para geração de ondas
%Arquivo 1
% Onda Quadrada
A = 5;
f0 = 20;
fs = 1000;
t = 0:1/fs:1;
onda_quadrada = A*square(2*pi*f0*t);
plot(t,onda_quadrada), xlabel('t (s)'),ylabel('Amplitude')
title('Onda Quadrada Simétrica')
axis([0 0.6 -6 6]);
%Arquivo 2
%Onda Dente de Serra
A = 5;
f0 = 20;
fs = 1000;
t = 0:1/fs:1;
onda_dente_de_serra = A*sawtooth(2*pi*f0*t);
plot(t,onda_dente_de_serra), xlabel('t (s)'),ylabel('Amplitude')
title('onda dente de serra')
axis([0 1 -6 6]);
%Arquivo 3
%Exponencial
t = 0:.01 : 5;
x = 10*exp(-t)-5*exp(-0.5*t);
plot(x,'r')
title("Toboga");
xlabel("Eixo X");
ylabel("Eixo Y");
%Arquivo 4
%Exponencial
t = 0:.01 : 5;
x = 10*exp(-t)+5*exp(-0.5*t);
plot(x,'r')
title("Toboga Sem Freio");
xlabel("Eixo X");
ylabel("Eixo Y");
Ficamos aqui por hoje, espero ter ajudado aos que desejam uma alternativa ao Matlab no estudo de Sinais e sistemas e na pesquisa matemática.
Nenhum comentário:
Postar um comentário