File orderpolytope.h
-
template<typename Point>
class OrderPolytope - #include <orderpolytope.h>
This class represents an order polytope parameterized by a point type
- Template Parameters:
Point – Point type
Public Functions
-
inline OrderPolytope(Poset const &poset)
-
inline unsigned int dimension() const
-
inline unsigned int num_of_hyperplanes() const
-
inline VT get_col(unsigned int i) const
-
inline MT get_dense_mat() const
-
inline VT get_vec() const
-
inline bool is_normalized()
-
inline void print() const
-
inline VT vec_mult(VT const &x, bool transpose = false) const
multiply the sparse matrix A of the order polytope by a vector x if transpose = false : return Ax else if transpose = true : return (A^T)x
-
inline std::pair<NT, NT> line_intersect(Point const &r, Point const &v, VT &Ar, VT &Av, bool pos = false) const
-
inline std::pair<NT, NT> line_intersect(Point const &r, Point const &v, VT &Ar, VT &Av, NT const &lambda_prev, bool pos = false) const
-
inline std::pair<NT, int> line_positive_intersect(Point const &r, Point const &v, VT &Ar, VT &Av) const
-
inline std::pair<NT, int> line_positive_intersect(Point const &r, Point const &v, VT &Ar, VT &Av, NT const &lambda_prev) const
-
template<typename update_parameters>
inline std::pair<NT, int> line_first_positive_intersect(Point const &r, Point const &v, VT &Ar, VT &Av, update_parameters ¶ms) const
-
template<typename update_parameters>
inline std::pair<NT, int> line_positive_intersect(Point const &r, Point const &v, VT &Ar, VT &Av, NT const &lambda_prev, MT const &AA, update_parameters ¶ms) const
-
template<typename update_parameters>
inline std::pair<NT, int> line_positive_intersect(Point const &r, Point const &v, VT &Ar, VT &Av, NT const &lambda_prev, update_parameters ¶ms) const
-
inline std::pair<NT, NT> line_intersect_coord(Point const &r, unsigned int const &rand_coord, VT &lamdas) const
-
inline std::pair<NT, NT> line_intersect_coord(Point const &r, Point const &r_prev, unsigned int const &rand_coord, unsigned int const &rand_coord_prev, VT &lamdas) const
-
template<typename T>
inline bool get_points_for_rounding(T const&)
-
inline void linear_transformIt(MT const &T)
-
inline void shift(VT const &c)
-
inline VT inner_point()
-
inline void normalize()
-
template<typename update_parameters>
inline void compute_reflection(Point &v, Point const&, update_parameters const ¶ms) const