Control system classes

The classes listed below are used to represent models of linear time-invariant (LTI) systems. They are usually created from factory functions such as tf() and ss(), so the user should normally not need to instantiate these directly.

TransferFunction(num, den[, dt])

A class for representing transfer functions

StateSpace(A, B, C, D[, dt])

A class for representing state-space models

FrequencyResponseData(d, w)

A class for models defined by frequency response data (FRD)

InputOutputSystem([inputs, outputs, states, …])

A class for representing input/output systems.

Input/output system subclasses

Input/output systems are accessed primarily via a set of subclasses that allow for linear, nonlinear, and interconnected elements:

InterconnectedSystem(syslist[, connections, …])

Interconnection of a set of input/output systems.

LinearICSystem(io_sys[, ss_sys])

Interconnection of a set of linear input/output systems.

LinearIOSystem(linsys[, inputs, outputs, …])

Input/output representation of a linear (state space) system.

NonlinearIOSystem(updfcn[, outfcn, inputs, …])

Nonlinear I/O system.

Additional classes


Base class for implementing basis functions for flat systems.

flatsys.FlatSystem(forward, reverse[, …])

Base class for representing a differentially flat system.

flatsys.LinearFlatSystem(linsys[, inputs, …])


Polynomial basis functions.

flatsys.SystemTrajectory(sys, basis[, …])

Class representing a system trajectory.

optimal.OptimalControlProblem(sys, timepts, …)

Description of a finite horizon, optimal control problem