Home > mpt > @polytope > domain.m

# domain

## PURPOSE

DOMAIN Computes polytope that is mapped to an another polytope using affine map

## SYNOPSIS

function [R,keptrows,feasible]=domain(P,A,f,Q,horizon,Options)

## DESCRIPTION

DOMAIN Computes polytope that is mapped to an another polytope using affine map

[R,keptrows,feasible]=domain(P,A,f,Q,horizon)

---------------------------------------------------------------------------
DESCRIPTION
---------------------------------------------------------------------------
Compute polytope contained in "Q" that is mapped to "P" in "horizon" steps.
R=domain(P,A,f,Q,horizon) computes polytope R that is under an
affine mapping m:
R={x(0) \in Q | x(horizon) \in P, x(k+1)=Ax(k)+f}

NOTE: Q is R^n as default

This function is almost identical to "mpt_getReachSubset". However, here we
assume the feedback to be time invariant while "mpt_getReachSubset" assumes
the feedback to be time-variant.

---------------------------------------------------------------------------
INPUT
---------------------------------------------------------------------------
P       - Polytope (or union thereof);
A, f    - Dynamics matrices; x(k+1)=Ax(k)+f
Q       - Polytope (or union thereof);
horizon - length of the mapping
Options.noReduce - if set to 1, resulting polytope will not be in minimal
representation and 'keptrows' will be an empty matrix
(off by default)

---------------------------------------------------------------------------
OUTPUT
---------------------------------------------------------------------------
R         - Polytope (or union thereof); See definition in DESCRIPTION;
keptrows   - is a vector containing the origin of each facet of R
1 means that the facet originated from active constraints in Q
0 means that the facet originated from reachability restrictions P
If P and Q are polygons "keptrows" returns the indices
of the original polytope P for which transition R(i) was computed.
feasible  - 1 if a feasible transition was found (i.e., R is full dimensional);
0 otherwise;

## CROSS-REFERENCE INFORMATION

This function calls:
• length LENGTH Returns number of regions over which the explicit control law is defined
• domain DOMAIN Computes polytope that is mapped to an another polytope using affine map
• end END Returns the last element in a given polytope array
• isfulldim ISFULLDIM Checks if a polytope is full dimensional
• length LENGTH Returns number of elements in a polytope array
• nconstr NCONSTR Returns number of constraints that form an H-representation of a polytope
• polytope POLYTOPE Default constructor for the POLYTOPE object
• chebyball_f CHEBYBALL_F Computes center and radius of the largest ball inscribed in a polytope
• reduce REDUCE Reduces the polytope by removing redundant inequalities
• size SIZE Returns size of the given polytope object
This function is called by:
• domain DOMAIN Computes polytope that is mapped to an another polytope using affine map
• mpt_getPWALyapFct MPT_GETPWALYAPFCT Calculates PWA Lyapunov function
• mpt_getPWPLyapFct MPT_GETPWPLYAPFCT Calculates Piecewise Polynomial (sum of squares) Lyapunov function
• mpt_getPWQLyapFct MPT_GETPWQLYAPFCT Calculates PWQ Lyapunov function
• mpt_infsetPWA MPT_INFSETPWA Computes (robust) positive invariant subset for PWA systems
• mpt_boolMinTime MPT_BOOLMINTIME Computes minimum time controller for systems with discrete inputs
• mpt_optBoolCtrl MPT_OPTBOOLCTRL Computes optimal controller for systems with discrete inputs

Generated on Thu 30-Mar-2006 10:26:47 by m2html © 2003