Anda di halaman 1dari 15

PRIMEIROS PASSOS COM O MXIMA

Lus Cludio Lopes de Arajo


FAET - UniCEUB

2o. semestre letivo de 2006

_________________________________________________________________________________

O AMBIENTE DO MXIMA
O software objeto de estudo possui a seguinte tela. A parte de baixo (que ver quando
abrir o programa) um navegador de Internet que entende o MXIMA. Com ele possvel
navegar nas pginas htmls que j esto em seu computador aps a instalao e tambm em
pginas da Internet escritas com instrues para o MXIMA. Esta funcionalidade poder ser
objeto de discusso para futuro.

A parte superior da tela como a que pode ver acima. No canto esquerdo ver
que o prompt do programa algo do tipo (%i1), (%i2) ... (%iN) onde N um nmero natural. O
i dever ser lembrado como input, termo da lngua inglesa usado para designar algo como
entrada. Note que a resposta dada em linhas com nomes da seguinte forma: (%o1), (%o2)
... (%oN) e o o deve ser lembrado como output, termo que lembrar sada. Estes nomes so
variveis tambm que esto com as sadas de cada comando. A vantagem deste modo
voc poder fazer referncia a um resultado que foi obtido h algum tempo. s fazer meno
sada.
Como exemplo, suponha que eu queira derivar uma expresso que est na sada
(%o15). Para tal bastaria escrever diff(%o15,x); e o MXIMA ir derivar a expresso na sada
(%o15) em relao a x. Falaremos do comando de derivao mais tarde. Gostaria que
olhasse novamente para a imagem acima. Note como est escrito as fraes e expoentes.
Est usando os caracteres comuns, correto? Isto o que chamado de exibio em ASCII e
uma desvantagem do MXIMA, pois dependendo do tamanho da expresso ou do que est
trabalhando, esta forma de escrever se torna ruim. Um exemplo disto pode ser visto se tentar
resolver a equao diferencial
_________________________________________________________________________________

dysinx
3xy
dx
O comando est abaixo e a resposta tambm. Agora note como est escrito a integral e os
outros elementos.

A resposta, usando recursos mais sofisticados do que ASCII dever ser visto da
seguinte forma:
2
3
x
2

ye

2
3
x
2

e s
in
x
d
xC
x

Um dos aspectos da interface grfica chamada wxMXIMA ser a melhora significativa no


documento sada do MXIMA, j que l voc ver a sada como a igualdade acima.
NUNCA SE ESQUEA que no MXIMA, obrigatoriamente todo comando deve terminar com
; (ponto-e-vrgula). Se voc esquecer disto, ele no ser executado. Se no quiser que o
resultado seja exibido, termine o comando com $ (cifro).

_________________________________________________________________________________

O AMBIENTE DO wxMXIMA

A interface wxMXIMA veio para facilitar o uso do MXIMA. A tela do programa como est
aparecendo abaixo.

Da forma que est ela possui 12 botes de atalho em baixo, mas esta quantidade pode
ser aumentada se voc for em EDIT CONFIGURE em BUTTON PANEL selecione FULL.
Depois feche o programa e abra-o novamente

_________________________________________________________________________________

Note que agora ao invs de 12 h 20 botes de atalho. O programa foi feito em C++ e
possui o cdigo fonte aberto e por esse motivo estaremos trabalhando nele como o objetivo de
melhorar alguns aspectos. Um deles a traduo do programa que ainda no possui verso
em portugus (e isto muito simples de se fazer tendo o cdigo fonte) e outras modificaes
sero no sentido de aumentar o nmero de funes existentes no programa hoje. Um exemplo
simples de funo que dever ser adicionada ser uma interface grfica que permita manipular
o MXIMA para trabalhar com matrizes semelhante ao que ocorre com o WINMAT (veja
imagem abaixo).

S recentemente encontramos a funo que faz as operaes elementares com


matrizes e estas funes no esto no manual de referncia que temos (so mais de 500
pginas) e no est no wxMXIMA tambm.

OPERADORES ARITMTICOS
Os operadores aritmticos so os usados normalmente.
Operador

Ao

Exemplo

Resultado

Adiciona

2+3

Subtrai

2/3-5/7

-1/21

Multiplica

3/5*7/3

7/5

Divide

10/26

5/13

Potncia

2^10

1024

sqrt(.)

Calcula a raiz de .

Sqrt(1024)

32

Note que por se tratar de operadores simples, estamos aproveitando para mostrar
alguns fatos interessantes como:

_________________________________________________________________________________

1. Operar com fraes na forma de frao (sem passar forma decimal)


2. Simplificar fraes quando esta no est na forma irredutvel.

NUNCA SE ESQUEA que no MXIMA (e em qualquer outro programa de nvel internacional),


os nmeros decimais no so escritos com o uso de vrgula como aprendemos na escola e sim
com ponto. Por exemplo: 3,75 para ns 3.75 no MXIMA, MuPAD, MAPLE etc.

Efetue as seguintes operaes:


a) 5 8 3
b) 3,2 6,32
3
c) (85)614

d)

2, 65
4,5

CONSTANTES ESPECIAIS
H trs constantes especiais que so listados na tabela abaixo e sua respectiva
representao dentro do MXIMA.
Constante (smbolo)

Nome

Representao no MXIMA

Nmero de Euler

%e

Pi

%pi

Infinito

inf

Bom, podemos discutir se infinito ou no constante mas isto no vem ao caso aqui.
Colocamos ele na lista dos smbolos com representao especial, s isto. ;-)

RESULTADOS EXATOS E APROXIMADOS


O MXIMA possui por padro um nmero de casas decimais igual a 16. Este nmero
pode ser modificado mudando o valor da varivel fpprec. Falaremos sobre isto depois. Um
nmero real como

e,

2 , ln(3) e outras podem ser aproximados por nmeros decimais

( o que se chama dentro do MXIMA de ponto flutuante). O comando para isto bem simples:
float(<nmero>); Vejamos alguns exemplos:
_________________________________________________________________________________

Nmero

Comando

Retorno

float(%e);

2.7182818284590451

float(%pi);

3.1415926535897931

float(sqrt(2));

1.4142135623730951

ln(3)

float(log(3));

1.0986122886681098

USANDO RESULTADOS ANTERIORES


A varivel que guarda SEMPRE a ltima sada a %. Deste modo, caso eu queira
fazer referncia ao ltimo resultado exibido na tela, basta fazer referncia ao resultado usando
a varivel %. Por exemplo

Note que o valor da varivel % 31/4 que adicionado com 5/4 d 36/4=9. Isto
funciona para o que aparecer (funo, matriz, expresses, equaes etc). Sempre que quiser
fazer algo com a ltima sada, tem a opo de usar a varivel %.

DEFININDO VARIVEIS
O operador usado para definir variveis o : (dois pontos). A lgica a seguinte
Comando

O que ele faz?

x:a;

Atribui o valor a varivel x

kill(x);

Apaga o valor atribudo varivel x.

Veja o exemplo:
(%i1) x:7;

(%o2) 7

(%i4) x;

(%o1) 7

(%i3) kill(x);

(%o4) x

(%i2) x;

(%o3) done

_________________________________________________________________________________

Voc pode atribuir o que quiser e no apenas nmero. Vamos a um exemplo.

OPERAES SIMBLICAS
Uma das mais importantes caractersticas do aplicativo MXIMA que ele efetua
operaes simblicas, isto efetua operaes algbricas tais como fatorar polinmios, calcular
razes de uma equao polinomial, resolver sistemas de equaes, manipular e simplificar
expresses algbricas, etc. Podemos usar os operadores aritmticos para efetuar a
simplificao de uma expresso algbrica.

COMO EXPANDIR, FATORAR E SIMPLIFICAR COM O MXIMA


Os comandos mais simples so os que esto na tabela abaixo.

Comando

O que faz?

expand

Expanso simples

factor

Fatora (polinmios)

ratsimp

Simplifica expresses

Exemplo entrada

Retorno

polinomiais

Os comandos acima funcionam bem para os polinmios e as funes racionais, mas


voc no conseguir trabalhar bem com simplificao, por exemplo, para uma classe maior de
funes. Veja como exemplo o problema de simplificar uma expresso envolvendo radicais
_________________________________________________________________________________

como a expresso

x 9
. Vamos comear tentando usando ratsimp e depois um comando
x 3

apropriado.

Observe como ele no resolveu o problema de fatorar. Simplesmente reescreveu a


expresso. Agora vamos ver com um outro comando, prprio para trabalhar com radicais.

Agora, levando em conta o radical, a expresso foi fatorada. Para saber mais sobre as
diversas formas de simplificao (inclusive a trigonomtrica) digite

COMO USAR A AJUDA DO MXIMA?


Desde que voc tenha um fragmento da palavra que deseja pesquisar, basta escrever
? palavra; Observe que depois de ? deve haver um espao e SEMPRE terminar com ;. No
wxMXIMA ele se encarrega de colocar o ; para voc.
Alguns exemplos de ajuda que voc pode pedir

O programa ir listar o que ele encontrou e pedir a voc sobre o que quer ajuda como
o que est abaixo.

Voc deve entrar com um ou mais nmeros (separados por espao) correspondentes aos
assuntos que quer ajuda. Se quiser para todos, digite all ou se no retornou nada digite none.

_________________________________________________________________________________

ATRIBUINDO VALORES (NUMRICO OU NO) A VARIVEIS


O comando que faz esta atribuio o subst(<a>,<b>,<c>);. Este comando faz o
23

seguinte:substitui<a>por<b>em<c>.Porexemplo,suponhamosquenaexpressoa3b7 queiramossubstituirovalordeapor7.Ocomandoearespostaficariaassim:
queiramos substituir o valor de a por 7. O comando e a resposta ficaria assim:

Voc pode ler o comando acima da seguinte forma: atribuir o valor 7 varivel a na
expresso a^2+3*a*b-7*b^3.
Este comando pode ser acessado no wxMXIMA usando o boto Substitute. A janela
que aparecer ser a seguinte:

A lgica assim: substituir a varivel a por 7 na expresso a^2+3*a*b-7*b^3.


Naturalmente que esta substituio pode ser por outras expresses e no somente por
nmeros. Podemos, por exemplo, na expresso

1 x 2 substituir x por cos(t). Usando o

wxMXIMA teramos

_________________________________________________________________________________

O comando que ser exibido e consequentemente o resultado ser o seguinte:

EXPANSO EM FRAES PARCIAIS


O comando que expande uma expresso racional em fraes parciais o seguinte:
partfrac (<expr>, <var>);
Vamos a um exemplo simples: expandir em fraes parciais

1
. O comando e o
x( x 3)

resultado esto abaixo:

FUNES NO MXIMA
As funes predefinidas no MXIMA esto na tabela abaixo.
Sintaxe

Funo

abs(x)

| x|

exp(x)

ex

log(x)

ln( x)

sign(x)

x
| x|

sqrt(x)

sin(x)

sen(x)

cos(x)

cos(x)

tan(x)

tg(x)

sec(x)

sec(x)

csc(x)

cosec(x)

_________________________________________________________________________________

cot(x)

cotg(x)

acos(x)

arccos(x)

asin(x)

arcsen(x)

atan(x)

arctan(x)

asec(x)

arcsec(x)

acsc(x)

arccosec(x)

acot(x)

arccotg(x)

sinh(x)

senh(x)

cosh(x)

cosh(x)

tanh(x)

tgh(x)

sech(x)

sech(x)

csch(x)

csch(x)

coth(x)

cotgh(x)

asinh(x)

arcsenh(x)

acosh(x)

arcosh(x)

atanh(x)

arctanh(x)

asech(x)

arcsech(x)

acsc(x)

arccosech(x)

acoth(x)

arccotgh(x)

DEFININDO FUNES NO MXIMA


A forma de definio de funo no MXIMA uma das mais simples que existe. Para
criar uma funo, por exemplo, f(x) voc apenas tem que digitar f(x):= expresso; Vamos a um
2

exemplo. Definir a funo f(x)cos e encontrar f(1),0e. Para nmeros reais no inteiros, encontrar o nmero na forma decimal. Veja como ficaria
na forma decimal. Veja como ficaria

_________________________________________________________________________________

DERIVANDO COM O MXIMA


O comando que permite a derivao no MXIMA bem comum e usado em vrios
programas. Sua sintaxe a seguinte: diff( <expresso>, <varivel>); Se quiser uma derivada
de ordem superior dever digitar: diff(<expresso>, <varivel>, <ordem>); Vamos a alguns
exemplos.

O programa explicita as derivadas no caso de no conhecer a expresso. Veja.

ou ainda

INTEGRANDO COM O MXIMA


O comando que encontra a integral indefinida o seguinte:
_________________________________________________________________________________

integrate(<expresso>,<varivel>);
Desta maneira podemos integrar, funes digitando o comando ou usando o recurso do
wxMXIMA onde voc tem s que preencher campos. Se clicar em INTEGRATE aparecer
uma janela para voc preencher como a que segue abaixo.

Aqui estamos pedindo para resolver a integral

x.cos(xd
) x. Note que h uma

caixa para voc marcar caso queira uma integral definida ao invs de uma
integral indefinida. Neste caso s avisar onde comea e onde termina seu
intervalo de integrao. Para a integral citada o resultado ser este:

No caso da primitiva no ser elementar ou se o programa no encontrar


uma forma de resolver a integral ele apenas a reescreve como abaixo

Como comentado anteriormente, para resolver uma integral definida,


basta marcar a caixa na janela e avisar onde inicia e onde termina o intervalo
de integrao. Suponhamos que queira encontrar o valor da integral
7
1

x.cos(xd
) x. Voc pode usar as facilidades do wxMXIMA para escrever o
_________________________________________________________________________________

comando, clicando no boto INTEGRATE... e preenchendo a janela como


segue.

O comando para integral definida possui a seguinte estrutura:


integrate(<expresso>, <varivel>, <inicio>, <fim>);
Para a integral acima a sada seria a seguinte:

(este documento ser ainda atualizado)

Lus Cludio L. Arajo


Lus Andr B. Morales

_________________________________________________________________________________

Anda mungkin juga menyukai