Home > mpt > extras > control > mpt_simplexContr.m

# mpt_simplexContr

## PURPOSE

MPT_SIMPLEXCONTR Computes a piecewise affine feedback law defined over simplices

## SYNOPSIS

function [ctrlStruct,vol]=mpt_simplexContr(sysStruct,probStruct,Options)

## DESCRIPTION

```MPT_SIMPLEXCONTR Computes a piecewise affine feedback law defined over simplices

function [ctrlStruct,vol]=mpt_simplexContr(sysStruct,probStruct,Options)

---------------------------------------------------------------------------
DESCRIPTION
---------------------------------------------------------------------------
Partitions the feasible set into simplical cells and subsequently computes
the input sequence for each vertex of each simplex. By linear interpolation,
we obtain a piecewise affine feedback law defined for each simplex.

This function is not based on multi-parametric programming !

---------------------------------------------------------------------------
INPUT
---------------------------------------------------------------------------

sysStruct       - System structure in the sysStruct format (see Manual)
probStruct      - Problem structure in the probStruct format (see Manual)
Options.verbose - Level of verbosity
Options.maxCtr  - Maximum number of iterations (default is 1000)

---------------------------------------------------------------------------
OUTPUT
---------------------------------------------------------------------------

ctrlStruct    - controller structure with the following fields:
Pn,Fi,Gi    - for region Pn(i).H*x <= Pn.K(i) computed input is U=Fi{i}*x+Gi{i}
Ai,Bi,Ci    - open-loop cost associated to each region (x'Aix + x'Bi + Ci)
Pfinal      - Defines the feasible state space partition (i.e. union of
all regions) as Phard.H*x<=Phard.K
dynamics    - dynamics active in region Pn(i)
+Volume: volume of polySet

vol          - the volume of the controller partition```

## CROSS-REFERENCE INFORMATION

This function calls:
• length LENGTH Returns number of regions over which the explicit control law is defined
• mptctrl MPTCTRL Constructor for the MPT controller object
• plot PLOT Plots regions of the explicit controller
• chebyball CHEBYBALL Computes center and radius of the largest ball inscribed in a polytope
• double DOUBLE Function used to access internal properties of the given polytope
• end END Returns the last element in a given polytope array
• hull HULL Convex hull of n polytopes
• isfulldim ISFULLDIM Checks if a polytope is full dimensional
• length LENGTH Returns number of elements in a polytope array
• plot PLOT Plots polytopes in 2D or 3D
• polytope POLYTOPE Default constructor for the POLYTOPE object
• projection PROJECTION Projection of a polytope or a polytope array
• size SIZE Returns size of the given polytope object
• triangulate TRIANGULATE Calculates triangulation of arbitrary polytopes
• mpt_error MPT_ERROR Function called if MPT toolbox is not initialized
• mpt_verifyProbStruct MPT_VERIFYPROBSTRUCT Verifies the probStruct structure
• mpt_verifySysStruct MPT_VERIFYSYSSTRUCT Verifies the sysStruct structure
• mpt_constructMatrices MPT_CONSTRUCTMATRICES Constructs matrices for the finite time constrained optimal control problem
• hull HULL Converts vertices/polytope array into an H-representation polytope
• mpt_solveLP MPT_SOLVELP Interface to various LP solvers
• mpt_solveQP MPT_SOLVEQP Interface to various QP solvers
This function is called by:
• runExample RUNEXAMPLE Demonstrates MPT control routines

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