@@ -399,25 +399,6 @@ def test_freq_resp(self):
399399 mag , phase , omega = sys .freqresp (true_omega )
400400 np .testing .assert_almost_equal (mag , true_mag )
401401
402- def test__isstatic (self ):
403- A0 = np .zeros ((2 ,2 ))
404- A1 = A0 .copy ()
405- A1 [0 ,1 ] = 1.1
406- B0 = np .zeros ((2 ,1 ))
407- B1 = B0 .copy ()
408- B1 [0 ,0 ] = 1.3
409- C0 = A0
410- C1 = np .eye (2 )
411- D0 = 0
412- D1 = np .ones ((2 ,1 ))
413- assert StateSpace (A0 , B0 , C1 , D1 )._isstatic ()
414- assert not StateSpace (A1 , B0 , C1 , D1 )._isstatic ()
415- assert not StateSpace (A0 , B1 , C1 , D1 )._isstatic ()
416- assert not StateSpace (A1 , B1 , C1 , D1 )._isstatic ()
417- assert StateSpace (A0 , B0 , C0 , D0 )._isstatic ()
418- assert StateSpace (A0 , B0 , C0 , D1 )._isstatic ()
419- assert StateSpace (A0 , B0 , C1 , D0 )._isstatic ()
420-
421402 @slycotonly
422403 def test_minreal (self ):
423404 """Test a minreal model reduction."""
@@ -1160,6 +1141,20 @@ def test_linfnorm_ct_mimo(self, ct_siso):
11601141 np .testing .assert_allclose (fpeak , reffpeak )
11611142
11621143
1144+ @pytest .mark .parametrize ("args, static" , [
1145+ (([], [], [], 1 ), True ), # ctime, empty state
1146+ (([], [], [], 1 , 1 ), True ), # dtime, empty state
1147+ ((0 , 0 , 0 , 1 ), False ), # ctime, unused state
1148+ ((- 1 , 0 , 0 , 1 ), False ), # ctime, exponential decay
1149+ ((- 1 , 0 , 0 , 0 ), False ), # ctime, no input, no output
1150+ ((0 , 0 , 0 , 1 , 1 ), False ), # dtime, integrator
1151+ ((1 , 0 , 0 , 1 , 1 ), False ), # dtime, unused state
1152+ ((0 , 0 , 0 , 1 , None ), False ), # unspecified, unused state
1153+ ])
1154+ def test_isstatic (args , static ):
1155+ sys = ct .StateSpace (* args )
1156+ assert sys ._isstatic () == static
1157+
11631158# Make sure that using params for StateSpace objects generates a warning
11641159def test_params_warning ():
11651160 sys = StateSpace (- 1 , 1 , 1 , 0 )
@@ -1169,4 +1164,3 @@ def test_params_warning():
11691164
11701165 with pytest .warns (UserWarning , match = "params keyword ignored" ):
11711166 sys .output (0 , [0 ], [0 ], {'k' : 5 })
1172-
0 commit comments