@@ -99,9 +99,17 @@ def series(sys1, *sysn):
99
99
100
100
Examples
101
101
--------
102
- >>> sys3 = series(sys1, sys2) # Same as sys3 = sys2 * sys1
103
-
104
- >>> sys5 = series(sys1, sys2, sys3, sys4) # More systems
102
+ >>> G1 = ct.rss(3)
103
+ >>> G2 = ct.rss(4)
104
+ >>> G = ct.series(G1, G2) # Same as sys3 = sys2 * sys1
105
+ >>> G.ninputs, G.noutputs, G.nstates
106
+ (1, 1, 7)
107
+
108
+ >>> G1 = ct.rss(2, inputs=2, outputs=3)
109
+ >>> G2 = ct.rss(3, inputs=3, outputs=1)
110
+ >>> G = ct.series(G1, G2) # Same as sys3 = sys2 * sys1
111
+ >>> G.ninputs, G.noutputs, G.nstates
112
+ (2, 1, 5)
105
113
106
114
"""
107
115
from functools import reduce
@@ -146,9 +154,17 @@ def parallel(sys1, *sysn):
146
154
147
155
Examples
148
156
--------
149
- >>> sys3 = parallel(sys1, sys2) # Same as sys3 = sys1 + sys2
150
-
151
- >>> sys5 = parallel(sys1, sys2, sys3, sys4) # More systems
157
+ >>> G1 = ct.rss(3)
158
+ >>> G2 = ct.rss(4)
159
+ >>> G = ct.parallel(G1, G2) # Same as sys3 = sys1 + sys2
160
+ >>> G.ninputs, G.noutputs, G.nstates
161
+ (1, 1, 7)
162
+
163
+ >>> G1 = ct.rss(3, inputs=3, outputs=4)
164
+ >>> G2 = ct.rss(4, inputs=3, outputs=4)
165
+ >>> G = ct.parallel(G1, G2) # Add another system
166
+ >>> G.ninputs, G.noutputs, G.nstates
167
+ (3, 4, 7)
152
168
153
169
"""
154
170
from functools import reduce
@@ -174,7 +190,13 @@ def negate(sys):
174
190
175
191
Examples
176
192
--------
177
- >>> sys2 = negate(sys1) # Same as sys2 = -sys1.
193
+ >>> G = ct.tf([2], [1, 1])
194
+ >>> G.dcgain()
195
+ 2.0
196
+
197
+ >>> Gn = ct.negate(G) # Same as sys2 = -sys1.
198
+ >>> Gn.dcgain()
199
+ -2.0
178
200
179
201
"""
180
202
return - sys
@@ -222,6 +244,14 @@ def feedback(sys1, sys2=1, sign=-1):
222
244
the corresponding feedback function is used. If `sys1` and `sys2` are both
223
245
scalars, then TransferFunction.feedback is used.
224
246
247
+ Examples
248
+ --------
249
+ >>> G = ct.rss(3, inputs=2, outputs=5)
250
+ >>> C = ct.rss(4, inputs=5, outputs=2)
251
+ >>> T = ct.feedback(G, C, sign=1)
252
+ >>> T.ninputs, T.noutputs, T.nstates
253
+ (2, 5, 7)
254
+
225
255
"""
226
256
# Allow anything with a feedback function to call that function
227
257
try :
@@ -278,9 +308,17 @@ def append(*sys):
278
308
279
309
Examples
280
310
--------
281
- >>> sys1 = ss([[1., -2], [3., -4]], [[5.], [7]], [[6., 8]], [[9.]])
282
- >>> sys2 = ss([[-1.]], [[1.]], [[1.]], [[0.]])
283
- >>> sys = append(sys1, sys2)
311
+ >>> G1 = ct.rss(3)
312
+ >>> G2 = ct.rss(4)
313
+ >>> G = ct.append(G1, G2)
314
+ >>> G.ninputs, G.noutputs, G.nstates
315
+ (2, 2, 7)
316
+
317
+ >>> G1 = ct.rss(3, inputs=2, outputs=4)
318
+ >>> G2 = ct.rss(4, inputs=1, outputs=4)
319
+ >>> G = ct.append(G1, G2)
320
+ >>> G.ninputs, G.noutputs, G.nstates
321
+ (3, 8, 7)
284
322
285
323
"""
286
324
s1 = ss ._convert_to_statespace (sys [0 ])
@@ -323,11 +361,11 @@ def connect(sys, Q, inputv, outputv):
323
361
324
362
Examples
325
363
--------
326
- >>> sys1 = ss([[1., -2], [3., -4]], [[5.], [7]], [[6, 8]], [[9.]] )
327
- >>> sys2 = ss([[-1.]], [[1.]] , [[1.]], [[0.]])
328
- >>> sys = append(sys1, sys2 )
329
- >>> Q = [[1, 2], [2, -1]] # negative feedback interconnection
330
- >>> sysc = connect(sys, Q, [2], [1, 2] )
364
+ >>> G = ct.rss(7, inputs=2, outputs=2 )
365
+ >>> K = [[1, 2] , [2, -1]] # negative feedback interconnection
366
+ >>> T = ct.connect(G, K, [2], [1, 2] )
367
+ >>> T.ninputs, T.noutputs, T.nstates
368
+ (1, 2, 7 )
331
369
332
370
Notes
333
371
-----
0 commit comments