|  | 
|  | Point () | 
|  | Default constructor for Point class. 
 | 
|  | 
|  | Point (const Eigen::Vector< zono_float, -1 > &c) | 
|  | Point constructor. 
 | 
|  | 
| void | set (const Eigen::Vector< zono_float, -1 > &c) | 
|  | Reset point object with the given parameters. 
 | 
|  | 
| HybZono * | clone () const override | 
|  | Clone method for polymorphic behavior. 
 | 
|  | 
| std::string | print () const override | 
|  | Returns set information as a string. 
 | 
|  | 
| void | remove_redundancy (int) override | 
|  | Removes redundant constraints and any unused generators. 
 | 
|  | 
| void | convert_form () override | 
|  | Converts the set representation between -1-1 and 0-1 forms. 
 | 
|  | 
|  | Zono () | 
|  | Default constructor for Zono class. 
 | 
|  | 
|  | Zono (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, const bool zero_one_form=false) | 
|  | Zono constructor. 
 | 
|  | 
|  | ~Zono () override=default | 
|  | 
| void | set (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, bool zero_one_form=false) | 
|  | Reset zonotope object with the given parameters. 
 | 
|  | 
| HybZono * | clone () const override | 
|  | Clone method for polymorphic behavior. 
 | 
|  | 
| std::unique_ptr< Zono > | reduce_order (int n_o) | 
|  | Perform zonotope order reduction. 
 | 
|  | 
| zono_float | get_volume () | 
|  | Get volume of zonotope. 
 | 
|  | 
| void | convert_form () override | 
|  | Converts the set representation between -1-1 and 0-1 forms. 
 | 
|  | 
| std::string | print () const override | 
|  | Returns set information as a string. 
 | 
|  | 
|  | ConZono () | 
|  | Default constructor for ConZono class. 
 | 
|  | 
|  | ConZono (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &A, const Eigen::Vector< zono_float, -1 > &b, bool zero_one_form=false) | 
|  | ConZono constructor. 
 | 
|  | 
|  | ~ConZono () override=default | 
|  | 
| void | set (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &A, const Eigen::Vector< zono_float, -1 > &b, bool zero_one_form=false) | 
|  | Reset constrained zonotope object with the given parameters. 
 | 
|  | 
| virtual void | constraint_reduction () | 
|  | Execute constraint reduction algorithm from Scott et. al. 2016. 
 | 
|  | 
| virtual std::unique_ptr< Zono > | to_zono_approx () const | 
|  | Compute outer approximation of constrained zonotope as zonotope using SVD. 
 | 
|  | 
|  | HybZono ()=default | 
|  | Default constructor for HybZono class. 
 | 
|  | 
|  | HybZono (const Eigen::SparseMatrix< zono_float > &Gc, const Eigen::SparseMatrix< zono_float > &Gb, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &Ac, const Eigen::SparseMatrix< zono_float > &Ab, const Eigen::Vector< zono_float, -1 > &b, bool zero_one_form=false, bool sharp=false) | 
|  | HybZono constructor. 
 | 
|  | 
| virtual | ~HybZono ()=default | 
|  | 
| void | set (const Eigen::SparseMatrix< zono_float > &Gc, const Eigen::SparseMatrix< zono_float > &Gb, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &Ac, const Eigen::SparseMatrix< zono_float > &Ab, const Eigen::Vector< zono_float, -1 > &b, bool zero_one_form=false, bool sharp=false) | 
|  | Reset hybrid zonotope object with the given parameters. 
 | 
|  | 
| virtual int | get_n () const | 
|  | Returns dimension of set. 
 | 
|  | 
| virtual int | get_nC () const | 
|  | Returns number of constraints in set definition. 
 | 
|  | 
| virtual int | get_nG () const | 
|  | Returns number of generators in set definition. 
 | 
|  | 
| virtual int | get_nGc () const | 
|  | Returns number of continuous generators in set definition. 
 | 
|  | 
| virtual int | get_nGb () const | 
|  | Returns number of binary generators in set definition. 
 | 
|  | 
| virtual Eigen::SparseMatrix< zono_float > | get_Gc () const | 
|  | Returns continuous generator matrix. 
 | 
|  | 
| virtual Eigen::SparseMatrix< zono_float > | get_Gb () const | 
|  | Returns binary generator matrix. 
 | 
|  | 
| virtual Eigen::SparseMatrix< zono_float > | get_G () const | 
|  | Returns generator matrix. 
 | 
|  | 
| virtual Eigen::SparseMatrix< zono_float > | get_Ac () const | 
|  | Returns continuous constraint matrix. 
 | 
|  | 
| virtual Eigen::SparseMatrix< zono_float > | get_Ab () const | 
|  | Returns binary constraint matrix. 
 | 
|  | 
| virtual Eigen::SparseMatrix< zono_float > | get_A () const | 
|  | Returns constraint matrix. 
 | 
|  | 
| virtual Eigen::Vector< zono_float, -1 > | get_c () const | 
|  | Returns center vector. 
 | 
|  | 
| virtual Eigen::Vector< zono_float, -1 > | get_b () const | 
|  | Returns constraint vector. 
 | 
|  | 
| virtual bool | is_0_1_form () const | 
|  | Returns true if factors are in range [0,1], false if they are in range [-1,1]. 
 | 
|  | 
| bool | is_sharp () const | 
|  | Returns true if set is known to be sharp. 
 | 
|  | 
| virtual std::unique_ptr< ConZono > | convex_relaxation () const | 
|  | Returns convex relaxation of the hybrid zonotope. 
 | 
|  | 
| virtual std::unique_ptr< HybZono > | complement (const zono_float delta_m=100, const bool remove_redundancy=true, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr, const int n_leaves=std::numeric_limits< int >::max(), const int contractor_iter=100) | 
|  | Computes the complement of the set Z. 
 | 
|  | 
| bool | is_point () const | 
|  | Polymorphic type checking: true if set is a point. 
 | 
|  | 
| bool | is_zono () const | 
|  | Polymorphic type checking: true if set is a zonotope. 
 | 
|  | 
| bool | is_conzono () const | 
|  | Polymorphic type checking: true if set is a constrained zonotope. 
 | 
|  | 
| bool | is_hybzono () const | 
|  | Polymorphic type checking: true if set is a hybrid zonotope. 
 | 
|  | 
| bool | is_empty_set () const | 
|  | Polymorphic type checking: true if set is empty set object. 
 | 
|  | 
| Eigen::Vector< zono_float, -1 > | optimize_over (const Eigen::SparseMatrix< zono_float > &P, const Eigen::Vector< zono_float, -1 > &q, zono_float c=0, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) const | 
|  | Solves optimization problem with quadratic objective over the current set. 
 | 
|  | 
| Eigen::Vector< zono_float, -1 > | project_point (const Eigen::Vector< zono_float, -1 > &x, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) const | 
|  | Returns the projection of the point x onto the set object. 
 | 
|  | 
| bool | is_empty (const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) const | 
|  | Returns true if the set is provably empty, false otherwise. 
 | 
|  | 
| zono_float | support (const Eigen::Vector< zono_float, -1 > &d, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) | 
|  | Computes support function of the set in the direction d. 
 | 
|  | 
| bool | contains_point (const Eigen::Vector< zono_float, -1 > &x, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) const | 
|  | Checks whether the point x is contained in the set object. 
 | 
|  | 
| Box | bounding_box (const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) | 
|  | Computes a bounding box of the set object as a Box object. 
 | 
|  | 
| std::vector< ConZono > | get_leaves (bool remove_redundancy=true, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr, int n_leaves=std::numeric_limits< int >::max(), int contractor_iter=10) const | 
|  | Computes individual constrained zonotopes whose union is the hybrid zonotope object. 
 | 
|  | 
|  | 
| Eigen::Vector< zono_float, -1 > | do_optimize_over (const Eigen::SparseMatrix< zono_float > &, const Eigen::Vector< zono_float, -1 > &, zono_float, const OptSettings &, OptSolution *) const override | 
|  | 
| Eigen::Vector< zono_float, -1 > | do_project_point (const Eigen::Vector< zono_float, -1 > &x, const OptSettings &, OptSolution *) const override | 
|  | 
| zono_float | do_support (const Eigen::Vector< zono_float, -1 > &d, const OptSettings &, OptSolution *) override | 
|  | 
| bool | do_contains_point (const Eigen::Vector< zono_float, -1 > &x, const OptSettings &, OptSolution *) const override | 
|  | 
| Box | do_bounding_box (const OptSettings &, OptSolution *) override | 
|  | 
| bool | do_is_empty (const OptSettings &, OptSolution *) const override | 
|  | 
| Box | do_bounding_box (const OptSettings &, OptSolution *) override | 
|  | 
| zono_float | do_support (const Eigen::Vector< zono_float, -1 > &d, const OptSettings &, OptSolution *) override | 
|  | 
| OptSolution | qp_opt (const Eigen::SparseMatrix< zono_float > &P, const Eigen::Vector< zono_float, -1 > &q, zono_float c, const Eigen::SparseMatrix< zono_float > &A, const Eigen::Vector< zono_float, -1 > &b, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) const | 
|  | 
| std::unique_ptr< HybZono > | do_complement (zono_float delta_m, bool, const OptSettings &, OptSolution *, int, int) override | 
|  | 
| OptSolution | mi_opt (const Eigen::SparseMatrix< zono_float > &P, const Eigen::Vector< zono_float, -1 > &q, zono_float c, const Eigen::SparseMatrix< zono_float > &A, const Eigen::Vector< zono_float, -1 > &b, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) const | 
|  | 
| std::vector< OptSolution > | mi_opt_multisol (const Eigen::SparseMatrix< zono_float > &P, const Eigen::Vector< zono_float, -1 > &q, zono_float c, const Eigen::SparseMatrix< zono_float > &A, const Eigen::Vector< zono_float, -1 > &b, int n_sols, const OptSettings &settings=OptSettings(), OptSolution *solution=nullptr) const | 
|  | 
|  | 
| static void | remove_generators (Eigen::SparseMatrix< zono_float > &G, Eigen::SparseMatrix< zono_float > &A, const std::set< int > &idx_to_remove) | 
|  | 
| static std::set< int > | find_unused_generators (const Eigen::SparseMatrix< zono_float > &G, const Eigen::SparseMatrix< zono_float > &A) | 
|  | 
| Eigen::SparseMatrix< zono_float > | G = Eigen::SparseMatrix<zono_float>(0, 0) | 
|  | generator matrix G = [Gc, Gb] 
 | 
|  | 
| Eigen::SparseMatrix< zono_float > | Gc = Eigen::SparseMatrix<zono_float>(0, 0) | 
|  | continuous generator matrix 
 | 
|  | 
| Eigen::SparseMatrix< zono_float > | Gb = Eigen::SparseMatrix<zono_float>(0, 0) | 
|  | binary generator matrix 
 | 
|  | 
| Eigen::SparseMatrix< zono_float > | A = Eigen::SparseMatrix<zono_float>(0, 0) | 
|  | constraint matrix A = [Ac, Ab] 
 | 
|  | 
| Eigen::SparseMatrix< zono_float > | Ac = Eigen::SparseMatrix<zono_float>(0, 0) | 
|  | continuous constraint matrix 
 | 
|  | 
| Eigen::SparseMatrix< zono_float > | Ab = Eigen::SparseMatrix<zono_float>(0, 0) | 
|  | binary constraint matrix 
 | 
|  | 
| Eigen::Vector< zono_float, -1 > | c = Eigen::Vector<zono_float, -1>(0) | 
|  | center vector 
 | 
|  | 
| Eigen::Vector< zono_float, -1 > | b = Eigen::Vector<zono_float, -1>(0) | 
|  | constraint vector 
 | 
|  | 
| int | n = 0 | 
|  | set dimension 
 | 
|  | 
| int | nG = 0 | 
|  | total number of factors. nG = nGc + nGb 
 | 
|  | 
| int | nGc = 0 | 
|  | number of continuous factors 
 | 
|  | 
| int | nGb = 0 | 
|  | number of binary factors 
 | 
|  | 
| int | nC = 0 | 
|  | number of constraints 
 | 
|  | 
| bool | zero_one_form = false | 
|  | flag to indicate whether the set is in 0-1 or -1-1 form 
 | 
|  | 
| bool | sharp = false | 
|  | flag to indicate whether the set is known to be sharp (i.e., convex relaxation = convex hull) 
 | 
|  | 
Point class. 
A point is defined entirely by the center vector c.