2 @c versao pt_BR baseada no md5sum abaixo:
3 @c 4790874d54a6f4da1ccf53672b684d79 Command.texi
6 * Introduction to Command Line::
7 * Functions and Variables for Command Line::
8 * Functions and Variables for Display::
11 @c -----------------------------------------------------------------------------
12 @node Introduction to Command Line, Functions and Variables for Command Line, Command Line, Command Line
13 @section Introduction to Command Line
14 @c -----------------------------------------------------------------------------
16 @c end concepts Command Line
18 @c -----------------------------------------------------------------------------
19 @node Functions and Variables for Command Line, Functions and Variables for Display, Introduction to Command Line, Command Line
20 @section Functions and Variables for Command Line
21 @c -----------------------------------------------------------------------------
23 @c -----------------------------------------------------------------------------
25 @defvr {Vari@'{a}vel de sistema} __
27 @vrindex Current input expression
30 A vari@'{a}vel de sistema @code{__} representa a express@~{a}o de entrada sendo avaliada atualmente. Isto @'{e}, enquanto uma
31 express@~{a}o de entrada @var{expr} est@'{a} sendo avaliada, o valor de @code{__} @'{e} @var{expr}.
33 A express@~{a}o de entrada @'{e} atribu@'{i}da @`{a} vari@'{a}vel de sistema @code{__} antes da entrada ser simplificada ou
34 avaliada. Todavia, o valor de @code{__} @'{e} simplificado (mas n@~{a}o avaliado)
35 quando esse valor @'{e} mostrado.
37 A vari@'{a}vel de sistema @code{__} @'{e} reconhecida por @mref{batch}
39 Em um arquivo processado
40 por @code{batch}, @code{__} tem o mesmo significado que na linha de comando interativa.
41 Em um arquivo processado por @code{load}, @code{__} @'{e} associada @`{a} express@~{a}o de entrada
42 mais recentemente informada no linha de comando interativa ou em um arquivo de lote; @code{__}
43 n@~{a}o @'{e} associada @`{a} express@~{a}o de entrada em um arquivo sendo processado. Em
44 particular, quando @code{load (@var{nomearquivo})} @'{e} chamado a partir do linha de comando
45 interativa, @code{__} @'{e} associada a @code{load (@var{nomearquivo})} enquanto o arquivo est@'{a}
48 Veja tamb@'{e}m @mref{_}
54 @c print ("I was called as", __);
56 @c g (x) := (print ("Current input expression =", __), 0);
57 @c [aa : 1, bb : 2, cc : 3];
58 @c (aa + bb + cc)/(dd + ee + g(x));
61 (%i1) print ("I was called as", __);
62 I was called as print(I was called as, __)
63 (%o1) print(I was called as, __)
66 (%i3) g (x) := (print ("Current input expression =", __), 0);
67 (%o3) g(x) := (print("Current input expression =", __), 0)
68 (%i4) [aa : 1, bb : 2, cc : 3];
70 (%i5) (aa + bb + cc)/(dd + ee + g(x));
72 Current input expression = --------------
80 @category{Vari@'{a}veis globais}
84 @c -----------------------------------------------------------------------------
86 @defvr {Vari@'{a}vel de sistema} _
88 @vrindex Previous input
91 A vari@'{a}vel de sistema @code{_} @'{e} a express@~{a}o de entrada mais recente (e.g., @code{%i1}, @code{%i2},
94 A express@~{a}o de entrada @'{e} atribu@'{i}da @`{a} vari@'{a}vel de sistema @code{_} antes de a entrada ser simplificada ou
95 avaliada. Todavia, O valor de @code{_} @'{e} simplificado (mas n@~{a}o avaliado)
96 quando esse valor @'{e} mostrado.
98 A vari@'{a}vel de sistema @code{_} @'{e} reconhecida por @mref{batch}
100 Em um arquivo processado
101 por @code{batch}, @code{_} tem o mesmo significado que na linha de comando interativa.
102 Em um arquivo processado por @code{load}, @code{_} @'{e} associada @`{a} express@~{a}o de entrada
103 mais recentemente avaliada no linha de comando interativa ou em um arquivo de lote; @code{_}
104 n@~{a}o @'{e} associada a express@~{o}es de entrada no arquivo sendo processado.
106 Veja tamb@'{e}m @mref{__}
136 ((%SIN) ((MQUOTIENT) $%PI 2))
154 @category{Intera@,{c}@~{a}o com o console} @category{Vari@'{a}veis globais}
158 @c -----------------------------------------------------------------------------
160 @defvr {Vari@'{a}vel de sistema} %
162 @vrindex Previous input
165 A vari@'{a}vel de sistema @code{%} representa a express@~{a}o de sa@'{i}da (e.g., @code{%o1}, @code{%o2}, @code{%o3},
166 @dots{}) mais recentemente calculada pelo Maxima, tenha essa entrada sido mostrada ou n@~{a}o.
168 A vari@'{a}vel de sistema @code{%} @'{e} reconhecida por @mref{batch}
169 e por @mrefdot{load} Em um arquivo processado
170 por @code{batch}, @code{%} tem o mesmo signficado que na linha de comando interativa.
171 Em um arquivo processado por @code{load}, @code{%} @'{e} associada @`{a} express@~{a}o de sa@'{i}da
172 mais recentemente calculada no linha de comando interativa ou em um arquivo de lote; @code{%}
173 n@~{a}o @'{e} associada a express@~{o}es de sa@'{i}da no arquivo sendo processado.
175 Veja tamb@'{e}m @mrefcomma{_} @mrefcomma{%%}
179 @category{Intera@,{c}@~{a}o com o console} @category{Vari@'{a}veis globais}
183 @c -----------------------------------------------------------------------------
185 @defvr {Vari@'{a}vel de sistema} %%
187 @vrindex Previous result in compound expression
190 Em declara@,{c}@~{o}es compostas, a saber @mrefcomma{block} @mrefcomma{lambda}
191 ou @code{(@var{s_1}, ..., @var{s_n})}, @code{%%} representa o valor da declara@,{c}@~{a}o
194 Na primeira declara@,{c}@~{a}o em uma declara@,{c}@~{a}o composta, ou fora de uma declara@,{c}@~{a}o
195 composta, @code{%%} @'{e} indefinida.
197 A vari@'{a}vel de sistema @code{%%} @'{e} reconhecida por @mref{batch}
198 e por @mrefcomma{load}
199 e tem o mesmo significado que na linha de comando interativa.
201 Veja tamb@'{e}m @mrefdot{%}
205 Os seguintes dois exemplos retornam o mesmo resultado.
208 (%i1) block (integrate (x^5, x), ev (%%, x=2) - ev (%%, x=1));
212 (%i2) block ([prev], prev: integrate (x^5, x),
213 ev (prev, x=2) - ev (prev, x=1));
220 Uma declara@,{c}@~{a}o composta pode compreender outras declara@,{c}@~{o}es compostas. Seja uma
221 declara@,{c}@~{a}o simples ou composta, @code{%%} representa o valor da declara@,{c}@~{a}o
225 (%i3) block (block (a^n, %%*42), %%/6);
230 Dentro de uma declara@,{c}@~{a}o composta, o valor de @code{%%} pode ser inspecionado em uma linha de comando interativa
231 de parada, que @'{e} aberta executando a fun@,{c}@~{a}o @mref{break}
232 . Por exemplo, inserindo @code{%%;} no seguinte exemplo retorna @code{42}.
235 (%i4) block (a: 42, break ())$
237 Entering a Maxima break point. Type 'exit;' to resume.
244 @category{Vari@'{a}veis globais}
248 @c -----------------------------------------------------------------------------
250 @deffn {Fun@,{c}@~{a}o} %th (@var{i})
252 @fnindex N'@'{e}sima sa@'{i}da anterior
255 O valor da @var{i}'@'{e}sima express@~{a}o de sa@'{i}da anterior. Isto @'{e}, se a express@~{a}o
256 seguinte for a @var{n}'@'{e}sima sa@'{i}da, @code{%th (@var{m})} @'{e} a
257 (@var{n} - @var{m})'@'{e}sima sa@'{i}da.
259 A fun@,{c}@~{a}o @code{%th} @'{e} reconhecida por @mref{batch}
261 Em um arquivo processado
262 por @code{batch}, @code{%th} tem o mesmo significado que na linha de comando interativa.
263 Em um arquivo processado por @code{load}, @code{%th} refere-se a express@~{o}es de sa@'{i}da mais
264 recentemente calculadas na linha de comando interativa ou em um arquivo de lote; @code{%th} n@~{a}o
265 se refere a express@~{o}es de sa@'{i}da no arquivo sendo processado.
267 Veja tamb@'{e}m @mref{%}
272 A fun@,{c}@~{a}o @code{%th} @'{e} @'{u}til em arquivos de lote @code{batch} ou para referir-se a um grupo de
273 express@~{o}es de sa@'{i}da. O exemplo adiante ajusta @code{s} para o somat@'{o}rio das @'{u}ltimas cinco
274 express@~{o}es de sa@'{i}da.
283 (%i6) block (s: 0, for i:1 thru 5 do s: s + %th(i), s);
288 @category{Intera@,{c}@~{a}o com o console}
292 @c -----------------------------------------------------------------------------
294 @deffn {S@'{i}mbolo especial} ?
296 @fnindex Documenta@,{c}@~{a}o, mostrando
299 Como prefixo de uma fun@,{c}@~{a}o ou nome de vari@'{a}vel, @code{?} significa que o nome @'{e} um
300 nome do Lisp, n@~{a}o um nome do Maxima. Por exemplo, @code{?round} significa A fun@,{c}@~{a}o
301 Lisp @code{ROUND}. Veja @ref{Lisp and Maxima} para mais informa@,{c}@~{a}o.
303 A nota@,{c}@~{a}o @code{? palavra} (uma interrroga@,{c}@~{a}o seguida por um espa@,{c}o em branco e uma
304 palavra) @'{e} equivalente a @code{describe("palavra")}. A interroga@,{c}@~{a}o deve
305 ocorrer no in@'{i}cio de uma linha de entrada; de outra forma a interroga@,{c}@~{a}o n@~{a}o @'{e} reconhecida como uma
306 requisi@,{c}@~{a}o de documenta@,{c}@~{a}o. Veja tamb@'{e}m @mrefdot{describe}
309 @category{Ajuda} @category{Intera@,{c}@~{a}o com o console}
313 @c -----------------------------------------------------------------------------
315 @deffn {S@'{i}mbolo especial} ??
317 @fnindex Documenta@,{c}@~{a}o, mostrando (busca inexata)
320 A nota@,{c}@~{a}o @code{?? palavra} (@code{??} seguida por um espa@,{c}o em branco e uma palavra)
321 @'{e} equivalente a @code{describe("palavra", inexact)}. A interroga@,{c}@~{a}o deve ocorrer
322 no in@'{i}cio de uma linha de entrada; de outra forma a interroga@,{c}@~{a}o n@~{a}o @'{e} reconhecida como uma
323 requisi@,{c}@~{a}o de documenta@,{c}@~{a}o.
326 @category{Ajuda} @category{Intera@,{c}@~{a}o com o console}
330 @c -----------------------------------------------------------------------------
332 @deffn {Finalizador de entrada} $
334 @fnindex Input terminator (omite a sa@'{i}da)
337 O sinal de d@'{o}lar @code{$} termina uma express@~{a}o de entrada e
338 tanto o local de mem@'{o}ria destinado @`{a} mais recente sa@'{i}da @code{%} quanto um novo r@'{o}tulo de sa@'{i}da, e.g. @code{%o1},
339 recebem o resultado dessa express@~{a}o de entrada, mas o resultado n@~{a}o aparece na tela.
341 Veja tamb@'{e}m @code{;}.
358 @c -----------------------------------------------------------------------------
360 @deffn {Terminador de entrada} ;
362 @fnindex Input terminator (exibe a sa@'{i}da)
365 O ponto e v@'{i}rgula @code{;} termina uma express@~{a}o de sa@'{i}da,
366 e a sa@'{i}da resultate @'{e} mostrada.
368 Veja tamb@'{e}m @code{$}.
380 @c -----------------------------------------------------------------------------
382 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} inchar
383 Valor padr@~{a}o: @code{%i}
385 A vari@'{a}vel de op@,{c}@~{a}o @code{inchar} @'{e} o prefixo dos r@'{o}tulos de express@~{o}es inseridas pelo usu@'{a}rio.
386 Maxima automaticamente constr@'{o}i um r@'{o}tulo para cada express@~{a}o de entrada
387 concatenando @code{inchar} e @mrefdot{linenum}
389 A vari@'{a}vel de op@,{c}@~{a}o @code{inchar} pode receber qualquer sequ@^{e}ncia de cracteres ou s@'{i}mbolo, n@~{a}o necess@'{a}riamente um caractere
390 sozinho. Pelo fato de m@'{a}xima internamente levar em considera@,{c}@~{a}o somente o primeiro caractere do
391 prefixo, os prefixos @code{inchar}, @mrefcomma{outchar}
393 devem ter um primeiro caractere diferente. Se isso n@~{a}o ocorrer alguns comandos
394 como @code{kill(inlables)} n@~{a}o ir@~{a}o trabalhar como esperado.
396 Veja tamb@'{e}m @code{labels}.
405 (%i1) inchar: "input";
407 (input2) expand((a+b)^3);
409 (%o2) b + 3 a b + 3 a b + a
414 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
418 @c -----------------------------------------------------------------------------
420 @defvr {Vari@'{a}vel de sistema} infolists
421 Valor padr@~{a}o: @code{[]}
423 A vari@'{a}vel de sistema @code{infolists} @'{e} uma lista dos nomes de todas as listas de
424 informa@,{c}@~{a}o no Maxima. S@~{a}o elas:
428 Todos os r@'{o}tulos @code{%i}, @code{%o}, e @code{%t} associados.
430 Todos os @'{a}tomos associados que s@~{a}o vari@'{a}veis de usu@'{a}rio, n@~{a}o op@,{c}@~{o}es do Maxima ou comutadores,
433 ou por associa@,{c}@~{a}o funcional.
434 @c WHAT IS INTENDED BY "FUNCTIONAL BINDING" HERE ??
436 Todas as fun@,{c}@~{o}es definidas pelo usu@'{a}rio, criadas por @mref{:=}
437 ou por @mrefdot{define}
439 Todos os vetores est@'{a}ticos declarados e n@~{a}o declarados, criados por @code{:}, por @code{::}, ou por
441 @c AREN'T THERE OTHER MEANS OF CREATING ARRAYS ??
443 Todas as fun@,{c}@~{o}es de macro definidas pelo usu@'{a}rio, criadas por @mrefdot{::=}
445 Todas as op@,{c}@~{o}es mesmo zeradas pelo usu@'{a}rio (mesmo que elas sejam ou n@~{a}o
446 futuramente retornadas a seus valores padr@~{a}o).
448 Todas as m@'{a}caras de coincid@^{e}ncia e regras de simplifica@,{c}@~{a}o, criadas
449 por @mrefcomma{tellsimp} @mrefcomma{tellsimpafter} @mrefcomma{defmatch}
450 ou por @mrefdot{defrule}
452 Todos os @'{a}tomos ue tiverem um apelido definido pelo usu@'{a}rio, criados pela fun@,{c}@~{o}es
454 @w{} @mrefcomma{ordergreat} @mref{orderless}
455 ou por meio da declara@,{c}@~{a}o de @'{a}tomos como
456 @mref{noun} usando @mrefdot{declare}
458 Todos os @'{a}tomos que possu@'{i}rem depend@^{e}ncias funcionais, criadas pelas
459 fun@,{c}@~{o}es @mrefcomma{depends} @mrefcomma{dependencies}
462 Todas as fun@,{c}@~{o}es que tiverem derivadas definidas pelo usu@'{a}rio, criadas pela
463 fun@,{c}@~{a}o @mrefdot{gradef}
464 @c UMM, WE REALLY NEED TO BE SPECIFIC -- WHAT DOES "ETC" CONTAIN HERE ??
466 Todos os @'{a}tomos que possu@'{i}rem qualuer propriedade outra que n@~{a}o aquelas mencionadas acima, tais como
467 propriedades estabelecidas por @mref{atvalue}
468 ou por @mrefcomma{matchdeclare}
470 bem como propriedades estabelecidas na fun@,{c}@~{a}o @mrefdot{declare}
471 @item let_rule_packages
472 Todas os pacotes de regra @mref{let}
473 definidos pelo usu@'{a}rio
474 al@'{e}m do pacote especial @mrefdot{default_let_rule_package}
475 (@code{default_let_rule_package}
476 @'{e} o nome do pacote de regras usado quando
477 um n@~{a}o for explicitamente ajustado pelo usu@'{a}rio.)
481 @category{Declara@,{c}@~{o}es e infer@^{e}ncias} @category{Vari@'{a}veis globais}
485 @c REVIEW FOR ACCURACY AND COMPLETENESS
486 @c THIS ITEM IS VERY IMPORTANT !!
489 @c -----------------------------------------------------------------------------
491 @deffn {Fun@,{c}@~{a}o} kill @
492 @fname{kill} (@var{a_1}, @dots{}, @var{a_n}) @
493 @fname{kill} (labels) @
494 @fname{kill} (inlabels, outlabels, linelabels) @
495 @fname{kill} (@var{n}) @
496 @fname{kill} ([@var{m}, @var{n}]) @
497 @fname{kill} (values, functions, arrays, @dots{}) @
499 @fname{kill} (allbut (@var{a_1}, @dots{}, @var{a_n}))
501 Remove todas as associa@,{c}@~{o}es (de valor, de fun@,{c}@~{a}o, de vetor est@'{a}tico, ou de regra) dos argumentos
502 @var{a_1}, @dots{}, @var{a_n}. Um argumento @var{a_k} pode ser um s@'{i}mbolo ou um
503 elemento de vetor est@'{a}tico sozinho. Quando @var{a_k} for um elemento de vetor est@'{a}tico, @code{kill}
504 desassocia aquele elemento sem afetar quaisquer outros elementos do vetor est@'{a}tico.
506 Muitos argumentos especiais s@~{a}o reconhecidos. Diferentes tipos de argumentos
507 podem ser combinados, e.g., @code{kill (inlabels, functions, allbut (quaquercoisa, outracoisa))}.
509 @code{kill (labels)} desassocia todos os r@'{o}tulos de entrada, todos os r@'{o}tulos de sa@'{i}das, e todos os r@'{o}tulos de express@~{o}es intermedi@'{a}rias
510 criados at@'{e} o presente momento. O comando @code{kill (inlabels)} desassocia somente r@'{o}tulos de entrada que
511 que iniciam com o valor atual de @mrefdot{inchar}
513 @code{kill (outlabels)} desassocia somente r@'{o}tulos de sa@'{i}da que iniciam com o atual
514 valor de @mrefcomma{outchar}
515 e @code{kill (linelabels)} desassocia somente
516 r@'{o}tulos de express@~{o}es intermedi@'{a}rias que iniciam com o valor atual de
519 O comando @code{kill (@var{n})}, onde @var{n} @'{e} um inteiro,
520 desassocia os @var{n} r@'{o}tulos mais recentes de entrada e sa@'{i}da.
522 @code{kill ([@var{m}, @var{n}])} desassocia r@'{o}tulos de entrada e sa@'{i}da que v@~{a}o de @var{m} at@'{e}
525 O comando @code{kill (@var{infolist})}, onde @var{infolist} @'{e} qualquer item em
526 @code{infolists} (tais como @mrefcomma{values} @mrefcomma{functions}
527 ou como @mref{arrays}
528 ) desassocia todos os itens em @var{infolist}.
529 Veja tamb@'{e}m @mrefdot{infolists}
531 @code{kill (all)} desassocia todos os itens em todas as infolistas. O comando @code{kill (all)} n@~{a}o
532 ajusta vari@'{a}veis globais para seus valores padr@~{a}o; veja @mref{reset}
535 O comando @code{kill (allbut (@var{a_1}, ..., @var{a_n}))} desassocia all items on all
536 infolists except for @var{a_1}, @dots{}, @var{a_n}.
537 O comando @code{kill (allbut (@var{infolist}))} desassocia todos os itens exceto aqueles em
538 @var{infolist}, onde @var{infolist} @'{e} @mrefcomma{values}
539 @w{} @mrefcomma{functions} @mrefcomma{arrays}
542 A mem@'{o}ria ocupada por uma propriedade associada n@~{a}o @'{e} liberada at@'{e} que todos os s@'{i}mbolos sejam
543 desassociados dessa propriedade. Em particular, para liberar a memŕia ocupada pelo valor de
544 um s@'{i}mbolo, se desassocia o r@'{o}tulo de sa@'{i}da que mostra o valor associado, bem como
545 desassocia-se tamb@'{e}m o s@'{i}mbolo propriamente dito.
547 O comando @code{kill} n@~{a}o avalia seus argumentos. O operador ap@'{o}strofo-ap@'{o}strofo @code{'@w{}'}
548 evita que as aspas duplas sejam colocadas.
550 O comando @code{kill (@var{s@'{i}mbolo})} desassocia todas as propriedades de @var{s@'{i}mbolo}. De forma oposta,
551 as fun@,{c}@~{o}es @mrefcomma{remvalue} @mrefcomma{remfunction}
552 @w{}@mrefcomma{remarray}
554 desassociam uma propriedade espec@'{i}fica.
556 O comando @code{kill} sempre retorna @code{done}, mesmo se um argumento n@~{a}o tenha associa@,{c}@~{o}es.
559 @category{Avalia@,{c}@~{a}o} @category{Intera@,{c}@~{a}o com o console} @category{Gerenciamento de sess@~{a}o}
563 @c -----------------------------------------------------------------------------
565 @deffn {Fun@,{c}@~{a}o} labels (@var{s@'{i}mbolo}) @
567 Retorna a lista de r@'{o}tulos de entrada, sa@'{i}da, ou de express@~{o}es intermediarias que se iniciam
568 com @var{s@'{i}mbolo}. Tipicamente @var{s@'{i}mbolo} @'{e} o valor de
569 @mrefcomma{inchar} @mrefcomma{outchar}
570 ou de @mrefdot{linechar}
571 Se nenhum r@'{o}tulo iniciar-se com @var{s@'{i}mbolo}, @code{labels} retorna uma lista vazia.
573 Por padr@~{a}o, Maxima mostra o resultado de cada express@~{a}o de entrada de usu@'{a}rio, fornecendo ao
574 resultado um r@'{o}tulo de sa@'{i}da. A exibi@,{c}@~{a}o da sa@'{i}da @'{e} omitida terminando a entrada
575 com @code{$} (sinal de d@'{o}lar) ao inv@'{e}s do @code{;} (ponto e v@'{i}rgula). Um r@'{o}tulo
576 de sa@'{i}da @'{e} constru@'{i}do e associado ao resultado, mas n@~{a}o @'{e} mostrado, e o r@'{o}tulo
577 pode ser referenciado da mesma forma que os r@'{o}tulos de sa@'{i}da que s@~{a}o mostrados. Veja tamb@'{e}m
578 @mrefcomma{%} @mrefcomma{%%}
581 R@'{o}tulos de express@~{o}es intermedi@'{a}rias podem ser gerados por algumas fun@,{c}@~{o}es. A vari@'{a}vel de
582 op@,{c}@~{a}o @mref{programmode}
583 controla se @mref{solve}
585 fun@,{c}@~{o}es geram r@'{o}tulos de express@~{o}es intermedi@'{a}rias ao inv@'{e}s de retornar uma lista de
586 express@~{o}es. Algumas outras fun@,{c}@~{o}es, tais como @mrefcomma{ldisplay}
587 sempre geram r@'{o}tulos de express@~{o}es intermedi@'{a}rias.
589 Veja tamb@'{e}m @mrefcomma{inchar} @mrefcomma{outchar} @mrefcomma{linechar}
590 e @mrefdot{infolists}
593 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o} @category{Intera@,{c}@~{a}o com o console}
597 @defvr {Vari@'{a}vel de sistema} labels
599 A variável @code{labels} contém a lista de rótulos de entradas, saÃdas, e de
600 expressões intermediárias, incluindo todos os rótulos anteriores se @code{inchar},
601 @code{outchar}, ou @code{linechar} forem redefinidas.
604 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o} @category{Intera@,{c}@~{a}o com o console}
608 @c -----------------------------------------------------------------------------
610 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} linechar
611 Valor padr@~{a}o: @code{%t}
613 A vari@'{a}vel de op@,{c}@~{a}o @code{linechar} cont@'{e}m o prefixo dos r@'{o}tulos de express@~{o}es intermedi@'{a}rias
614 gerados pelo Maxima. Maxima consstr@'{o}i um r@'{o}tulo para cada express@~{a}o intermedi@'{a}ria
615 (se for mostrada) concatenando @code{linechar} e @mrefdot{linenum}
617 A vari@'{a}vel de op@,{c}@~{a}o @code{linechar} pode receber qualquer sequ@^{e}ncia de caracteres ou s@'{i}mbolo, n@~{a}o necess@'{a}riamente um caractere
618 @'{u}nico. Devido ao fato de Maxima internamente considerar somente o primeiro caractere do
619 prefixo, os prefixos @mrefcomma{inchar} @mrefcomma{outchar}
620 e @code{linechar} devem ter um primeiro caractere diferente. De outra forma alguns comandos
621 como @code{kill(inlables)} n@~{a}o ir@~{a}o trabalhar como esperado.
623 Express@~{o}es intermedi@'{a}rias podem ou n@~{a}o serem mostradas.
624 Veja @mref{programmode}
628 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
632 @c EXPAND; SHOW WHAT HAPPENS WHEN linenum IS ASSIGNED A VALUE
634 @c -----------------------------------------------------------------------------
636 @defvr {Vari@'{a}vel de sistema} linenum
638 O n@'{u}mero de linha do par atual de express@~{o}es de entrada e sa@'{i}da.
641 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o} @category{Intera@,{c}@~{a}o com o console}
647 @c -----------------------------------------------------------------------------
649 @defvr {Vari@'{a}vel de sistema} myoptions
650 Valor padr@~{a}o: @code{[]}
652 A vari@'{a}vel de sistema @code{myoptions} @'{e} a lista de todas as op@,{c}@~{o}es mesmo alteradas pelo usu@'{a}rio,
653 seja essa altera@,{c}@~{a}o para o seu valor padr@~{a}o ou n@~{a}o.
656 @category{Vari@'{a}veis globais} @category{Gerenciamento de sess@~{a}o} @category{Intera@,{c}@~{a}o com o console}
660 @c -----------------------------------------------------------------------------
662 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} nolabels
663 Valor padr@~{a}o: @code{false}
665 Quando @code{nolabels} for @code{true}, r@'{o}tulos de resultado de entrada e sa@'{i}da (@code{%i}
666 e @code{%o}, respectivamente) s@~{a}o mostrados, mas os r@'{o}tulos n@~{a}o s@~{a}o associados ao
667 resultado, e os r@'{o}tulos n@~{a}o s@~{a}o anexados ao final da lista @mrefdot{labels}
668 Uma vez que r@'{o}tulos n@~{a}o s@~{a}o associados a resultados, as fun@,{c}@~{o}es de recupera@,{c}@~{a}o de mem@'{o}ria podem recuperar a mem@'{o}ria
669 usada pelos resultados.
671 De outra forma r@'{o}tulos de resultado de entrada e sa@'{i}da s@~{a}o associados aos resultados, e os r@'{o}tulos
672 s@~{a}o anexados ao final da lista @code{labels}.
674 R@'{o}tulos de express@~{o}es intermedi@'{a}rias (@code{%t}) n@~{a}o s@~{a}o afetados por @code{nolabels};
675 independente de @code{nolabels} ser @code{true} ou @code{false}, r@'{o}tulos de express@~{o}es
676 intermedi@'{a}rias s@~{a}o associados e anexados ao final da lista @code{labels}.
678 Veja tamb@'{e}m @mrefcomma{batch} @mrefcomma{load}
682 @category{Global flags} @category{Gerenciamento de sess@~{a}o}
688 @c -----------------------------------------------------------------------------
690 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} optionset
691 Valor padr@~{a}o: @code{false}
693 Quando @code{optionset} for @code{true}, Maxima mostra uma mensagem sempre que uma
694 op@,{c}@~{a}o do Maxima for alterada. Isso @'{e} @'{u}til se o usu@'{a}rio estiver cheio de d@'{u}vidas sobre a sintaxe
695 de alguma op@,{c}@~{a}o e deseja garantir que aquela vari@'{a}vel a qual ele atribuiu um valor
696 era realmente uma vari@'{a}vel de op@,{c}@~{a}o.
701 (%i1) optionset:true;
702 assignment: assigning to option optionset
704 (%i2) gamma_expand:true;
705 assignment: assigning to option gamma_expand
710 @category{Global flags} @category{Gerenciamento de sess@~{a}o} @category{Intera@,{c}@~{a}o com o console}
714 @c -----------------------------------------------------------------------------
717 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} outchar
718 Valor padr@~{a}o: @code{%o}
720 A vari@'{a}vel de op@,{c}@~{a}o @code{outchar} @'{e} o prefixo dos r@'{o}tulos de express@~{o}es calculadas pelo Maxima.
721 Maxima automaticamente constr@'{o}i um r@'{o}tulo para cada exrpess@~{a}o calculada pela
722 concatena@,{c}@~{a}o de @code{outchar} com @mrefdot{linenum}
724 A vari@'{a}vel de op@,{c}@~{a}o @code{outchar} pode receber como valor qualquer sequ@^{e}ncia de caracteres ou s@'{i}mbolo, n@~{a}o necess@'{a}riamente um caractere
725 @'{u}nico. Devido ao fato de Maxima internamente considerar somente o primeiro caractere do
726 prefixo, os prefixos @mrefcomma{inchar} @mrefcomma{outchar}
727 e @code{linechar} devem ter um primeiro caractere diferente. De outra forma alguns comandos
728 como @code{kill(inlables)} n@~{a}o ir@~{a}o trabalhar como esperado.
730 Veja tamb@'{e}m @code{labels}.
735 @c outchar: "output";
739 (%i1) outchar: "output";
741 (%i2) expand((a+b)^3);
743 (output2) b + 3 a b + 3 a b + a
748 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
752 @c -----------------------------------------------------------------------------
754 @deffn {Fun@,{c}@~{a}o} playback @
755 @fname{playback} () @
756 @fname{playback} (@var{n}) @
757 @fname{playback} ([@var{m}, @var{n}]) @
758 @fname{playback} ([@var{m}]) @
759 @fname{playback} (input) @
760 @fname{playback} (slow) @
761 @fname{playback} (time) @
762 @fname{playback} (grind)
764 Mostra as entradas, as sa@'{i}das, e as express@~{o}es intermedi@'{a}rias, sem recalcul@'{a}-las.
765 A fun@,{c}@~{a}o @code{playback} somente mostra as express@~{o}es associadas a r@'{o}tulos; quaisquer outras sa@'{i}das
766 (tais como textos mostrados atrav@'{e}s da fun@,{c}@~{a}o @mref{print}
767 ou da fun@,{c}@~{a}o @mrefcomma{describe}
768 ou mensagens de erro)
769 n@~{a}o @'{e} mostrado. Veja tamb@'{e}m @mrefdot{labels}
771 A fun@,{c}@~{a}o @code{playback} n@~{a}o avalia seus argumentos. O operador ap@'{o}strofo-ap@'{o}strofo @code{'@w{}'}
772 evita que as aspas duplas sejam colocadas. A fun@,{c}@~{a}o @code{playback} sempre retorna @code{done}.
774 Executando @code{playback ()} (sem argumentos) mostra todas as esntradas, sa@'{i}das, e
775 express@~{o}es intermedi@'{a}rias geradas at@'{e} agora. Uma express@~{a}o de sa@'{i}da @'{e} mesmtrada
776 mesmo se tifer sido suprimida pelo terminador @code{$} quando foi originalmente
779 @code{playback (@var{n})} mostra as @'{u}ltimas @var{n} express@~{o}es.
780 Cada entrada, sa@'{i}da, e cada express@~{a}o intermedi@'{a}ria conta como um.
782 @code{playback ([@var{m}, @var{n}])} mostra entradas, sa@'{i}das, e express@~{o}es
783 intermedi@'{a}rias com n@'{u}meros de @var{m} at@'{e} @var{n}, inclusive.
785 @code{playback ([@var{m}])} @'{e} equivalente a
786 @code{playback ([@var{m}, @var{m}])}; esse comando mostra um par de express@~{o}es de
789 @code{playback (input)} mostra todas as express@~{o}es de entrada geradas at@'{e} agora.
791 @code{playback (slow)} d@'{a} uma pausa entre as express@~{o}es e espera que o usu@'{a}rio
792 pressione @code{enter}. Esse comportamento @'{e} similar ao comportamento de @mrefdot{demo}
793 @c WHAT DOES THE FOLLOWING MEAN ???
794 @code{playback (slow)} @'{e} @'{u}til em conjun@,{c}@~{a}o com @code{save} ou com
796 na cria@,{c}@~{a}o de um arquivo secund@'{a}rio de armazenagem com o objetivo de selecionar
797 express@~{o}es @'{u}teis.
799 @code{playback (time)} mostra o tempo de computa@,{c}@~{a}o para cada express@~{a}o.
800 @c DON'T BOTHER TO MENTION OBSOLETE OPTIONS !!!
801 @c The arguments @code{gctime} and @code{totaltime} have the same effect as @code{time}.
803 @code{playback (grind)} mostra express@~{o}es de entrada no mesmo formato que a
804 fun@,{c}@~{a}o @code{grind}. Express@~{o}es de sa@'{i}da n@~{a}o s@~{a}o afetadas ppela op@,{c}@~{a}o
805 @code{grind}. Veja @mrefdot{grind}
807 Argumentos podem ser combinados, e.g., @code{playback ([5, 10], grind, time, slow)}.
808 @c APPEARS TO BE input INTERSECT (UNION OF ALL OTHER ARGUMENTS). CORRECT ???
811 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o} @category{Intera@,{c}@~{a}o com o console}
815 @c -----------------------------------------------------------------------------
818 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} prompt
819 Valor padr@~{a}o: @code{_}
821 A vari@'{a}vel de op@,{c}@~{a}o @code{prompt} @'{e} o s@'{i}mbolo de linha de comando da fun@,{c}@~{a}o @mrefcomma{demo}
822 modo @code{playback (slow)}, e do la@,{c}o de parada do Maxima (da forma invocada por
827 @category{Vari@'{a}veis globais} @category{Intera@,{c}@~{a}o com o console}
831 @c -----------------------------------------------------------------------------
833 @deffn {Fun@,{c}@~{a}o} quit ()
835 Encerra a sess@~{a}o do Maxima. Note que a fun@,{c}@~{a}o deve ser chamada como
836 @code{quit();} ou como @code{quit()$}, n@~{a}o como @code{quit} somente.
838 Para parar um c@'{a}lculo muito demorado, aperte @code{control-C}. O comportamento padr@~{a}o @'{e}
839 retornar paa a linha de comando do Maxima. Se @code{*debugger-hook*} for @code{nil},
840 @code{control-C} abre o depurador Lisp. Veja tamb@'{e}m @ref{Debugging}.
843 @category{Intera@,{c}@~{a}o com o console}
847 @c -----------------------------------------------------------------------------
849 @deffn {Fun@,{c}@~{a}o} read (@var{expr_1}, @dots{}, @var{expr_n})
851 Mostra @var{expr_1}, @dots{}, @var{expr_n}, a seguir l@^{e} uma express@~{a}o a partir do
852 console e retorna a express@~{a}o avaliada. A express@~{a}o @'{e} terminada com
853 um ponto e v@'{i}rgula @code{;} ou com o @code{$} (sinal de d@'{o}lar).
855 Veja tamb@'{e}m @mref{readonly}
861 (%i2) foo: read ("foo is", foo, " -- enter new value.")$
862 foo is 42 -- enter new value.
870 @category{Intera@,{c}@~{a}o com o console}
874 @c -----------------------------------------------------------------------------
876 @deffn {Fun@,{c}@~{a}o} readonly (@var{expr_1}, @dots{}, @var{expr_n})
878 Mostra @var{expr_1}, @dots{}, @var{expr_n}, a seguir l@^{e} uma express@~{a}o a partir do
879 console e retorna a express@~{a}o (sem avalia@,{c}@~{a}o). A express@~{a}o @'{e}
880 terminada com um @code{;} (ponto e v@'{i}rgula) ou com um @code{$} (sinal de d@'{o}lar).
882 Veja tamb@'{e}m @mrefdot{read}
888 (%i2) foo: readonly ("Enter an expression:");
893 (%i3) foo: read ("Enter an expression:");
900 @category{Intera@,{c}@~{a}o com o console}
904 @c -----------------------------------------------------------------------------
906 @deffn {Fun@,{c}@~{a}o} reset ()
908 Volta muitas vari@'{a}veis globais e de op@,{c}@~{a}o, e algumas outras vari@'{a}veis, para seus
911 A fun@,{c}@~{a}o @code{reset} processa as vari@'{a}veis na lista Lisp
912 @code{*variable-initial-values*}. A macro Lisp @code{defmvar} coloca vari@'{a}veis
913 nessa lista (entre outras a@,{c}@~{o}es). Muitas, mas n@~{a}o todas, vari@'{a}veis globais e
914 vari@'{a}veis de op@,{c}@~{a}o s@~{a}o definidas por @code{defmvar}, e algumas vari@'{a}veis definidas por
915 @code{defmvar} n@~{a}o s@~{a}o vari@'{a}veis globais nem vari@'{a}veis de op@,{c}@~{a}o.
918 @category{Gerenciamento de sess@~{a}o}
922 @c -----------------------------------------------------------------------------
924 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} showtime
925 Valor padr@~{a}o: @code{false}
927 Quando @code{showtime} for @code{true}, o tempo de c@'{a}lculo e o tempo decorrido ambos s@~{a}o
928 mostrados com cada express@~{a}o de sa@'{i}da.
930 O tempo de c@'{a}lculo @'{e} sempre gravado, de forma que @mref{time}
932 possam mostrar o tempo de c@'{a}lculo mesmo quando @code{showtime} for @code{false}.
934 Veja tamb@'{e}m @mrefdot{timer}
937 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o} @category{Depurando}
941 @c -----------------------------------------------------------------------------
943 @deffn {Fun@,{c}@~{a}o} to_lisp ()
945 Insere o sistema Lisp em uma sess@~{a}o do Maxima. A fun@,{c}@~{a}o @code{(to-maxima)} retorna ao Maxima.
949 Define a function and enter the Lisp system under Maxima. The definition is
950 inspected on the property list, then the function definition is extracted,
951 factored and stored in the variable $result. The variable can be used in Maxima
952 after returning to Maxima.
959 Type (to-maxima) to restart, ($quit) to quit Maxima.
960 MAXIMA> (symbol-plist '$f)
961 (MPROPS (NIL MEXPR ((LAMBDA) ((MLIST) $X)
962 ((MPLUS) ((MEXPT) $X 2) $X))))
963 MAXIMA> (setq $result ($factor (caddr (mget '$f 'mexpr))))
964 ((MTIMES SIMP FACTORED) $X ((MPLUS SIMP IRREDUCIBLE) 1 $X))
973 @category{Intera@,{c}@~{a}o com o console}
977 @c -----------------------------------------------------------------------------
979 @defvr {Vari@'{a}vel de sistema} values
980 Valor inicial: @code{[]}
982 A vari@'{a}vel de sistema @code{values} @'{e} uma lista de todas as vari@'{a}veis de usu@'{a}rio associadas (n@~{a}o op@,{c}@~{o}es do Maxima ou
983 comutadores). A lsita compreende s@'{i}mbolos associados por @mrefcomma{:}
986 Se o valor de uma vari@'{a}vel @'{e} removido com os comandos @code{kill},
989 a vari@'{a}vel @'{e} apagada de @code{values}.
991 Veja @mref{functions}
992 para uma lista de fun@,{c}@~{o}es definidas pelo usu@'{a}rio.
996 Primeiramente, @code{values} mostra os s@'{i}mbolos @code{a}, @code{b}, 3 @code{c}, mas
997 n@~{a}o mostra o s@'{i}mbolo @code{d}, ele n@~{a}o est@'{a} associado a um valor, e n@~{a}o mostra a fun@,{c}@~{a}o de usu@'{a}rio @code{f}.
998 A seguir os valores s@~{a}o removidos das vari@'{a}veis. A partir de agora a vari@'{a}vel de sistema @code{values} cont@'{e}m uma lista vazia.
1001 @c [a:99, b:: a-90, c:a-b, d, f(x):=x^2];
1003 @c [kill(a), remove(b,value), remvalue(c)];
1007 (%i1) [a:99, b::a-90, c:a-b, d, f(x):= x^2];
1009 (%o1) [99, 9, 90, d, f(x) := x ]
1012 (%i3) [kill(a), remove(b,value), remvalue(c)];
1013 (%o3) [done, done, [c]]
1019 @category{Avalia@,{c}@~{a}o} @category{Vari@'{a}veis globais}
1023 @c -----------------------------------------------------------------------------
1024 @node Functions and Variables for Display, , Functions and Variables for Command Line, Command Line
1025 @section Functions and Variables for Display
1026 @c -----------------------------------------------------------------------------
1028 @c -----------------------------------------------------------------------------
1030 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} %edispflag
1031 Valor padr@~{a}o: @code{false}
1033 Quando @code{%edispflag} for @code{true}, Maxima mostra a base @code{%e} com um expoente
1034 negativo como um quociente. Por exemplo, @code{%e^-x} is displayed as
1035 @code{1/%e^x}. Veja tamb@'{e}m @mrefdot{exptdispflag}
1048 (%i2) %edispflag:true$
1057 @category{Fun@,{c}@~{o}es exponecial e logar@'{i}tmica} @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1061 @c -----------------------------------------------------------------------------
1063 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} absboxchar
1064 Valor padr@~{a}o: @code{!}
1066 @code{absboxchar} @'{e} o caractere usado para desenhar o sinal de valor
1067 absoluto que envolve express@~{o}es que s@~{a}o de comprimento maor que o de uma linha.
1078 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1082 @c AFTER REVIEWING src/displa.lisp, IT LOOKS LIKE THIS VARIABLE HAS NO EFFECT
1083 @c CUT IT ON THE NEXT PASS
1084 @c @defvar cursordisp
1085 @c Valor padr@~{a}o: @code{true}
1087 @c When @code{cursordisp} is @code{true}, expressions are drawn by
1088 @c the displayer in logical sequence. This only works with a console
1089 @c which can do cursor movement. If @code{false}, expressions are
1090 @c printed line by line.
1092 @c @code{cursordisp} is always @code{false} when a @code{writefile} is in
1097 @c -----------------------------------------------------------------------------
1099 @deffn {Fun@,{c}@~{a}o} disp (@var{expr_1}, @var{expr_2}, @dots{})
1101 Essa fun@,{c}@~{a}o @'{e} como @mref{display}
1102 mas somente o valor dos argumentos @'{e} mostrado ao inv@'{e}s das
1103 equa@,{c}@~{o}es. @'{E} @'{u}til para argumentos complicados que n@~{a}o possuem nomes
1104 ou onde somente o valor do argumento @'{e} de interesse e n@~{a}o o nome.
1106 Veja tamb@'{e}m @mref{ldisp}
1114 @c disp(x, b[1,2], sin(1.0));
1119 (%i3) disp(x, b[1,2], sin(1.0));
1131 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o}
1135 @c -----------------------------------------------------------------------------
1137 @deffn {Fun@,{c}@~{a}o} display (@var{expr_1}, @var{expr_2}, @dots{})
1139 Mostra equa@,{c}@~{o}es cujo primeiro membro @'{e} @var{expr_i} n@~{a}o avaliado, e cujo segundo
1140 membro seja o valor da express@~{a}o de forma que ambos sejam centralizados na linha. Essa fun@,{c}@~{a}o @'{e}
1141 @'{u}til em blocos e em declara@,{c}@~{o}es @mref{for}
1142 com o objetivo de ter resultados resultados intermedi@'{a}rios
1143 mostrados. Os argumentos a @code{display} s@~{a}o normalmente @'{a}tomos, subscritos
1144 vari@'{a}veis, ou chamadas a fun@,{c}@~{o}es.
1146 Veja tamb@'{e}m @mrefcomma{ldisplay} @mrefcomma{disp}
1154 @c display(x, b[1,2], sin(1.0));
1159 (%i3) display(x, b[1,2], sin(1.0));
1166 sin(1.0) = .8414709848078965
1172 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o}
1176 @c -----------------------------------------------------------------------------
1178 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} display2d
1179 Valor padr@~{a}o: @code{true}
1181 Quando @code{display2d} for @code{false}, o console de exibi@,{c}@~{a}o @'{e} uma sequ@^{e}ncia de caracteres
1182 na forma unidimensional ao inv@'{e}s de um de exibi@,{c}@~{a}o na forma bidimensional.
1184 Veja tamb@'{e}m @mref{leftjust}
1185 para allternar entre um console de exibi@,{c}@~{a}o de equa@,{c}@~{o}es
1186 alinhado @`{a} esquerda e um console de exibi@,{c}@~{a}o de equa@,{c}@~{o}es centralizado.
1201 (%i2) display2d:false$
1207 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1211 @c -----------------------------------------------------------------------------
1212 @anchor{display_format_internal}
1213 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} display_format_internal
1214 Valor padr@~{a}o: @code{false}
1216 Quando @code{display_format_internal} for @code{true}, express@~{o}es s@~{a}o msotradas
1217 sem serem transformadas em formas que escondam a representa@,{c}@~{a}o matem@'{a}tica
1218 interna. A exibi@,{c}@~{a}o ent@~{a}o corresponde ao retorno de @mref{inpart}
1219 ao inv@'{e}s de corresponder ao retorno de @mrefdot{part}
1225 a-b; a - b a + (- 1) b
1239 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1243 @c IS THIS FUNCTION STILL USEFUL ???
1244 @c REPHRASE, NEEDS EXAMPLES
1246 @c -----------------------------------------------------------------------------
1248 @deffn {Fun@,{c}@~{a}o} dispterms (@var{expr})
1250 Mostra @var{expr} em partes uma abaixo da outra. Isto @'{e}, primeiramente o operador
1251 de @var{expr} @'{e} mostrado, a seguir cada parcela em uma soma, ou cada fator em um produto, ou
1252 parte de uma express@~{a}o mais geral @'{e} mostrada separadamente. @'{E} @'{u}til se
1253 @var{expr} for muito grande para ser mostrada de outra forma. Por exemplo se @code{P1},
1254 @code{P2}, @dots{} forem espress@~{o}es muito grande ent@~{a}o o programa de exibi@,{c}@~{a}o pode executar
1255 fora do espa@,{c}o de armazenagem na tentativa de mostra @code{P1 + P2 + ...} toda de uma vez.
1256 Todavia, @code{dispterms (P1 + P2 + ...)} mostra @code{P1}, ent@~{a}o abaixo dela
1257 mostra @code{P2}, etc. Quando n@~{a}o se usa @code{dispterms}, se uma express@~{a}o exponencial
1258 @'{e} muito larga para ser mostrada como @code{A^B} aparece como @code{expt (A, B)} (ou
1259 como @code{ncexpt (A, B)} no caso de @code{A^^B})@footnote{Nota do tradutor: exponencial n@~{a}o comutativa.}.
1264 (%i1) dispterms(2*a*sin(x)+%e^x);
1277 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o}
1281 @c -----------------------------------------------------------------------------
1284 @deffn {S@'{i}mbolo especial} expt (@var{a}, @var{b})
1285 @deffnx {S@'{i}mbolo especial} ncexpt (@var{a}, @var{b})
1287 Se uma express@~{a}o exponencial @'{e} muito larga para ser mostrada como
1288 @code{@var{a}^@var{b}} ela aparece como @code{expt (@var{a}, @var{b})} (ou como
1289 @code{ncexpt (@var{a}, @var{b})} no caso de @code{@var{a}^^@var{b}}).
1291 @c THIS SEEMS LIKE A BUG TO ME. expt, ncexpt SHOULD BE RECOGNIZED SINCE MAXIMA
1292 @c ITSELF PRINTS THEM SOMETIMES. THESE SHOULD JUST SIMPLIFY TO ^ AND ^^,
1294 Os s@'{i}mbolos especiais @code{expt} e @code{ncexpt} n@~{a}o s@~{a}o reconhecidos na entrada de dados.
1297 @c -----------------------------------------------------------------------------
1298 @anchor{exptdispflag}
1299 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} exptdispflag
1300 Valor padr@~{a}o: @code{true}
1302 Quando @code{exptdispflag} for @code{true}, Maxima mostra express@~{o}es
1303 com expoentes negatovos usando quocientes. Veja tamb@'{e}m @mrefdot{%edispflag}
1308 (%i1) exptdispflag:true;
1315 (%i3) exptdispflag:false;
1323 @category{Express@~{o}es} @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1327 @c -----------------------------------------------------------------------------
1329 @deffn {Fun@,{c}@~{a}o} grind (@var{expr})
1331 A fun@,{c}@~{a}o @code{grind} mostra @var{expr} no console de forma adequada a ser usada
1332 em uma entrada do Maxima. A fun@,{c}@~{a}o @code{grind} sempre retorna @code{done}.
1334 Quando @var{expr} for o nome de uma fun@,{c}@~{a}o ou de uma macro, @code{grind} mostra a
1335 fun@,{c}@~{a}o ou defini@,{c}@~{a}o de macro ao inv@'{e}s de mostrar apenas o nome.
1337 Veja tamb@'{e}m @mrefcomma{string}
1338 que retorna uma sequ@^{e}ncia de caracteres ao inv@'{e}s de mostrar sua
1339 sa@'{i}da. A fun@,{c}@~{a}o @code{grind} tenta mostrar a express@~{a}o de uma maneira que a torna
1340 levemente mais f@'{a}cil de ler que a sa@'{i}da de @code{string}.
1342 A fun@,{c}@~{a}o @code{grind} avalia seus argumentos.
1349 @c [aa, 1729, aa + 1729];
1351 @c matrix ([aa, 17], [29, bb]);
1353 @c set (aa, 17, 29, bb);
1355 @c exp (aa / (bb + 17)^29);
1357 @c expr: expand ((aa + bb)^10);
1360 @c cholesky (A):= block ([n : length (A), L : copymatrix (A),
1361 @c p : makelist (0, i, 1, length (A))],
1362 @c for i thru n do for j : i thru n do
1363 @c (x : L[i, j], x : x - sum (L[j, k] * L[i, k], k, 1, i - 1),
1364 @c if i = j then @c p[i] : 1 / sqrt(x) else L[j, i] : x * p[i]),
1365 @c for i thru n do L[i, i] : 1 / p[i],
1366 @c for i thru n do for j : i + 1 thru n do L[i, j] : 0, L)$
1367 @c grind (cholesky);
1368 @c string (fundef (cholesky));
1376 (%i3) [aa, 1729, aa + 1729];
1377 (%o3) [aa, 1729, aa + 1729]
1381 (%i5) matrix ([aa, 17], [29, bb]);
1386 matrix([aa,17],[29,bb])$
1388 (%i7) set (aa, 17, 29, bb);
1389 (%o7) @{17, 29, aa, bb@}
1393 (%i9) exp (aa / (bb + 17)^29);
1402 (%i11) expr: expand ((aa + bb)^10);
1404 (%o11) bb + 10 aa bb + 45 aa bb + 120 aa bb + 210 aa bb
1406 + 252 aa bb + 210 aa bb + 120 aa bb + 45 aa bb
1409 (%i12) grind (expr);
1411 bb^10+10*aa*bb^9+45*aa^2*bb^8+120*aa^3*bb^7+210*aa^4*bb^6
1412 +252*aa^5*bb^5+210*aa^6*bb^4+120*aa^7*bb^3+45*aa^8*bb^2
1416 (%i13) string (expr);
1417 (%o13) bb^10+10*aa*bb^9+45*aa^2*bb^8+120*aa^3*bb^7+210*aa^4*bb^6\
1418 +252*aa^5*bb^5+210*aa^6*bb^4+120*aa^7*bb^3+45*aa^8*bb^2+10*aa^9*\
1420 (%i14) cholesky (A):= block ([n : length (A), L : copymatrix (A),
1421 p : makelist (0, i, 1, length (A))], for i thru n do
1423 (x : L[i, j], x : x - sum (L[j, k] * L[i, k], k, 1, i - 1),
1424 if i = j then p[i] : 1 / sqrt(x) else L[j, i] : x * p[i]),
1425 for i thru n do L[i, i] : 1 / p[i],
1426 for i thru n do for j : i + 1 thru n do L[i, j] : 0, L)$
1427 (%i15) grind (cholesky);
1429 [n:length(A),L:copymatrix(A),
1430 p:makelist(0,i,1,length(A))],
1432 (for j from i thru n do
1433 (x:L[i,j],x:x-sum(L[j,k]*L[i,k],k,1,i-1),
1434 if i = j then p[i]:1/sqrt(x)
1435 else L[j,i]:x*p[i])),
1436 for i thru n do L[i,i]:1/p[i],
1437 for i thru n do (for j from i+1 thru n do L[i,j]:0),L)$
1439 (%i16) string (fundef (cholesky));
1440 (%o16) cholesky(A):=block([n:length(A),L:copymatrix(A),p:makelis\
1441 t(0,i,1,length(A))],for i thru n do (for j from i thru n do (x:L\
1442 [i,j],x:x-sum(L[j,k]*L[i,k],k,1,i-1),if i = j then p[i]:1/sqrt(x\
1443 ) else L[j,i]:x*p[i])),for i thru n do L[i,i]:1/p[i],for i thru \
1444 n do (for j from i+1 thru n do L[i,j]:0),L)
1448 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o}
1452 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} grind
1454 Quando a variável @code{grind} for @code{true}, a saÃda de @code{string} e de
1455 @mref{stringout} possuem o mesmo formato de @code{grind}; de outra forma nenhuma
1456 tentativa é feita para formatar especialmente a saÃda das funções @code{string} e @code{stringout}. O valor
1457 padrão da variável @code{grind} é @code{false}.
1459 A variável @code{grind} pode também ser especificada como um argumento da função @mrefdot{playback} Quando
1460 @code{grind} estiver presente, A função @code{playback} exibe expressões de entrada no mesmo
1461 formato da função @code{grind}. De outra forma, nenhuma tentativa é feita para formatar
1462 especialmente expressões de entrada.
1465 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1469 @c -----------------------------------------------------------------------------
1471 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} ibase
1472 Valor padr@~{a}o: @code{10}
1474 A vari@'{a}vel de op@,{c}@~{a}o @code{ibase} define a base do sistema de numera@,{c}@~{a}o para os inteiros lidos pelo Maxima.
1476 @`{A} vari@'{a}vel de op@,{c}@~{a}o @code{ibase} pode ser atribu@'{i}do qualquer inteiro entre 2 e 36 (decimal), inclusive.
1477 Quando @code{ibase} for maior que 10,
1478 os numerais compreendem os algarismos de 0 a 9
1479 bem como as letras do alfabeto A, B, C, @dots{},
1480 da forma que @'{e} preciso para completar @code{ibase} d@'{i}gitos completamente.
1481 Letras s@~{a}o interpretadas como d@'{i}gitos somente se o primeiro d@'{i}gito for um dos algarismos de 0 a 9.
1482 Letras em caixa alta ou baixa s@~{a}o tratadas igualmente.
1483 Os numerais na base 36, a maior base aceit@'{a}vel,
1484 compreendem os algarismos de 0 a 9 e de A a Z.
1486 Qualquer que seja o valor de @code{ibase},
1487 quando um inteiro @'{e} terminado por um ponto decimal,
1488 @'{e} interpretado como sendo de base 10.
1490 Veja tamb@'{e}m @mrefdot{obase}
1494 @code{ibase} less than 10.
1499 @c 1111111111111111;
1505 (%i3) 1111111111111111;
1509 Vari@'{a}vel de op@,{c}@~{a}o @code{ibase} maior que 10.
1510 Letras s@~{a}o interpretadas como d@'{i}gitos somente se o primeiro d´igito for um algarismo de 0 a 9.
1529 (%i5) symbolp (abcd);
1533 (%i7) symbolp (0abcd);
1537 Quando um inteiro for terminado por um ponto decimal,
1538 @'{e} interpretado como sendo de base 10.
1557 @category{Intera@,{c}@~{a}o com o console}
1561 @c -----------------------------------------------------------------------------
1563 @deffn {Fun@,{c}@~{a}o} ldisp (@var{expr_1}, @dots{}, @var{expr_n})
1565 Mostra as express@~{o}es @var{expr_1}, @dots{}, @var{expr_n} no console da forma que
1566 elas foram mostradas na sa@'{i}da. A fun@,{c}@~{a}o @code{ldisp} atribui um r@'{o}tulo de express@~{a}o intermedi@'{a}ria a cada
1567 argumento e retorna a lista de r@'{o}tulos.
1569 Veja tamb@'{e}m @mrefcomma{disp} @mrefcomma{display}
1570 e @mrefdot{ldisplay}
1578 (%i2) f: expand (e);
1580 (%o2) b + 3 a b + 3 a b + a
1586 (%t4) b + 3 a b + 3 a b + a
1594 (%o5) b + 3 a b + 3 a b + a
1598 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o}
1602 @c -----------------------------------------------------------------------------
1604 @deffn {Fun@,{c}@~{a}o} ldisplay (@var{expr_1}, @dots{}, @var{expr_n})
1606 Mostra express@~{o}es @var{expr_1}, @dots{}, @var{expr_n} no console da forma que
1607 elas foram mostradas na sa@'{i}da. Cada express@~{a}o @'{e} mostrada como uma equa@,{c}@~{a}o da forma
1608 @code{primeiromembro = segundomembro} na qual @code{primeiromembro} @'{e} um dos argumentos de @code{ldisplay}
1609 e @code{segundomembro} @'{e} seu valor. Tipicamente cada argumento @'{e} uma vari@'{a}vel.
1610 A fun@,{c}@~{a}o @mref{ldisp}
1611 atribui um r@'{o}tulo de express@~{a}o intermedi@'{a}ria a cada equa@,{c}@~{a}o e
1612 retorna a lista de r@'{o}tulos.
1614 Veja tamb@'{e}m @mrefcomma{display} @mrefcomma{disp}
1623 (%i2) f: expand (e);
1625 (%o2) b + 3 a b + 3 a b + a
1626 (%i3) ldisplay (e, f);
1631 (%t4) f = b + 3 a b + 3 a b + a
1639 (%o5) f = b + 3 a b + 3 a b + a
1643 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o}
1647 @c -----------------------------------------------------------------------------
1649 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} leftjust
1650 Valor padr@~{a}o: @code{false}
1652 Quando @code{leftjust} for @code{true}, equa@,{c}@~{o}es no console 2D s@~{a}o desenhadas alinhadas
1653 @`{a} esquerda ao inv@'{e}s de centralizadas.
1655 Veja tamb@'{e}m @mref{display2d}
1656 para alternar entre o console de exibi@,{c}@~{a}o 1D e o console de exibi@,{c}@~{a}o 2D.
1661 (%i1) expand((x+1)^3);
1663 (%o1) x + 3 x + 3 x + 1
1664 (%i2) leftjust:true$
1665 (%i3) expand((x+1)^3);
1667 (%o3) x + 3 x + 3 x + 1
1671 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1675 @c -----------------------------------------------------------------------------
1677 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} linel
1678 Valor padr@~{a}o: @code{79}
1680 A vari@'{a}vel de op@,{c}@~{a}o @code{linel} @'{e} a largura assumida (em caracteres) do console de exibi@,{c}@~{a}o com
1681 a finalidade de mstrar express@~{o}es. @`{A} vari@'{a}vel de op@,{c}@~{a}o @code{linel} pode ser atribu@'{i}do qualquer valor pelo
1682 usu@'{a}rio, embora valores muito pequenos ou muito grandes sejam impratic@'{a}veis. Texto
1683 mostradaos pelas fun@,{c}@~{o}es embutidas do Maxima, tais como mensagens de erro e a sa@'{i}da de
1684 @mrefcomma{describe}
1685 n@~{a}o s@~{a}o afetadas por @code{linel}.
1688 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1692 @c -----------------------------------------------------------------------------
1695 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} lispdisp
1696 Valor padr@~{a}o: @code{false}
1698 Quando @code{lispdisp} for @code{true}, s@'{i}mbolos Lisp s@~{a}o mostrados com uma interroga@,{c}@~{a}o
1699 @code{?} no in@'{i}cio. De outra forma, s@'{i}mbolos Lisp s@~{a}o mostrados sem nada no
1700 in@'{i}cio. Tem o mesmo efeito para sa@'{i}das tanto em uma dimens@~{a}o quanto em duas dimens@~{o}es.
1711 (%i1) lispdisp: false$
1714 (%i3) lispdisp: true$
1720 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1724 @c NEEDS CLARIFICATION, EXAMPLES
1726 @c -----------------------------------------------------------------------------
1727 @anchor{negsumdispflag}
1728 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} negsumdispflag
1729 Valor padr@~{a}o: @code{true}
1731 Quando @code{negsumdispflag} for @code{true}, @code{x - y} @'{e} exibido como @code{x - y}
1732 masmo ao inv@'{e}s de ser exibido como @code{- y + x}. Ajustando @code{negsumdispflag} para @code{false} faz com que a
1733 verifica@,{c}@~{a}o especial na exibi@,{c}@~{a}o de diferen@,{c}as entre duas express@~{o}es n@~{a}o seja feita. Uma
1734 aplica@,{c}@~{a}o @'{e} que dessa forma @code{a + %i*b} e @code{a - %i*b} podem ambas serem
1735 mostradas da mesma maneira.
1738 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1742 @c -----------------------------------------------------------------------------
1744 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} obase
1745 Valor padr@~{a}o: @code{10}
1747 @code{obase} is the base for integers displayed by Maxima.
1749 @code{obase} may be assigned any integer between 2 and 36 (decimal), inclusive.
1750 When @code{obase} is greater than 10,
1751 the numerals comprise the decimal numerals 0 through 9
1752 plus capital letters of the alphabet A, B, C, @dots{}, as needed.
1753 A leading 0 digit is displayed if the leading digit is otherwise a letter.
1754 The numerals for base 36, the largest acceptable base,
1755 comprise 0 through 9, and A through Z.
1757 Veja tamb@'{e}m @mrefdot{ibase}
1791 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o} @category{Intera@,{c}@~{a}o com o console}
1795 @c -----------------------------------------------------------------------------
1797 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} pfeformat
1798 Valor padr@~{a}o: @code{false}
1800 Quando @code{pfeformat} for @code{true}, uma raz@~{a}o entre inteiros @'{e} mostrada com a
1801 barra normal representando o tra@,{c}o de fra@,{c}@~{a}o, e um denominador inteiro @code{n} @'{e}
1802 mostrado como um termo multipllicativo @code{1/n} no in@'{i}cio.
1807 (%i1) pfeformat: false$
1816 (%i4) pfeformat: true$
1824 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1828 @c -----------------------------------------------------------------------------
1830 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} powerdisp
1831 Valor padr@~{a}o: @code{false}
1833 Quando @code{powerdisp} for @code{true},
1834 uma soma @'{e} mostrada com seus termos em ordem crescente de expoente.
1835 Dessa forma um polin@^{o}mio @'{e} mostrado como uma s@'{e}rie de pot@^{e}ncia truncada,
1836 com os termos constantes na frente e o maior expoente por @'{u}ltimo.
1838 Por padr@~{a}o, termos de uma soma s@~{a}o mostrados em ordem decrescente de expoente.
1843 (%i1) powerdisp:true;
1848 (%i3) powerdisp:false;
1856 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1860 @c -----------------------------------------------------------------------------
1862 @deffn {Fun@,{c}@~{a}o} print (@var{expr_1}, @dots{}, @var{expr_n})
1864 Avalia e mostra @var{expr_1}, @dots{}, @var{expr_n} uma ap@'{o}s a outra,
1865 da esquerda para a direita, iniciando a partir do canto esquerdo do console de exibi@,{c}@~{a}o.
1867 O valor retornado por @code{print} @'{e} o valor de seu @'{u}ltimo argumento.
1868 A fun@,{c}@~{a}o @code{print} n@~{a}o gera r@'{o}tulos de express@~{o}es intermedi@'{a}rias.
1870 Veja tamb@'{e}m @mrefcomma{display} @mrefcomma{disp} @mrefcomma{ldisplay}
1872 Essas fun@,{c}@~{o}es mostram uma express@~{a}o por linha, enquanto
1873 @code{print} tenta mostrar duas ou mais express@~{o}es por linha.
1875 Para mostrar o conte@'{u}do de um arquivo, veja @mrefdot{printfile}
1880 (%i1) r: print ("(a+b)^3 is", expand ((a+b)^3), "log (a^10/b) is",
1881 radcan (log (a^10/b)))$
1883 (a+b)^3 is b + 3 a b + 3 a b + a log (a^10/b) is
1887 (%o2) 10 log(a) - log(b)
1888 (%i3) disp ("(a+b)^3 is", expand ((a+b)^3), "log (a^10/b) is",
1889 radcan (log (a^10/b)))$
1893 b + 3 a b + 3 a b + a
1901 @category{Fun@,{c}@~{o}es de exibi@,{c}@~{a}o}
1905 @c -----------------------------------------------------------------------------
1906 @anchor{sqrtdispflag}
1907 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} sqrtdispflag
1908 Valor padr@~{a}o: @code{true}
1910 Quando @code{sqrtdispflag} for @code{false}, faz com que @code{sqrt} seja mostrado com
1912 @c AND OTHERWISE ... ??
1915 @category{Fun@,{c}@~{o}es matem@'{a}ticas} @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1919 @c -----------------------------------------------------------------------------
1921 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} stardisp
1922 Valor padr@~{a}o: @code{false}
1924 Quando @code{stardisp} for @code{true}, multiplica@,{c}@~{a}o @'{e}
1925 mostrada com um asterisco @code{*} entre os fatores.
1928 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}
1932 @c -----------------------------------------------------------------------------
1934 @defvr {Vari@'{a}vel de op@,{c}@~{a}o} ttyoff
1935 Valor padr@~{a}o: @code{false}
1937 Quando @code{ttyoff} for @code{true}, express@~{o}es de sa@'{i}da n@~{a}o s@~{a}o mostradas.
1938 Mesmo assim elas ainda ser@~{a}o calculadas e ainda receber@~{a}o r@'{o}tulos de sa@'{i}da. Veja @mrefdot{labels}
1940 Texto mostrados pela fun@,{c}@~{o}es embutidas no Maxima, tais como mensagens de erro e a sa@'{i}da
1941 de @mrefcomma{describe}
1942 n@~{a}o s@~{a}o afetadas por @code{ttyoff}.
1945 @category{Sinalizadores e vari@'{a}veis de exibi@,{c}@~{a}o}