-
Notifications
You must be signed in to change notification settings - Fork 446
Open
Description
The place_acker function works for SISO systems only and returns 1D array instead of 2D array.
1D->2D array can be corrected in:
python-control/control/statefbk.py
Line 254 in 4242976
| K = K[-1, :] # Extract the last row |
The original line
K = K[-1, :] # Extract the last row
should be changed for
K = K[-1:, :] # Extract the last row
MIMO system specification throws errors. Here is an example:
import numpy as np
import control as ct
nx = 3
nu = 1
ny = 1
sys = ct.rss(states=nx, inputs=nu, outputs=ny)
poles = - np.arange(1, nx+1, 1)
Kp = ct.place(sys.A, sys.B, poles)
Ka = ct.acker(sys.A, sys.B, poles)
print(Kp.shape, Ka.shape)
nx = 3
nu = 2
ny = 2
sys = ct.rss(states=nx, inputs=nu, outputs=ny)
poles = - np.arange(1, nx+1, 1)
Kp = ct.place(sys.A, sys.B, poles)
Ka = ct.acker(sys.A, sys.B, poles)
Metadata
Metadata
Assignees
Labels
No labels