Stan Math Library
2.6.3
probability, sampling & optimization
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerator
Friends
Macros
stan
math
rev
scal
fun
digamma.hpp
Go to the documentation of this file.
1
#ifndef STAN_MATH_REV_SCAL_FUN_DIGAMMA_HPP
2
#define STAN_MATH_REV_SCAL_FUN_DIGAMMA_HPP
3
4
#include <boost/math/special_functions/zeta.hpp>
5
#include <
stan/math/rev/core.hpp
>
6
#include <
stan/math/prim/scal/fun/trigamma.hpp
>
7
#include <
stan/math/prim/scal/fun/digamma.hpp
>
8
9
namespace
stan {
10
namespace
math {
11
12
namespace
{
13
class
digamma_vari :
public
op_v_vari {
14
public
:
15
explicit
digamma_vari(vari* avi) :
16
op_v_vari(
digamma
(avi->val_), avi) {
17
}
18
void
chain() {
19
avi_->adj_ += adj_ *
trigamma
(avi_->val_);
20
}
21
};
22
}
23
24
inline
var
digamma
(
const
stan::math::var
& a) {
25
return
var
(
new
digamma_vari(a.
vi_
));
26
}
27
28
}
29
}
30
#endif
stan::math::trigamma
T trigamma(T x)
Definition:
trigamma.hpp:50
core.hpp
digamma.hpp
stan::math::var
Independent (input) and dependent (output) variables for gradients.
Definition:
var.hpp:32
stan::math::var::vi_
vari * vi_
Pointer to the implementation of this variable.
Definition:
var.hpp:44
trigamma.hpp
stan::math::digamma
fvar< T > digamma(const fvar< T > &x)
Definition:
digamma.hpp:16
[
Stan Home Page
]
© 2011–2015, Stan Development Team.