terça-feira, 20 de outubro de 2009

Maxima e Yacas - Softwares de Apoio Computacional à Álgebra

Depois de passar mais de uma semana desesperado com a prova de Física Nuclear que o professor pediu para fazer em casa, eu entendi o que era para fazer e notei que seria fortemente recomendável utilizar programas como o maxima e o yacas.
Estes programas fazem maravilhas, embora possam ser até limitados dependendo do cálculo.
Eles podem resolver uma integral, uma derivada, achar os zeros de uma equação/função tanto numericamente quanto analíticamente (este último, se possível), e são suficientemente inteligentes para lidar com linguagem simbólica.
Para instalá-los, se seu /etc/apt/sourcs.list estiver configurado, e se sua distribuição for Debian, ou uma Debian-like fazemos:
#apt-get install yacas -->Instala o yacas
#apt-get install maxima wxmaxima xmaxima -->Instala o maxima, e duas interfaces gráficas para ele: wxmaxima e xmaxima
O wxmaxima é uma interface cheio de menus e botões meio auto-explicativos para ficar parecido com concorrentes no Windows, tipo o Maple® e o Mathematica®, embora não seja bonito.
O xmaxima é uma interface feita em tcl/tk mais bonita, embora mais espartana. Ela abre junto com o ambiente onde são digitados os comandos uma espécie de tutorial disponívels na documentação do máxima, estimulando o aprendizado para poder mexer no programa.

Uma interface permite que você mexa "no estilo Windows", ou seja, já faça as coisas sem se aprimorar muito, sem nem saber o que está fazendo, até, de forma intuitiva. A outra faz você apanhar um pouco mas lhe força a aprender mais, o que pode facilitar no futuro, pois você começará a pensar em programar na linguagem e a resolver as coisas de maneira mais complicada, desenvolvendo certa habilidade.
Como eu estava desesperado para fazer a prova do Robilotta, eu fiquei com o wxmaxima, mesmo.

Mesmo assim, há alguns comandos que não aparecem, senão sutilmente nos menus, e dos quais você pode precisar.
Primeiro alguma sobre o ambiente:
%in --> É o prompt, aguardando que você dê algum comando. No wxmaxima, você não precisa se preocupar muito com isso. Há uma caixa de texto onde você coloca os comandos.
O 'i' quer dizer entrada, e o n, é o número da linha em que você está.
Quando você digita um comando, aparece: %on , que quer dizer saída, acompanhada do resultado do comando.
Para escrever expressões matemáticas, simplesmente, escreva-as!
Por exemplo: sin(x)
O resultado será informado como sin(x).
Você pode usar a linha %on nos cálculos da linha n+1 , por exemplo. Até pode definir novas funções e variáveis.

Para achar os zeros de uma função analítica, pode-se fazer:
solve([expressão], [variável]); (colchetes não obrigatórios, utilizei apenas para mostrar a sintaxe.

Ex:
solve(x^2-a,x); As raízes da equação serão retornadas, e a é qualquer valor. Entendeu porque é legal? Não é só para cálculo numérico.

E quando só dá para resolver numericamente?
find_root([expressão],[variável],["chute inicial], ["chute final"]);

Ex:
find_root(exp(-5*r)-5*cos(15*r),r,0.001,1000);


Nenhum comentário:

Postar um comentário