[Ai,Bi,Ci,Di] = deti(u,y)
Function deti(u,y) identifies a discrete-time state space system (calculates matrices A,B,C,D and system's order) using input/output measurements only. The function does not require large amount of input/output measurements in order to produce good and stable results. An amount of about 45-50 measurements is usually enough. Although, be sure you provide enough amount of input/output measurements.
Input argument u: Input measurements of the system we want to identify.
Input argument y: Output measurements of the system we want to identify.
The function returns the identified matrices Ai,Bi,Ci,Di, the rank of the system and the goodness of fit between the identified and the original system.
Warning: There is a small chance for the function to produce a system with deficient order(rank). Depending on the amount of input/output measurements the function will produce a better estimation.
Note, that this function only works for (linear) discrete-time state space systems, without disturbances in our input/output measurements.
 Moonen M., DeMoor B., Vandenberghe L., Vandewalle J., On And Off-line
Identification of Linear State Space Models, International Journal of Control,
Vol. 49(1), pp. 219-232, 1989
 Van Overschee P., DeMoor B. Subspace Identification For Linear Systems:
Theory, Implementations And Applications, Kluwer Academic Publishers,
Michail Tsiaousis (2023). Deterministic Identification for Discrete-time State Space Systems (https://www.mathworks.com/matlabcentral/fileexchange/53245-deterministic-identification-for-discrete-time-state-space-systems), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!