For maximum convenience, easy-to-use interface M-functions are included in the identification toolbox, explicitly addressing some of supported features. Whenever possible, these M-functions allow to work with system objects defined in the MATLAB Control Toolbox.

The following table contains the list of implemented M-functions for linear and Wiener systems:

findR Input-output data preprocessing, using Cholesky or (fast) QR factorization and MOESP or N4SID identification techniques, and estimating the system order
findABCD System matrices and Kalman gain estimation, using MOESP, N4SID, or their combination
findAC Estimating the matrices A and C, using MOESP or N4SID
findBDK Estimating the matrices B, D, and Kalman gain K (given A and C), using MOESP or N4SID
findx0BD Estimating the initial state and/or the matrices B and D, given the matrices A, C, and a set of input-output data
inistate Estimating the initial state, given the system matrices, and a set of input-output data
slmoesp System matrices and the Kalman gain estimation, using MOESP technique
sln4sid System matrices and the Kalman gain estimation, using N4SID technique
slmoen4 System matrices and the Kalman gain estimation, using combined MOESP and N4SID techniques: A and C found via MOESP, and B and D, via N4SID
slmoesm System matrices, the Kalman gain, and initial state estimation, using combined MOESP and system simulation techniques
dsim Output response of a linear discrete-time system (much faster than the MATLAB function lsim)
o2s Conversion of a linear discrete-time system given in the output normal form to a state-space representation
s2o Conversion of a state-space representation of a linear discrete-time system into the output normal form
NNout Output response of a set of neural networks used to model the nonlinear part of a Wiener system

The first five M-functions allow to flexibly identify various system and covariance matrices for linear systems. The M-functions slmoesp, sln4sid, slmoen4, and slmoesm are method-oriented, and they also enable to efficiently estimate models of various orders.

The MEX-functions are more difficult to use than the provided M-functions, but allow a greater flexibility. They are called by the M-functions. The following table contains the list of MEX-files for linear and Wiener systems:

order Input-output data preprocessing, possibly sequentially, and finding an estimate of the system order
sident System matrices, Kalman predictor gain, and covariance matrices estimation, using MOESP, N4SID, or their combination
findBD Estimating the initial state and/or the matrices B and D, using A, C, and the input and output trajectories
ldsim Output response of a linear discrete-time system (much faster than the MATLAB function lsim)
onf2ss Conversion of a linear discrete-time system given in the output normal form to a state-space representation
ss2onf Conversion of a state-space representation of a linear discrete-time system into the output normal form
widentc Estimating a discrete-time model of a Wiener system using a neural network approach and a Levenberg-Marquardt algorithm (with a Cholesky-based, or a conjugate gradients solver)
wident Estimating a discrete-time model of a Wiener system using a neural network approach and a MINPACK-like Levenberg-Marquardt algorithm
Wiener Output response of a Wiener system

The MEX-files above provide interfaces to the main user-callable or computational routines for linear and Wiener systems identification, and cover all functionality available in the corresponding SLICOT identification routines.

Executable SLICOT MEX-files are provided for recent MATLAB releases running under WINDOWS and Linux. Demonstration packages can also be provided.

For purchasing licenses of SLICOT-based MATLAB Toolboxes, please contact the This email address is being protected from spambots. You need JavaScript enabled to view it..


This email address is being protected from spambots. You need JavaScript enabled to view it. February 2, 2005; October 18, 2009