The SMART library of the SMAC toolbox can be used on all platforms (Linux, Mac and Windows).

All routines run on Matlab 2012b or higher. They should run on older releases, but no validation has been performed.

The Control System toolbox and the Robust Control toolbox are always required. The Optimization toolbox can be required to compute an upper bound on the (skewed) robust stability margin, a lower bound on the worst-case $\mathcal{H}_\infty$ performance level, or an upper bound on the worst-case gain, modulus, phase or delay margin.

The routines can be divided into three categories:

- The first ones are designed for non-expert users. Preliminary tests, uncertainties normalization and data conversion are performed automatically. The computational method which is the most adapted to the considered problem is then selected and the analysis is finally performed using default values of the optional tuning parameters.
- The second ones are designed for expert users. Only preliminary tests are performed automatically, whereas uncertainties normalization and possible conversion from USS, GSS or LFR object to standard Matlab variables must be performed first by the user, either manually or using the routine
`convert_data`

. Rectangular uncertainty blocks must also be made square, either manually of using the routine`make_square`

. Finally, the most suitable analysis routine must be chosen manually and all optional tuning parameters can be freely customized. - The third ones are subroutines, which can occasionally be called by the user.

In all routines dedicated to non-expert users, the uncertain system can be described with:

- a USS object,
- a GSS object obtained using the
**GSS library**of the SMAC toolbox, - a LFR object obtained using the
**LFR toolbox**version 2.0 or higher, - a SS object representing the nominal system and a 2-columns matrix describing the uncertainties structure as in the classical routine
`mussv`

of the Robust Control toolbox.

In all other routines, it must be described by a SS object and a 2 or 3-columns matrix, whose first two columns are the same as before and whose third one can be used to specify the skew nature of the uncertainties.

The following descriptions of the uncertainties are not recognized:

- a UMAT object
`delta`

obtained for example from a USS object using the routine`lftdata`

, - a matrix
`delta`

obtained using the routines`ublock`

and`udiag`

.

The form below is intended to help the user choose the most appropriate analysis routine. But you have to log in first!