![]() |
Stan Math Library
5.2.0
Automatic Differentiation
|
Functions | |
| template<typename F , typename Theta , typename Stream , typename... Args, require_eigen_vector_t< Theta > * = nullptr> | |
| auto | log_likelihood (F &&f, Theta &&theta, Stream *msgs, Args &&... args) |
| template<typename F , typename Theta , typename Stream , typename... Args, require_eigen_vector_vt< std::is_arithmetic, Theta > * = nullptr> | |
| auto | theta_grad (F &&f, Theta &&theta, Stream *msgs, Args &&... args) |
Computes theta gradient f wrt theta and args... | |
| template<typename F , typename Theta , typename Stream , typename... Args, require_eigen_vector_vt< std::is_arithmetic, Theta > * = nullptr> | |
| void | ll_arg_grad (F &&f, Theta &&theta, Stream *msgs, Args &&... args) |
Computes likelihood argument gradient of f | |
| template<typename F , typename Theta , typename Stream , typename... Args, require_eigen_vector_vt< std::is_arithmetic, Theta > * = nullptr> | |
| auto | diagonal_hessian (F &&f, Theta &&theta, Stream *msgs, Args &&... args) |
Computes negative diagonal Hessian of f wrttheta and args... | |
| template<typename F , typename Theta , typename Stream , typename... Args, require_eigen_vector_vt< std::is_arithmetic, Theta > * = nullptr> | |
| auto | block_hessian (F &&f, Theta &&theta, const Eigen::Index hessian_block_size, Stream *msgs, Args &&... args) |
Computes negative block diagonal Hessian of f wrttheta and args... | |
| template<typename F , typename Theta , typename Stream , typename... Args, require_eigen_vector_vt< std::is_arithmetic, Theta > * = nullptr> | |
| auto | diff (F &&f, Theta &&theta, const Eigen::Index hessian_block_size, Stream *msgs, Args &&... args) |
Computes theta gradient and negative block diagonal Hessian of f wrt theta and args... | |
| template<typename F , typename Theta , typename Stream , typename... Args, require_eigen_vector_t< Theta > * = nullptr> | |
| Eigen::VectorXd | third_diff (F &&f, Theta &&theta, Stream &&msgs, Args &&... args) |
Compute third order derivative of f wrt theta and args... | |
| template<typename F , typename Theta , typename AMat , typename Stream , typename... Args, require_eigen_vector_t< Theta > * = nullptr> | |
| auto | compute_s2 (F &&f, Theta &&theta, AMat &&A, const int hessian_block_size, Stream *msgs, Args &&... args) |
The derivative of the log likelihood wrt theta evaluated at the mode. | |
| template<typename F , typename V_t , typename Theta , typename Stream , typename... Args, require_eigen_vector_t< Theta > * = nullptr> | |
| auto | diff_eta_implicit (F &&f, V_t &&v, Theta &&theta, Stream *msgs, Args &&... args) |
Compute second order gradient of f wrt theta and args... | |