#include "numeric.h"
#include "power.h"
#include "relational.h"
+#include "operators.h"
#include "symbol.h"
#include "symmetry.h"
#include "utils.h"
static ex beta_eval(const ex & x, const ex & y)
{
+ if (x.is_equal(_ex1))
+ return 1/y;
+ if (y.is_equal(_ex1))
+ return 1/x;
if (x.info(info_flags::numeric) && y.info(info_flags::numeric)) {
// treat all problematic x and y that may not be passed into tgamma,
// because they would throw there although beta(x,y) is well-defined
return (psi(arg+m+_ex1)-recur).series(rel, order, options);
}
-const unsigned function_index_psi1 =
+unsigned psi1_SERIAL::serial =
function::register_new(function_options("psi").
eval_func(psi1_eval).
evalf_func(psi1_evalf).
return (psi(n, arg+m+_ex1)-recur).series(rel, order, options);
}
-const unsigned function_index_psi2 =
+unsigned psi2_SERIAL::serial =
function::register_new(function_options("psi").
eval_func(psi2_eval).
evalf_func(psi2_evalf).