Add note that the lapack package needs to loaded to get the functions.
[maxima.git] / doc / info / pt_BR / Miscellaneous.texi
blobdd227282f4d1c7133b7adae5dc5e8719023e0127
1 @c Language: Brazilian Portuguese, Encoding: iso-8859-1
2 @c /Miscellaneous.texi/1.23/Fri Jun  8 01:15:42 2007/-ko/
3 @menu
4 * Introdução a Opções Diversas::  
5 * Compartilhado::                       
6 * Funções e Variáveis Definidas para Opções Diversas::  
7 @end menu
9 @node Introdução a Opções Diversas, Compartilhado, Opções Diversas, Opções Diversas
10 @section Introdução a Opções Diversas
12 Nessa seção várias opções são tratadas pelo fato de possuirem um efeito global
13 sobre a operação do Maxima.   Também várias listas tais como a lista de todas as
14 funções definidas pelo usuário, são discutidas.
16 @node Compartilhado, Funções e Variáveis Definidas para Opções Diversas, Introdução a Opções Diversas, Opções Diversas
17 @section Compartilhado
18 O diretório "share" do Maxima contém programas e outros arquivos 
19 de interesse para os usuários do Maxima, mas que não são parte da implementação do núcleo do Maxima.
20 Esses programas são tipicamente chamados via @code{load} ou @code{setup_autoload}.
22 @code{:lisp *maxima-sharedir*} mostra a localização do diretório compartilhado
23 dentro do sistema de arquivos do usuário.
25 @c FIXME FIXME FIXME -- WE REALLY NEED AN UP-TO-DATE LIST OF SHARE PACKAGES !!
26 @code{printfile ("share.usg")} imprime uma lista de pacotes desatualizados dos pacotes compartilhados.
27 Usuários podem encontrar isso de forma mais detalhada navegando no diretório compartilhado usando um navegador de sistema de arquivo.
30 @node Funções e Variáveis Definidas para Opções Diversas,  , Compartilhado, Opções Diversas
31 @section Funções e Variáveis Definidas para Opções Diversas
33 @defvr {Variável de sistema} aliases
34 Valor padrão: @code{[]}
36 @code{aliases} é a lista de átomos que possuem um alias definido pelo usuário (escolhido através
37 das funções @code{alias}, @code{ordergreat}, @code{orderless} ou através da declaração do átomo como sendo um
38 @code{noun} (substantivo) com @code{declare}).
39 @end defvr
42 @defvr {Declaração} alphabetic
43 @code{alphabetic} é uma declaração reconhecida por @code{declare}.
44 A expressão @code{declare(@var{s}, alphabetic)} diz ao Maxima para reconhecer
45 como alfabético todos os caracteres em @var{s}, que deve ser uma seq@"{u}ência de caracteres.
47 Veja também @ref{Identificadores}.
49 Exemplo:
51 @c ===beg===
52 @c xx\~yy\`\@ : 1729;
53 @c declare ("~`@", alphabetic);
54 @c xx~yy`@ + @yy`xx + `xx@@yy~;
55 @c listofvars (%);
56 @c ===end===
57 @example
58 (%i1) xx\~yy\`\@@ : 1729;
59 (%o1)                         1729
60 (%i2) declare ("~`@@", alphabetic);
61 (%o2)                         done
62 (%i3) xx~yy`@@ + @@yy`xx + `xx@@@@yy~;
63 (%o3)               `xx@@@@yy~ + @@yy`xx + 1729
64 (%i4) listofvars (%);
65 (%o4)                  [@@yy`xx, `xx@@@@yy~]
66 @end example
69 @end defvr
71 @c REPHRASE
72 @c DOES apropos RETURN THE SAME THING AS THE LIST SHOWN BY describe ??
73 @deffn {Função} apropos (@var{string})
74 Procura por nomes Maxima que possuem @var{string} aparecendo em qualquer lugar dentro
75 de seu nome.  Dessa forma, @code{apropos (exp)} retorna uma lista de todos os sinalizadores
76 e funções que possuem @code{exp} como parte de seus nomes, tais como @code{expand},
77 @code{exp}, e @code{exponentialize}.  Dessa forma você pode somente lembra parte do nome
78 de alguma coisa você pode usar esse comando para achar o restante do nome.
79 Similarmente, você pode dizer @code{apropos (tr_)} para achar uma lista de muitos dos
80 comutadores relatando para o tradutor, muitos dos quais começam com @code{tr_}.
82 @end deffn
84 @deffn {Função} args (@var{expr})
85 Retorna a lista de argumentos de @code{expr},
86 que pode ser de qualquer tipo de expressão outra como um átomo.
87 Somente os argumentos do operador de nível mais alto são extraídos;
88 subexpressões de @code{expr} aparecem como elementos ou subexpressões de elementos
89 da lista de argumentos.
91 A ordem dos ítens na lista pode depender do sinalizador global @code{inflag}.
93 @code{args (@var{expr})} é equivalente a @code{substpart ("[", @var{expr}, 0)}.
94 Veja também @code{substpart} e @code{op}.
96 @c NEEDS EXAMPLES
97 @end deffn
99 @defvr {Variável de opção} genindex
100 Valor padrão: @code{i}
102 @code{genindex} é o prefixo usado para gerar a
103 próxima variável do somatório quando necessário.
105 @end defvr
107 @defvr {Variável de opção} gensumnum
108 Valor padrão: 0
110 @code{gensumnum} é o sufixo numérico usado para gerar variável seguinte
111 do somatório.  Se isso for escolhido para @code{false} então o índice  consistirá somente
112 de @code{genindex} com um sufixo numérico.
114 @end defvr
116 @c NEEDS EXPANSION AND EXAMPLES
117 @defvr {Constante} inf
118 Infinito positivo real.
120 @end defvr
122 @c NEEDS EXPANSION AND EXAMPLES
123 @defvr {Constante} infinity
124 Infinito complexo, uma magnitude infinita de ângulo de fase
125 arbitrária.  Veja também @code{inf} e @code{minf}.
127 @end defvr
129 @defvr {Variável de sistema} infolists
130 Valor padrão: @code{[]}
132 @code{infolists} é uma lista dos nomes de todas as listas de
133 informação no Maxima. São elas:
135 @table @code
136 @item labels
137 Todos associam @code{%i}, @code{%o}, e rótulos @code{%t}.
138 @item values
139 Todos associam átomos que são variáveis de usuário, não opções do
140 Maxima ou comutadores, criados através de @code{:} ou @code{::} ou associando funcionalmente.
141 @c WHAT IS INTENDED BY "FUNCTIONAL BINDING" HERE ??
143 @item functions
144 Todas as funções definidas pelo usuário, criadas através de @code{:=} ou @code{define}.
146 @item arrays
147 Todos os arrays declarados e não declarados, criados através de @code{:}, @code{::}, ou @code{:=}.
148 @c AREN'T THERE OTHER MEANS OF CREATING ARRAYS ??
149 @item macros
150 Todas as macros definidas pelo usuário.
152 @item myoptions
153 Todas as opções alguma vez alteradas pelo usuário (mesmo que tenham ou não elas
154 tenham mais tarde retornadas para seus valores padrão).
156 @item rules
157 Todos os modelos definidos pelo usuário que coincidirem e regras de simplificação, criadas
158 através de @code{tellsimp}, @code{tellsimpafter}, @code{defmatch}, ou @code{defrule}.
160 @item aliases
161 Todos os átomos que possuem um alias definido pelo usuário, criado através das funções
162 @code{alias}, @code{ordergreat}, @code{orderless} ou declarando os átomos como um @code{noun}
163 com @code{declare}.
165 @item dependencies
166 Todos os átomos que possuem dependências funcionais, criadas através das
167 funções @code{depends} ou @code{gradef}.
169 @item gradefs
170 Todas as funções que possuem derivadas definidas pelo usuário, cridas através da
171 função @code{gradef}.
173 @c UMM, WE REALLY NEED TO BE SPECIFIC -- WHAT DOES "ETC" CONTAIN HERE ??
174 @item props
175 Todos os átomos que possuem quaisquer propriedades outras que não essas mencionadas
176 acima, tais como propriedades estabelecidas por @code{atvalue} , @code{matchdeclare}, etc., também propriedades
177 estabelecidas na função @code{declare}.
179 @item let_rule_packages
180 Todos os pacote de régras em uso definidos pelo usuário
181 mais o pacote especial @code{default_let_rule_package}.
182 (@code{default_let_rule_package} é o nome do pacote de régras usado quando
183 um não está explicitamente escolhido pelo usuário.)
185 @end table
187 @end defvr
189 @deffn {Função} integerp (@var{expr})
190 Retorna @code{true} se @var{expr} é um inteiro numérico literal, de outra forma retorna @code{false}.
192 @code{integerp} retorna @code{false} se seu argumento for um símbolo,
193 mesmo se o argumento for declarado inteiro.
195 Exemplos:
197 @example
198 (%i1) integerp (0);
199 (%o1)                         true
200 (%i2) integerp (1);
201 (%o2)                         true
202 (%i3) integerp (-17);
203 (%o3)                         true
204 (%i4) integerp (0.0);
205 (%o4)                         false
206 (%i5) integerp (1.0);
207 (%o5)                         false
208 (%i6) integerp (%pi);
209 (%o6)                         false
210 (%i7) integerp (n);
211 (%o7)                         false
212 (%i8) declare (n, integer);
213 (%o8)                         done
214 (%i9) integerp (n);
215 (%o9)                         false
216 @end example
218 @end deffn
220 @defvr {Variável de opção} m1pbranch
221 Valor padrão: @code{false}
223 @code{m1pbranch} é principal descendente de @code{-1} a um expoente.
224 Quantidades tais como @code{(-1)^(1/3)} (isto é, um expoente racional "ímpar") e 
225 @code{(-1)^(1/4)} (isto é, um expoente racional "par") são manuseados como segue:
227 @c REDRAW THIS AS A TABLE
228 @example
229               domain:real
230                             
231 (-1)^(1/3):      -1         
232 (-1)^(1/4):   (-1)^(1/4)   
234              domain:complex              
235 m1pbranch:false          m1pbranch:true
236 (-1)^(1/3)               1/2+%i*sqrt(3)/2
237 (-1)^(1/4)              sqrt(2)/2+%i*sqrt(2)/2
238 @end example
240 @end defvr
242 @deffn {Função} numberp (@var{expr})
243 Retorna @code{true} se @var{expr} for um inteiro literal, número racional, 
244 número em ponto flutuante, ou um grande número em ponto flutuante, de outra forma retorna @code{false}.
246 @code{numberp} retorna @code{false} se seu argumento for um símbolo,
247 mesmo se o argumento for um número simbólico tal como @code{%pi} ou @code{%i},
248 ou declarado ser 
249 @code{even}, @code{odd}, @code{integer}, @code{rational}, @code{irrational}, 
250 @code{real}, @code{imaginary}, or @code{complex}. Nota de Tradução: par, ímpar, inteiro, racional, irracional, real, imaginário, ou complexo.
252 Exemplos:
254 @example
255 (%i1) numberp (42);
256 (%o1)                         true
257 (%i2) numberp (-13/19);
258 (%o2)                         true
259 (%i3) numberp (3.14159);
260 (%o3)                         true
261 (%i4) numberp (-1729b-4);
262 (%o4)                         true
263 (%i5) map (numberp, [%e, %pi, %i, %phi, inf, minf]);
264 (%o5)      [false, false, false, false, false, false]
265 (%i6) declare (a, even, b, odd, c, integer, d, rational,
266      e, irrational, f, real, g, imaginary, h, complex);
267 (%o6)                         done
268 (%i7) map (numberp, [a, b, c, d, e, f, g, h]);
269 (%o7) [false, false, false, false, false, false, false, false]
270 @end example
272 @end deffn
274 @c CROSS REF TO WHICH FUNCTION OR FUNCTIONS ESTABLISH PROPERTIES !! (VERY IMPORTANT)
275 @c NEEDS EXPANSION, CLARIFICATION, AND EXAMPLES
276 @deffn {Função} properties (@var{a})
277 Retorna uma lista de nomes de todas as
278 propriedades associadas com o átomo @var{a}.
280 @end deffn
282 @c CROSS REF TO WHICH FUNCTION OR FUNCTIONS ESTABLISH PROPERTIES !! (VERY IMPORTANT)
283 @c NEEDS EXPANSION, CLARIFICATION, AND EXAMPLES
284 @c WHAT IS HIDDEN IN THE "etc" HERE ??
285 @defvr {Símbolo especial} props
286 @code{props} são átomos que possuem qualquer propriedade outra como essas explicitamente
287 mencionadas em @code{infolists}, tais como especificado através de @code{atvalue}, @code{matchdeclare}, etc., 
288 e também propriedades especificadas na função @code{declare}.
290 @end defvr
292 @c CROSS REF TO WHICH FUNCTION OR FUNCTIONS ESTABLISH PROPERTIES !! (VERY IMPORTANT)
293 @c NEEDS EXPANSION, CLARIFICATION, AND EXAMPLES
294 @deffn {Função} propvars (@var{prop})
295 Retorna uma lista desses átomos sobre a lista @code{props} que
296 possui a propriedade indicada através de @var{prop}.  Dessa forma @code{propvars (atvalue)}
297 retorna uma lista de átomos que possuem atvalues.
299 @end deffn
301 @c CROSS REF TO OTHER FUNCTIONS WHICH PUT/GET PROPERTIES !! (VERY IMPORTANT)
302 @c NEEDS EXPANSION, CLARIFICATION, AND EXAMPLES
303 @c ARE PROPERTIES ESTABLISHED BY put THE SAME AS PROPERTIES ESTABLISHED BY declare OR OTHER FUNCTIONS ??
304 @c IS put (foo, true, integer) EQUIVALENT TO declare (foo, integer) FOR EXAMPLE ??
305 @deffn {Função} put (@var{átomo}, @var{valor}, @var{indicador})
306 Atribui @var{valor} para a propriedade (especificada através de @var{indicador}) do @var{átomo}.
307 @var{indicador} pode ser o nome de qualquer propriedade, não apenas uma propriedade definida pelo sistema.
309 @code{put} avalia seus argumentos. 
310 @code{put} retorna @var{valor}.
312 Exemplos:
314 @example
315 (%i1) put (foo, (a+b)^5, expr);
316                                    5
317 (%o1)                       (b + a)
318 (%i2) put (foo, "Hello", str);
319 (%o2)                         Hello
320 (%i3) properties (foo);
321 (%o3)            [[user properties, str, expr]]
322 (%i4) get (foo, expr);
323                                    5
324 (%o4)                       (b + a)
325 (%i5) get (foo, str);
326 (%o5)                         Hello
327 @end example
329 @end deffn
331 @deffn {Função} qput (@var{átomo}, @var{valor}, @var{indicador})
332 Atribui @var{valor} para a propriedade (especificada através de @var{indicador}) do @var{átomo}.
333 Isso é o mesmo que @code{put},
334 exceto que os argumentos nã são avaliados.
336 Exemplo:
338 @example
339 (%i1) foo: aa$ 
340 (%i2) bar: bb$
341 (%i3) baz: cc$
342 (%i4) put (foo, bar, baz);
343 (%o4)                          bb
344 (%i5) properties (aa);
345 (%o5)                [[user properties, cc]]
346 (%i6) get (aa, cc);
347 (%o6)                          bb
348 (%i7) qput (foo, bar, baz);
349 (%o7)                          bar
350 (%i8) properties (foo);
351 (%o8)            [value, [user properties, baz]]
352 (%i9) get ('foo, 'baz);
353 (%o9)                          bar
354 @end example
356 @end deffn
358 @c CROSS REF TO OTHER FUNCTIONS WHICH PUT/GET PROPERTIES !! (VERY IMPORTANT)
359 @c NEEDS EXPANSION, CLARIFICATION, AND EXAMPLES
360 @c HOW DOES THIS INTERACT WITH declare OR OTHER PROPERTY-ESTABLISHING FUNCTIONS ??
361 @c HOW IS THIS DIFFERENT FROM remove ??
362 @deffn {Função} rem (@var{átomo}, @var{indicador})
363 Remove a propriedade indicada através de @var{indicador} do @var{átomo}.
365 @end deffn
367 @c CROSS REF TO OTHER FUNCTIONS WHICH PUT/GET PROPERTIES !! (VERY IMPORTANT)
368 @c NEEDS EXPANSION, CLARIFICATION, AND EXAMPLES
369 @c HOW DOES THIS INTERACT WITH declare OR OTHER PROPERTY-ESTABLISHING FUNCTIONS ??
370 @c HOW IS THIS DIFFERENT FROM rem ??
371 @deffn {Função} remove (@var{a_1}, @var{p_1}, ..., @var{a_n}, @var{p_n})
372 @deffnx {Função} remove ([@var{a_1}, ..., @var{a_m}], [@var{p_1}, ..., @var{p_n}], ...)
373 @deffnx {Função} remove ("@var{a}", operator)
374 @deffnx {Função} remove (@var{a}, transfun)
375 @deffnx {Função} remove (all, @var{p})
376 Remove propriedades associadas a átomos.
378 @code{remove (@var{a_1}, @var{p_1}, ..., @var{a_n}, @var{p_n})}
379 remove a propriedade @code{p_k} do átomo @code{a_k}.
381 @code{remove ([@var{a_1}, ..., @var{a_m}], [@var{p_1}, ..., @var{p_n}], ...)}
382 remove as propriedades @code{@var{p_1}, ..., @var{p_n}}
383 dos átomos @var{a_1}, ..., @var{a_m}.
384 Pode existir mais que um par de listas.
386 @c VERIFY THAT THIS WORKS AS ADVERTISED
387 @code{remove (all, @var{p})} remove a propriedade @var{p} de todos os átomos que a possuem.
389 @c SHOULD REFER TO A LIST OF ALL SYSTEM-DEFINED PROPERTIES HERE.
390 A propriedade removida pode ser definida pelo sistema tal como
391 @code{function}, @code{macro} ou @code{mode_declare}, ou propriedades definidas pelo usuário.
393 @c VERIFY THAT THIS WORKS AS ADVERTISED
394 @c IS transfun PECULIAR TO remove ?? IF SO, SHOW SPECIAL CASE AS @defunx
395 uma propriedade pode ser @code{transfun} para remover
396 a versão traduzida Lisp de uma função.
397 Após executar isso, a versão Maxima da função é executada
398 em lugar da versão traduzida.
400 @code{remove ("@var{a}", operator)} ou, equivalentemente, @code{remove ("@var{a}", op)}
401 remove de @var{a} as propriedades @code{operator} declaradas através de
402 @code{prefix}, @code{infix}, @code{nary}, @code{postfix}, @code{matchfix}, ou @code{nofix}.
403 Note que o nome do operador deve ser escrito como uma seq@"{u}ência de caracteres com apóstofo.
405 @code{remove} sempre retorna @code{done} se um átomo possui ou não uma propriedade especificada.
406 Esse comportamento é diferente das funções remove mais específicas
407 @code{remvalue}, @code{remarray}, @code{remfunction}, e @code{remrule}.
409 @c IN SERIOUS NEED OF EXAMPLES HERE
410 @end deffn
412 @c NEEDS EXAMPLES
413 @deffn {Função} remvalue (@var{nome_1}, ..., @var{nome_n})
414 @deffnx {Função} remvalue (all)
415 Remove os valores de Variáveis de usuário @var{nome_1}, ..., @var{nome_n}
416 (que podem ser subscritas) do sistema.
418 @code{remvalue (all)} remove os valores de todas as variáveis em @code{values},
419 a lista de todas as variáveis nomeadas através do usuário
420 (em oposição a essas que são automaticamente atribuídas através do Maxima).
422 Veja também @code{values}.
424 @end deffn
426 @c NEEDS EXAMPLES
427 @deffn {Função} rncombine (@var{expr})
428 Transforma @var{expr} combinando todos os termos de @var{expr} que possuem
429 denominadores idênticos ou denominadores que diferem de cada um dos outros apenas por
430 fatores numéricos somente.  Isso é ligeiramente diferente do comportamento de
431 de @code{combine}, que coleta termos que possuem denominadores idênticos.
433 Escolhendo @code{pfeformat: true} e usando @code{combine} retorna resultados similares
434 a esses que podem ser obtidos com @code{rncombine}, mas @code{rncombine} pega o
435 passo adicional de multiplicar cruzado fatores numérios do denominador.
436 Esses resultados em forma ideal, e a possibilidade de reconhecer alguns
437 cancelamentos.
439 Para usar essa função escreva primeiramente @code{load("rncomb")}.
440 @end deffn
442 @c NEEDS CLARIFICATION AND EXAMPLES
443 @deffn {Função} scalarp (@var{expr})
444 Retorna @code{true} se @var{expr} for um número, constante, ou variável
445 declarada @code{scalar} com @code{declare}, ou composta inteiramente de números, constantes, e tais
446 Variáveis, bmas não contendo matrizes ou listas.
448 @end deffn
450 @deffn {Função} setup_autoload (@var{nomearquivo}, @var{função_1}, ..., @var{função_n})
451 Especifica que
452 se qualquer entre @var{função_1}, ..., @var{função_n} for referenciado e não ainda definido,
453 @var{nomedeqrquivo} é chamado via @code{load}.
454 @var{nomearquivo} usualmente contém definições para as funções especificadas,
455 embora isso não seja obrigatório.
457 @code{setup_autoload} não trabalha para funções array.
459 @code{setup_autoload} não avalia seus argumentos.
461 Exemplo:
463 @c EXAMPLE GENERATED FROM FOLLOWING INPUT
464 @c legendre_p (1, %pi);
465 @c setup_autoload ("specfun.mac", legendre_p, ultraspherical);
466 @c ultraspherical (2, 1/2, %pi);
467 @c legendre_p (1, %pi);
468 @c legendre_q (1, %pi);
469 @example
470 (%i1) legendre_p (1, %pi);
471 (%o1)                  legendre_p(1, %pi)
472 (%i2) setup_autoload ("specfun.mac", legendre_p, ultraspherical);
473 (%o2)                         done
474 (%i3) ultraspherical (2, 1/2, %pi);
475 Warning - you are redefining the Macsyma função ultraspherical
476 Warning - you are redefining the Macsyma função legendre_p
477                             2
478                  3 (%pi - 1)
479 (%o3)            ------------ + 3 (%pi - 1) + 1
480                       2
481 (%i4) legendre_p (1, %pi);
482 (%o4)                          %pi
483 (%i5) legendre_q (1, %pi);
484                               %pi + 1
485                       %pi log(-------)
486                               1 - %pi
487 (%o5)                 ---------------- - 1
488                              2
489 @end example
491 @end deffn