@c /Constants.texi/1.15/Sat Nov 25 04:02:07 2006/-ko/
@menu
* Definições para Constantes::
@end menu

@node Definições para Constantes,  , Constantes, Constantes
@section Definições para Constantes

@defvr {Constante} %e
@ifinfo
@vrindex e
@vrindex Constante de Euler
@vrindex Base do logaritmo natural
@end ifinfo
@code{%e} representa a base do logaritmo natural, também conhecido como constante de Euler.
O valor numérico de @code{%e} é um número em ponto flutuante de precisão dupla 2.718281828459045d0.

@end defvr

@defvr {Constante} %i
@ifinfo
@vrindex i
@vrindex Unidade imaginária
@end ifinfo
@code{%i} representa a unidade imaginária, @math{sqrt(- 1)}.

@end defvr

@defvr {Constante} false
@code{false} representa a constante Booleana falso.
Maxima implementa @code{false} através do valor @code{NIL} no Lisp.

@end defvr

@defvr {Constante} inf
@ifinfo
@vrindex Infinito positivo real
@end ifinfo
@code{inf} representa o infinito positivo real.

@end defvr

@defvr {Constante}  infinity
@ifinfo
@vrindex Infinito Complexo
@end ifinfo
@code{infinity} representa o infinito complexo.

@end defvr

@defvr {Constante} minf
@ifinfo
@vrindex Menos infinito
@vrindex Infinito negativo
@end ifinfo
@code{minf} representa o menos infinito (i.e., negativo) real.

@end defvr

@defvr {Constante} %phi
@ifinfo
@vrindex phi
@vrindex Número áureo
@end ifinfo

@code{%phi} representa o então chamado @i{número áureo},
@math{(1 + sqrt(5))/2}.
O valor numérico de @code{%phi} é o número em ponto flutuante de de dupla precisão 1.618033988749895d0.

@code{fibtophi} expressa números de Fibonacci @code{fib(n)} em termos de @code{%phi}.

Por padrão, Maxima não conhece as propriedade algébricas de @code{%phi}.
Após avaliar @code{tellrat(%phi^2 - %phi - 1)} e @code{algebraic: true},
@code{ratsimp} pode simplificar algumas expressãoes contendo @code{%phi}.

Exemplos:

@code{fibtophi} expresses Fibonacci numbers @code{fib(n)} in terms of @code{%phi}.

@c ===beg===
@c fibtophi (fib (n));
@c fib (n-1) + fib (n) - fib (n+1);
@c fibtophi (%);
@c ratsimp (%);
@c ===end===
@example
(%i1) fibtophi (fib (n));
                           n             n
                       %phi  - (1 - %phi)
(%o1)                  -------------------
                           2 %phi - 1
(%i2) fib (n-1) + fib (n) - fib (n+1);
(%o2)          - fib(n + 1) + fib(n) + fib(n - 1)
(%i3) fibtophi (%);
            n + 1             n + 1       n             n
        %phi      - (1 - %phi)        %phi  - (1 - %phi)
(%o3) - --------------------------- + -------------------
                2 %phi - 1                2 %phi - 1
                                          n - 1             n - 1
                                      %phi      - (1 - %phi)
                                    + ---------------------------
                                              2 %phi - 1
(%i4) ratsimp (%);
(%o4)                           0
@end example

Por padrão, Maxima não conhece as propriedade algébricas de @code{%phi}.
Após avaliar @code{tellrat(%phi^2 - %phi - 1)} e @code{algebraic: true},
@code{ratsimp} pode simplificar algumas expressãoes contendo @code{%phi}.

@c ===beg===
@c e : expand ((%phi^2 - %phi - 1) * (A + 1));
@c ratsimp (e);
@c tellrat (%phi^2 - %phi - 1);
@c algebraic : true;
@c ratsimp (e);
@c ===end===
@example
(%i1) e : expand ((%phi^2 - %phi - 1) * (A + 1));
                 2                      2
(%o1)        %phi  A - %phi A - A + %phi  - %phi - 1
(%i2) ratsimp (e);
                  2                     2
(%o2)        (%phi  - %phi - 1) A + %phi  - %phi - 1
(%i3) tellrat (%phi^2 - %phi - 1);
                            2
(%o3)                  [%phi  - %phi - 1]
(%i4) algebraic : true;
(%o4)                         true
(%i5) ratsimp (e);
(%o5)                           0
@end example

@end defvr

@defvr {Constante} %pi
@ifinfo
@vrindex pi
@end ifinfo
@code{%pi} representa a razão do perímetro de um círculo para seu diâmetro.
O valor numérico de @code{%pi} é o n;umero em ponto flutuante de dupla precisão 3.141592653589793d0.

@end defvr

@defvr {Constante} true
@code{true} representa a constante Booleana verdadeiro.
Maxima implementa @code{true} através do valor @code{T} no Lisp.

@end defvr

