JuliaControl logo
Star

ControlSystemIdentification

CI codecov

System identification for ControlSystems.jl.

System identification is the process of estimating a dynamical model from data. This packages estimates primarily linear time-invariant (LTI) models, in the form of statespace systems

\[\begin{aligned} x^+ &= Ax + Bu + Ke\\ y &= Cx + Du + e \end{aligned}\]

or in the form of transfer functions

\[Y(z) = \dfrac{B(z)}{A(z)}U(z)\]

This package is implemented in the free and open-source programming language Julia.

If you are new to this package, start your journey through the documentation by learning about Identification data. Examples are provided in the Examples section and in the form of jupyter notebooks here. An introductory video is available below (system identification example starts around 55 minutes)

Installation

Install Julia from the download page. Then, in the Julia REPL, type

using Pkg
Pkg.add("ControlSystemIdentification")

Optional: To work with linear systems and plot Bode plots etc., also install the control toolbox ControlSystems.jl package which this package builds upon, as well as the plotting package

Pkg.add(["ControlSystemsBase", "Plots"])

Other resources