PmWiki * Initial Setup Tasks
* Draft * Analysis * Synthesis -> LMI? * Synthesis?* -> Lyapunov?* -> LQR?* -> LMI? * Advanced Usage? * Theory Theory * -> Analysis * -> Synthesis -> LMI? * Synthesis* -> Lyapunov?* -> LQR* -> LMI? * Methods
Add /ract directory in Matlab path
Directory tree and files
definition and few auxilary routines for a new type of variable: uncertain parameter -- PRIVATE routines for random matrix generation (NO EDIT NEED) -- display.M nice way to display uncertain param. variable in Matlab (EDIT ONLY IN CASE of new random distributions) -- distrtype.M auxilary (NO EDIT NEED) -- ubase.M create a new uncertain variable, for more details type 'help ubase' (EDITABLE) -- ubasesample.M return some number of samples of an uncertain variable (EDITABLE)
generators of random in some case matrices (obsolete, saved for historical reasons and in reserve) most of the code used in @UBASE/PRIVATE (NO EDIT NEED)
two main subroutines of the toolbox -- plusproj.M projection of symmetric matrix to the cone of positive matrices (EDITABLE) -- usample.M sampling of uncertain variables, but can accept cell arrays of uncertain variables! (for the first glance, NO EDIT NEED)
-- hurwitz_demo.M a demonstration of the toolbox. The only one yet. :-) Usage: make RACT\RACTDEMOS as current dir, and run it (ABSOLUTELY EDITABLE)
templates for users and developers -- tmpl_function.M template for user-defined function, that 1 -- should define a set of uncertain variables 2 -- should return an object by given samples of uncertain variables (EDITABLE) -- tmpl_help1.M inline help lines structure
script of an example to test. Unfortunately, I've failed to make use of it, so (SKIP & EDITABLE)
same as previous (SKIP & EDITABLE)
example of user-defined polynomial, the task is to check probability of stability of the uncertain polynomial. Used by HURWITZ_DEMO.M (ABSOLUTELY EDITABLE)
a try to implement construction of LQR-controller. Failed (seems to be error somewhere) (SKIP & EDITABLE)
!!ok, now the issue files!!
return array of uncertain object samples, by evaluating user-defined uncertain function on a number of samples allows vectorization (seems GOOD, by still EDITABLE)
check if a property of an uncertain object performs with accuracy Eps and
both the property and uncertain object given by links to user-defined functions. Chernoff bound used for the number of samples needed. (EDITABLE) It is the most thing possible in the toolbox.
return a portion of samples of uncertain object, for which a property satisfied (property and object are defined by user) Used to estimate of probabilty if perfomance. Few properties, namely 'unit', 'is_hurwitz', 'is_schur', 'is_positive_definite' are already implemented as subfunctions (ABSOLUTELY EDITABLE)
Keep in mind that only the perfomance probability estimation works.
User defines an uncertain object by creating and naming a function using the template TMPL_FUNCTION.M, this function must return an object itself or the value of a property (0 -- if not satisfied, 1 -- if satisfied)
User calls prob_est = UPROBPERF(user_function_name, 'hurwitz', Eps, Delta) where 'schur' or 'posdef' as second argument are possible to check corresponding property, or 'unit' if user function already returns the property of an uncertain object; Eps is accuracy and 1-Delta is confidence level.
Vectorization and parameter calling conventions. To discuss.
Found an incompatability with Matlab 6. Latest version at .