control.split_tf

control.split_tf(transfer_function)[source]

Split MIMO transfer function into SISO transfer functions.

System and signal names for the array of SISO transfer functions are copied from the MIMO system.

Parameters
transfer_functionTransferFunction

MIMO transfer function to split.

Returns
ndarray

NumPy array of SISO transfer functions.

Examples

Split a MIMO transfer function:

>>> G = ct.tf(
...     [ [[87.8], [-86.4]],
...       [[108.2], [-109.6]] ],
...     [ [[1, 1], [1, 1]],
...       [[1, 1], [1, 1]],   ],
...     name='G'
... )
>>> ct.split_tf(G)
array([[TransferFunction(
        array([87.8]),
        array([1, 1]),
        name='G', outputs=1, inputs=1), TransferFunction(
                                        array([-86.4]),
                                        array([1, 1]),
                                        name='G', outputs=1, inputs=1)],
       [TransferFunction(
        array([108.2]),
        array([1, 1]),
        name='G', outputs=1, inputs=1), TransferFunction(
                                        array([-109.6]),
                                        array([1, 1]),
                                        name='G', outputs=1, inputs=1)]],
      dtype=object)