control.series

control.series(sys1, *sysn)

Return the series connection (… * sys3 *) sys2 * sys1

Parameters:
Returns:

out

Return type:

scalar, StateSpace, or TransferFunction

Raises:

ValueError – if sys2.inputs does not equal sys1.outputs if sys1.dt is not compatible with sys2.dt

Notes

This function is a wrapper for the __mul__ function in the StateSpace and TransferFunction classes. The output type is usually the type of sys2. If sys2 is a scalar, then the output type is the type of sys1.

If both systems have a defined timebase (dt = 0 for continuous time, dt > 0 for discrete time), then the timebase for both systems must match. If only one of the system has a timebase, the return timebase will be set to match it.

Examples

>>> sys3 = series(sys1, sys2) # Same as sys3 = sys2 * sys1
>>> sys5 = series(sys1, sys2, sys3, sys4) # More systems