1#ifndef STAN_MATH_REV_FUN_DIGAMMA_HPP
2#define STAN_MATH_REV_FUN_DIGAMMA_HPP
21 a.adj() += vi.adj() * trigamma(a.val());
33template <
typename T, require_var_matrix_t<T>* =
nullptr>
38 .unaryExpr([](
auto& x) { return digamma(x); })
41 [a](
auto& vi)
mutable {
44 * a.val().array().unaryExpr([](auto& x) { return trigamma(x); });
var_value< plain_type_t< T > > make_callback_var(T &&value, F &&functor)
Creates a new var initialized with a callback_vari with a given value and reverse-pass callback funct...
fvar< T > digamma(const fvar< T > &x)
Return the derivative of the log gamma function at the specified argument.
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...