11 #ifndef EIGEN_SPECIALFUNCTIONS_ARRAYAPI_H
12 #define EIGEN_SPECIALFUNCTIONS_ARRAYAPI_H
26 template<
typename Derived,
typename ExponentDerived>
27 inline const Eigen::CwiseBinaryOp<Eigen::internal::scalar_igamma_op<typename Derived::Scalar>,
const Derived,
const ExponentDerived>
28 igamma(
const Eigen::ArrayBase<Derived>& a,
const Eigen::ArrayBase<ExponentDerived>& x)
30 return Eigen::CwiseBinaryOp<Eigen::internal::scalar_igamma_op<typename Derived::Scalar>,
const Derived,
const ExponentDerived>(
46 template<
typename Derived,
typename ExponentDerived>
47 inline const Eigen::CwiseBinaryOp<Eigen::internal::scalar_igammac_op<typename Derived::Scalar>,
const Derived,
const ExponentDerived>
48 igammac(
const Eigen::ArrayBase<Derived>& a,
const Eigen::ArrayBase<ExponentDerived>& x)
50 return Eigen::CwiseBinaryOp<Eigen::internal::scalar_igammac_op<typename Derived::Scalar>,
const Derived,
const ExponentDerived>(
68 template<
typename DerivedN,
typename DerivedX>
69 inline const Eigen::CwiseBinaryOp<Eigen::internal::scalar_polygamma_op<typename DerivedX::Scalar>,
const DerivedN,
const DerivedX>
70 polygamma(
const Eigen::ArrayBase<DerivedN>& n,
const Eigen::ArrayBase<DerivedX>& x)
72 return Eigen::CwiseBinaryOp<Eigen::internal::scalar_polygamma_op<typename DerivedX::Scalar>,
const DerivedN,
const DerivedX>(
88 template<
typename ArgADerived,
typename ArgBDerived,
typename ArgXDerived>
89 inline const Eigen::CwiseTernaryOp<Eigen::internal::scalar_betainc_op<typename ArgXDerived::Scalar>,
const ArgADerived,
const ArgBDerived,
const ArgXDerived>
90 betainc(
const Eigen::ArrayBase<ArgADerived>& a,
const Eigen::ArrayBase<ArgBDerived>& b,
const Eigen::ArrayBase<ArgXDerived>& x)
92 return Eigen::CwiseTernaryOp<Eigen::internal::scalar_betainc_op<typename ArgXDerived::Scalar>,
const ArgADerived,
const ArgBDerived,
const ArgXDerived>(
112 template<
typename DerivedX,
typename DerivedQ>
113 inline const Eigen::CwiseBinaryOp<Eigen::internal::scalar_zeta_op<typename DerivedX::Scalar>,
const DerivedX,
const DerivedQ>
114 zeta(
const Eigen::ArrayBase<DerivedX>& x,
const Eigen::ArrayBase<DerivedQ>& q)
116 return Eigen::CwiseBinaryOp<Eigen::internal::scalar_zeta_op<typename DerivedX::Scalar>,
const DerivedX,
const DerivedQ>(
124 #endif // EIGEN_SPECIALFUNCTIONS_ARRAYAPI_H