Home > mpt > extras > control > optmerge > mpt_hyparr2.m

# mpt_hyparr2

## PURPOSE

===============================================================================

## SYNOPSIS

function delta = hyparr2(Hyp, P, dom, Opt)

## DESCRIPTION

===============================================================================

Title:        hyparr

Project:      Transformation of HYSDEL model into PWA model

Purpose:      Dervive hyperplane arrangement

Input:        Hyp: hyperplanes Hyp.A(i,:)*x = Hyp.B(i), for i = 1...rows(Hyp.A)
that define a hyperplane arrangement
P: constraints P.A*x <= P.B define polyhedron
P=[] is possible
dom: constraints dom.A*x <= dom.B defines the domain
these constraints are only used if dom.constr exists
lpsolver
verbose
minR: minimal required radius of Chebycheff ball of polyhedra

Output:       delta: hyperplane arrangement, or the markings of the regions
generated by the hyperplanes Hyp, where delta(:,j)
represents the j-th region of the arrangement as a
{-1, 1} vector.
Only the markings of the regions having feasible points
in P and dom are returned.

Example:
delta = [1  1 -1;
1 -1 -1]
means that there were 2 hyperplanes and that they induce 3
polyhedra:
1. A x <= B;
2. A(1,:) <= B(1),  A(2,:) >= B(2);
3. A(1,:) >= B(1),  A(2,:) >= B(2);

Note: This definition is contrary to the one in optMerge
(and Ziegler)

Comments:     By default, the reverse search tool by Komei Fukuda is currently
not used, as it does not work realiably for large problems.
Instead, the feasibility of the regions is checked by solving LPs.
The efficiency is improved by the following means:
* if dom.constr=1, only regions with feasible points in dom are
considered
* large hyperplane arrangements are stored in the function
* in a last step, only the regions with feasible points in P are
returned (thus allowing the storage of already computed
hyperplane arrangements)

Authors:      Tobias Geyer <geyer@control.ee.ethz.ch>, Fabio Torrisi

## CROSS-REFERENCE INFORMATION

This function calls:
• length LENGTH Returns number of regions over which the explicit control law is defined
• end END Returns the last element in a given polytope array
• length LENGTH Returns number of elements in a polytope array
• size SIZE Returns size of the given polytope object
• mpt_error MPT_ERROR Function called if MPT toolbox is not initialized
• mpt_intersectHP1 Tobias Geyer, 2003-2004
• polyinnerball CHEBYBALL_F Computes center and radius of the largest ball inscribed in a polytope
• tg_polyreduce
This function is called by: