Próximo: Detecção e Relato de Erros [Conteúdo][Índice]
O Maxima inicia-se executando alguma das suas interfaces gráficas ou
numa consola, com o comando "maxima". No início Maxima mostra informação
do número de versão e uma linha de entrada de comando, identificada por
(%i1)
(entrada número 1). Cada comando deve terminar-se com ponto
e vírgula “;”, para que seja executado e apareça a resposta, ou
com “$”, para que seja executado sem aparecer a resposta. Para
terminar a sessão usa-se o comando “quit
();”. Normalmente, as
teclas Ctrl-d (Ctrl e d em simultâneo) servem como atalho para
terminar a sessão. Eis um exemplo de uma sessão no Maxima:
$ maxima Maxima 5.34.1 http://maxima.sourceforge.net using Lisp SBCL 1.1.14.debian Distributed under the GNU Public License. See the file COPYING. Dedicated to the memory of William Schelter. The function bug_report() provides bug reporting information.
(%i1) factor (10!); 8 4 2 (%o1) 2 3 5 7
(%i2) expand ((x + y)^6); 6 5 2 4 3 3 4 2 5 6 (%o2) y + 6 x y + 15 x y + 20 x y + 15 x y + 6 x y + x
(%i3) factor (x^6 - 1); 2 2 (%o3) (x - 1) (x + 1) (x - x + 1) (x + x + 1)
(%i4) quit(); $
Maxima pode procurar informação nas páginas do manual. Usa-se o comando
describe para mostrar todas as funções e variáveis relacionadas
com o termo de pesquisa e opcionalmente a sua documentação. O símbolo de
interrogação ? é uma abreviatura para describe
:
(%i1) ?? integer 0: askinteger (Functions and Variables for Facts) 1: askinteger <1> (Functions and Variables for Facts) 2: askinteger <2> (Functions and Variables for Facts) 3: askinteger <3> (Functions and Variables for Facts) 4: beta_args_sum_to_integer (Gamma and factorial Functions) 5: integer (Functions and Variables for Properties) 6: integer_partitions (Functions and Variables for Sets) 7: integer_partitions <1> (Functions and Variables for Sets) 8: integerp (Functions and Variables for Numbers) 9: integervalued (Functions and Variables for Properties) 10: noninteger (Functions and Variables for Properties) 11: nonnegintegerp (Functions and Variables for Numbers)
Enter space-separated numbers, `all' or `none': 0 -- Function: askinteger (<expr>, integer) -- Function: askinteger (<expr>) -- Function: askinteger (<expr>, even) -- Function: askinteger (<expr>, odd) 'askinteger (<expr>, integer)' attempts to determine from the 'assume' database whether <expr> is an integer. 'askinteger' prompts the user if it cannot tell otherwise, and attempt to install the information in the database if possible. 'askinteger (<expr>)' is equivalent to 'askinteger (<expr>, integer)'. 'askinteger (<expr>, even)' and 'askinteger (<expr>, odd)' likewise attempt to determine if <expr> is an even integer or odd integer, respectively. (%o1) true
Para usar um resultado em cálculos posteriores, pode atribuir-se esse
valor a uma variável ou usar-se a etiqueta %o
n, onde
n é o número da saída. Adicionalmente, % refere-se sempre
ao resultado mais recente:
(%i1) u: expand ((x + y)^6); 6 5 2 4 3 3 4 2 5 6 (%o1) y + 6 x y + 15 x y + 20 x y + 15 x y + 6 x y + x
(%i2) diff (u, x); 5 4 2 3 3 2 4 5 (%o2) 6 y + 30 x y + 60 x y + 60 x y + 30 x y + 6 x
(%i3) factor (%o2); 5 (%o3) 6 (y + x)
Maxima tem conhecimento sobre números complexos e constantes numéricas:
(%i1) cos(%pi); (%o1) - 1
(%i2) exp(%i*%pi); (%o2) - 1
Maxima pode fazer contas de cálculo diferencial e integral:
(%i1) u: expand ((x + y)^6); 6 5 2 4 3 3 4 2 5 6 (%o1) y + 6 x y + 15 x y + 20 x y + 15 x y + 6 x y + x
(%i2) diff (%, x); 5 4 2 3 3 2 4 5 (%o2) 6 y + 30 x y + 60 x y + 60 x y + 30 x y + 6 x
(%i3) integrate (1/(1 + x^3), x); 2 x - 1 2 atan(-------) log(x - x + 1) sqrt(3) log(x + 1) (%o3) - --------------- + ------------- + ---------- 6 sqrt(3) 3
Maxima pode resolver sistemas lineares de equações e equações cúbicas:
(%i1) linsolve ([3*x + 4*y = 7, 2*x + a*y = 13], [x, y]); 7 a - 52 25 (%o1) [x = --------, y = -------] 3 a - 8 3 a - 8
(%i2) solve (x^3 - 3*x^2 + 5*x = 15, x); (%o2) [x = - sqrt(5) %i, x = sqrt(5) %i, x = 3]
Maxima pode também resolver sistemas de equações não lineares. Note-se os comandos terminados com $, que não mostram o resultado obtido.
(%i1) eq_1: x^2 + 3*x*y + y^2 = 0$ (%i2) eq_2: 3*x + y = 1$
(%i3) solve ([eq_1, eq_2]); 3 sqrt(5) + 7 sqrt(5) + 3 (%o3) [[y = - -------------, x = -----------], 2 2 3 sqrt(5) - 7 sqrt(5) - 3 [y = -------------, x = - -----------]] 2 2
Maxima pode gerar gráficos de uma ou mais funções:
(%i1) plot2d (sin(x)/x, [x, -20, 20])$
(%i2) plot2d ([atan(x), erf(x), tanh(x)], [x, -5, 5], [y, -1.5, 2])$
(%i3) plot3d (sin(sqrt(x^2 + y^2))/sqrt(x^2 + y^2), [x, -12, 12], [y, -12, 12])$
Próximo: Detecção e Relato de Erros [Conteúdo][Índice]