1 #ifndef STAN_MATH_PRIM_ARR_FUN_LOG_SUM_EXP_HPP 2 #define STAN_MATH_PRIM_ARR_FUN_LOG_SUM_EXP_HPP 29 using std::numeric_limits;
30 double max = -numeric_limits<double>::infinity();
36 for (
size_t ii = 0; ii < x.size(); ii++)
37 if (x[ii] != -numeric_limits<double>::infinity())
38 sum +=
exp(x[ii] - max);
40 return max +
log(sum);
fvar< T > sum(const std::vector< fvar< T > > &m)
Return the sum of the entries of the specified standard vector.
fvar< T > log(const fvar< T > &x)
fvar< T > log_sum_exp(const std::vector< fvar< T > > &v)
fvar< T > exp(const fvar< T > &x)
int max(const std::vector< int > &x)
Returns the maximum coefficient in the specified column vector.