1#ifndef STAN_MATH_PRIM_FUN_COV_EXP_QUAD_HPP
2#define STAN_MATH_PRIM_FUN_COV_EXP_QUAD_HPP
17template <
typename T_x,
typename T_sigma,
typename T_l>
18inline typename Eigen::Matrix<return_type_t<T_x, T_sigma, T_l>, Eigen::Dynamic,
21 const T_l& length_scale) {
28template <
typename T_x,
typename T_sigma,
typename T_l>
29inline typename Eigen::Matrix<return_type_t<T_x, T_sigma, T_l>, Eigen::Dynamic,
32 const std::vector<T_l>& length_scale) {
39template <
typename T_x1,
typename T_x2,
typename T_sigma,
typename T_l>
40inline typename Eigen::Matrix<return_type_t<T_x1, T_x2, T_sigma, T_l>,
41 Eigen::Dynamic, Eigen::Dynamic>
42cov_exp_quad(
const std::vector<T_x1>& x1,
const std::vector<T_x2>& x2,
43 const T_sigma& sigma,
const T_l& length_scale) {
50template <
typename T_x1,
typename T_x2,
typename T_sigma,
typename T_l>
51inline typename Eigen::Matrix<return_type_t<T_x1, T_x2, T_sigma, T_l>,
52 Eigen::Dynamic, Eigen::Dynamic>
53cov_exp_quad(
const std::vector<T_x1>& x1,
const std::vector<T_x2>& x2,
54 const T_sigma& sigma,
const std::vector<T_l>& length_scale) {
matrix_cl< return_type_t< T1, T2, T3 > > gp_exp_quad_cov(const matrix_cl< T1 > &x, const T2 sigma, const T3 length_scale)
Squared exponential kernel on the GPU.
Eigen::Matrix< return_type_t< T_x, T_sigma, T_l >, Eigen::Dynamic, Eigen::Dynamic > cov_exp_quad(const std::vector< T_x > &x, const T_sigma &sigma, const T_l &length_scale)
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...