Stan Math Library
2.10.0
reverse mode automatic differentiation
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
stan
math
prim
scal
meta
include_summand.hpp
Go to the documentation of this file.
1
#ifndef STAN_MATH_PRIM_SCAL_META_INCLUDE_SUMMAND_HPP
2
#define STAN_MATH_PRIM_SCAL_META_INCLUDE_SUMMAND_HPP
3
4
#include <
stan/math/prim/scal/meta/is_constant.hpp
>
5
#include <
stan/math/prim/scal/meta/scalar_type.hpp
>
6
#include <boost/math/tools/promotion.hpp>
7
8
namespace
stan
{
9
10
namespace
math {
11
30
template
<
bool
propto,
31
typename
T1 = double,
typename
T2 = double,
32
typename
T3 = double,
typename
T4 = double,
33
typename
T5 = double,
typename
T6 = double,
34
typename
T7 = double,
typename
T8 = double,
35
typename
T9 = double,
typename
T10 =
double
>
36
struct
include_summand
{
42
enum
{
43
value
= (!propto
44
|| !
stan::is_constant<typename scalar_type<T1>::type
>
::value
45
|| !
stan::is_constant<typename scalar_type<T2>::type
>
::value
46
|| !
stan::is_constant<typename scalar_type<T3>::type
>
::value
47
|| !
stan::is_constant<typename scalar_type<T4>::type
>
::value
48
|| !
stan::is_constant<typename scalar_type<T5>::type
>
::value
49
|| !
stan::is_constant<typename scalar_type<T6>::type
>
::value
50
|| !
stan::is_constant<typename scalar_type<T7>::type
>
::value
51
|| !
stan::is_constant<typename scalar_type<T8>::type
>
::value
52
|| !
stan::is_constant<typename scalar_type<T9>::type
>
::value
53
|| !
stan::is_constant<typename scalar_type<T10>::type
>
::value
54
)
55
};
56
};
57
58
59
}
60
61
}
62
63
#endif
stan::is_constant
Metaprogramming struct to detect whether a given type is constant in the mathematical sense (not the ...
Definition:
is_constant.hpp:22
stan
Definition:
log_sum_exp.hpp:8
stan::math::include_summand
Template metaprogram to calculate whether a summand needs to be included in a proportional (log) prob...
Definition:
include_summand.hpp:36
stan::math::include_summand::value
Definition:
include_summand.hpp:43
scalar_type.hpp
is_constant.hpp
[
Stan Home Page
]
© 2011–2016, Stan Development Team.