X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Finifcns.h;h=6f5f47223e3a5a9ea865ee58d789b2c5ef880f56;hp=f4af0cb87465cc6379ea41c89dc16c57125dc658;hb=8916b8b2f24b374dfda8a9dd37e6b8d6bf7602c4;hpb=487e5659efe401683eee0381b0d23f967ffffc3c diff --git a/ginac/inifcns.h b/ginac/inifcns.h index f4af0cb8..6f5f4722 100644 --- a/ginac/inifcns.h +++ b/ginac/inifcns.h @@ -26,6 +26,13 @@ #include #include +#ifndef NO_GINAC_NAMESPACE +namespace GiNaC { +#endif // ndef NO_GINAC_NAMESPACE + +/** Absolute value. */ +DECLARE_FUNCTION_1P(abs) + /** Sine. */ DECLARE_FUNCTION_1P(sin) @@ -77,9 +84,36 @@ DECLARE_FUNCTION_1P(Li2) /** Trilogarithm. */ DECLARE_FUNCTION_1P(Li3) -/** Gamma function. */ +// overloading at work: we cannot use the macros +/** Riemann's Zeta-function. */ +extern const unsigned function_index_zeta1; +inline function zeta(ex const & p1) { + return function(function_index_zeta1, p1); +} +/** Derivatives of Riemann's Zeta-function. */ +extern const unsigned function_index_zeta2; +inline function zeta(ex const & p1, ex const & p2) { + return function(function_index_zeta2, p1, p2); +} + +/** Gamma-function. */ DECLARE_FUNCTION_1P(gamma) +/** Beta-function. */ +DECLARE_FUNCTION_2P(beta) + +// overloading at work: we cannot use the macros +/** Psi-function (aka digamma-function). */ +extern const unsigned function_index_psi1; +inline function psi(ex const & p1) { + return function(function_index_psi1, p1); +} +/** Derivatives of Psi-function (aka polygamma-functions). */ +extern const unsigned function_index_psi2; +inline function psi(ex const & p1, ex const & p2) { + return function(function_index_psi2, p1, p2); +} + /** Factorial function. */ DECLARE_FUNCTION_1P(factorial) @@ -95,7 +129,11 @@ ex ncpower(ex const &basis, unsigned exponent); inline bool is_order_function(ex const & e) { - return is_ex_the_function(e, Order); + return is_ex_the_function(e, Order); } +#ifndef NO_GINAC_NAMESPACE +} // namespace GiNaC +#endif // ndef NO_GINAC_NAMESPACE + #endif // ndef __GINAC_INIFCNS_H__