From 03c6bf3cbdfee44f643587b3478905f2f3409c55 Mon Sep 17 00:00:00 2001 From: Richard Murray Date: Tue, 16 Apr 2024 22:30:46 -0700 Subject: [PATCH 1/2] set response I/O labels from system for frequency response --- control/lti.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/control/lti.py b/control/lti.py index cccb44a63..e631a6213 100644 --- a/control/lti.py +++ b/control/lti.py @@ -120,7 +120,8 @@ def frequency_response(self, omega=None, squeeze=None): response = self(s) return FrequencyResponseData( response, omega, return_magphase=True, squeeze=squeeze, - dt=self.dt, sysname=self.name, plot_type='bode') + dt=self.dt, sysname=self.name, inputs=self.input_labels, + outputs=self.output_labels, plot_type='bode') def dcgain(self): """Return the zero-frequency gain""" From 4905855d9ec2239ee95f3f65ed2d5979e1e212c0 Mon Sep 17 00:00:00 2001 From: Richard Murray Date: Sat, 20 Apr 2024 15:56:32 -0700 Subject: [PATCH 2/2] add better check for find_eqpt with mixed specifications --- control/nlsys.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/control/nlsys.py b/control/nlsys.py index c154c0818..8ccd49515 100644 --- a/control/nlsys.py +++ b/control/nlsys.py @@ -1746,9 +1746,9 @@ def find_eqpt(sys, x0, u0=None, y0=None, t=0, params=None, # Make sure the input arguments match the sizes of the system if len(x0) != nstates or \ - (u0 is not None and len(u0) != ninputs) or \ - (y0 is not None and len(y0) != noutputs) or \ - (dx0 is not None and len(dx0) != nstates): + (u0 is not None and iu is None and len(u0) != ninputs) or \ + (y0 is not None and iy is None and len(y0) != noutputs) or \ + (dx0 is not None and idx is None and len(dx0) != nstates): raise ValueError("length of input arguments does not match system") # Update the parameter values