8#ifndef model_CombinationWithRepetition_H_
9#define model_CombinationWithRepetition_H_
25 template <
int _N,
int _k>
28 static constexpr int N=_N;
29 static constexpr int k=
_k;
30 static_assert(
N>0,
"N MUST BE >0.");
31 static_assert(
k>0,
"k MUST BE >0.");
36 static Eigen::Matrix<T,value,k>
combine(
const Eigen::Matrix<T,1,N>& pool)
40 Eigen::Matrix<T,value,k>
temp;
59 static_assert(
k>0,
"k MUST BE >0.");
60 static constexpr int N=1;
65 static Eigen::Matrix<T,value,k>
combine(
const Eigen::Matrix<T,1,N>& pool)
68 return Eigen::Matrix<T,value,k>::Constant(pool(
N-1));
80 static constexpr int N=_N;
81 static_assert(
N>0,
"N MUST BE >0.");
82 static constexpr int k=1;
86 static Eigen::Matrix<T,value,k>
combine(
const Eigen::Matrix<T,1,N>& pool)
100 static constexpr int N=1;
101 static constexpr int k=1;
104 template <
typename T>
105 static Eigen::Matrix<T,value,k>
combine(
const Eigen::Matrix<T,1,N>& pool)
119 static constexpr int N=_N;
120 static_assert(
N>0,
"N MUST BE >0.");
121 static constexpr int k=0;
140 static constexpr int N=1;
142 static constexpr int k=0;
static constexpr int binomial(int N, int k)
static constexpr int value
static constexpr int value
static Eigen::Matrix< T, value, k > combine(const Eigen::Matrix< T, 1, N > &pool)
static constexpr int value
static Eigen::Matrix< T, value, k > combine(const Eigen::Matrix< T, 1, N > &pool)
static constexpr int value
static Eigen::Matrix< T, value, k > combine(const Eigen::Matrix< T, 1, N > &pool)
static constexpr int value
static Eigen::Matrix< T, value, k > combine(const Eigen::Matrix< T, 1, N > &pool)
static constexpr int value