File h_polytopes_generator.h

Functions

template<class Polytope, class RNGType>
Polytope random_hpoly(unsigned int dim, unsigned int m, int seed = std::numeric_limits<int>::signaling_NaN())

This function generates a random H-polytope of given dimension and number of hyperplanes \(m\)

Template Parameters:
  • Polytope – Type of returned polytope

  • RNGType – RNGType Type

template<class MT, class VT, class RNGType, typename NT>
MT get_skinny_transformation(const int d, NT const eig_ratio, int const seed)

This function generates a transformation that maps the unit ball to a skinny ellipsoid with given ratio between the lengths of its maximum and minimum axis

template<class Polytope, typename NT, class RNGType>
Polytope skinny_random_hpoly(unsigned int dim, unsigned int m, const bool pre_rounding = false, const NT eig_ratio = NT(1000.0), int seed = std::numeric_limits<int>::signaling_NaN())

This function generates a skinny random H-polytope of given dimension and number of hyperplanes \(m\)

Template Parameters:
  • Polytope – Type of returned polytope

  • NT – Number type

  • RNGType – RNGType Type