12#ifndef __GEDIM_UTILITIES_H
13#define __GEDIM_UTILITIES_H
28 template <
class T>
static void Unused(
const T &)
34 return static_cast<unsigned int>(
time(
nullptr));
45 std::shuffle(
array.begin(),
array.end(), std::default_random_engine(
seed));
53 const unsigned int &
seed =
time(
nullptr));
63 std::sort(
indices.begin(),
indices.end(), [&
array](
int a,
int b) { return (array.at(a) < array.at(b)); });
73 template <
typename _InputIterator>
96 template <
typename T>
static T Union(
const std::initializer_list<T> &
arrays)
98 std::unordered_set<typename T::value_type>
s;
103 return T(
s.begin(),
s.end());
Eigen column vector.
Definition Eigen_Array.hpp:23
Static class fot generic functions.
Definition CommonUtilities.hpp:25
static std::list< std::vector< int > > CombinationWithRepetition(int n, int k)
create Combination With Repetition with n elements in k subset
Definition CommonUtilities.cpp:19
static std::vector< unsigned int > SortArrayIndices(const std::vector< T > &array)
Gives you back the array sorted indices.
Definition CommonUtilities.hpp:58
static std::vector< unsigned int > RandomArrayNoRepetition(const unsigned int &n, const unsigned int &maxNumber=RAND_MAX, const unsigned int &seed=time(nullptr))
Definition CommonUtilities.cpp:50
static void Unused(const T &)
Tells the compiler the parameter is unused.
Definition CommonUtilities.hpp:28
static double BinomialCoefficient(const unsigned int &n, const unsigned int &k)
Compute the binomial coefficient (n k)
Definition CommonUtilities.hpp:84
static void Shuffle(container &array, const unsigned int &seed=time(nullptr))
Shuffle an array.
Definition CommonUtilities.hpp:43
static unsigned int RandomSeed()
Definition CommonUtilities.hpp:32
static double Slope(_InputIterator x_begin, _InputIterator y_begin, const unsigned int &n)
Compute the regression line slope of points (x,y).
Definition CommonUtilities.hpp:74
static T Union(const std::initializer_list< T > &arrays)
Definition CommonUtilities.hpp:96
Definition Eigen_Array.cpp:22