1 #ifndef STAN__AGRAD__FWD__PROB__UNIVARIATE__CONTINUOUS__NORMAL_HPP
2 #define STAN__AGRAD__FWD__PROB__UNIVARIATE__CONTINUOUS__NORMAL_HPP
4 #include <boost/random/normal_distribution.hpp>
5 #include <boost/random/variate_generator.hpp>
6 #include <boost/utility/enable_if.hpp>
18 template <
bool propto,
19 typename T_y,
typename T_loc,
typename T_scale>
20 typename boost::enable_if_c<contains_fvar<T_y,T_loc,T_scale>::value,
22 normal_log(
const T_y& y,
const T_loc& mu,
const T_scale& sigma) {
39 logp += NEG_LOG_SQRT_TWO_PI;
boost::math::tools::promote_args< typename scalar_type< T1 >::type, typename scalar_type< T2 >::type, typename scalar_type< T3 >::type, typename scalar_type< T4 >::type, typename scalar_type< T5 >::type, typename scalar_type< T6 >::type >::type type
Metaprogram to determine if a type has a base scalar type that can be assigned to type double...
double value_of(const T x)
Return the value of the specified scalar argument converted to a double value.
Template metaprogram to calculate whether a summand needs to be included in a proportional (log) prob...
boost::enable_if_c< contains_fvar< T_y, T_loc, T_scale >::value, typename return_type< T_y, T_loc, T_scale >::type >::type normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)
fvar< T > log(const fvar< T > &x)