@@ -99,9 +99,19 @@ def series(sys1, *sysn):
9999
100100 Examples
101101 --------
102- >>> sys3 = series(sys1, sys2) # Same as sys3 = sys2 * sys1
102+ >>> from control import rss, series
103103
104- >>> sys5 = series(sys1, sys2, sys3, sys4) # More systems
104+ >>> G1 = rss(3)
105+ >>> G2 = rss(4)
106+ >>> G = series(G1, G2) # Same as sys3 = sys2 * sys1
107+ >>> G.ninputs, G.noutputs, G.nstates
108+ (1, 1, 7)
109+
110+ >>> G1 = rss(2, inputs=2, outputs=3)
111+ >>> G2 = rss(3, inputs=3, outputs=1)
112+ >>> G = series(G1, G2) # Same as sys3 = sys2 * sys1
113+ >>> G.ninputs, G.noutputs, G.nstates
114+ (2, 1, 5)
105115
106116 """
107117 from functools import reduce
@@ -146,9 +156,19 @@ def parallel(sys1, *sysn):
146156
147157 Examples
148158 --------
149- >>> sys3 = parallel(sys1, sys2) # Same as sys3 = sys1 + sys2
159+ >>> from control import parallel, rss
160+
161+ >>> G1 = rss(3)
162+ >>> G2 = rss(4)
163+ >>> G = parallel(G1, G2) # Same as sys3 = sys1 + sys2
164+ >>> G.ninputs, G.noutputs, G.nstates
165+ (1, 1, 7)
150166
151- >>> sys5 = parallel(sys1, sys2, sys3, sys4) # More systems
167+ >>> G1 = rss(3, inputs=3, outputs=4)
168+ >>> G2 = rss(4, inputs=3, outputs=4)
169+ >>> G = parallel(G1, G2) # Add another system
170+ >>> G.ninputs, G.noutputs, G.nstates
171+ (3, 4, 7)
152172
153173 """
154174 from functools import reduce
@@ -174,7 +194,15 @@ def negate(sys):
174194
175195 Examples
176196 --------
177- >>> sys2 = negate(sys1) # Same as sys2 = -sys1.
197+ >>> from control import negate, tf
198+
199+ >>> G = tf([2],[1, 1])
200+ >>> G.dcgain() > 0
201+ True
202+
203+ >>> Gn = negate(G) # Same as sys2 = -sys1.
204+ >>> Gn.dcgain() < 0
205+ True
178206
179207 """
180208 return - sys
@@ -222,6 +250,16 @@ def feedback(sys1, sys2=1, sign=-1):
222250 the corresponding feedback function is used. If `sys1` and `sys2` are both
223251 scalars, then TransferFunction.feedback is used.
224252
253+ Examples
254+ --------
255+ >>> from control import feedback, rss
256+
257+ >>> G = rss(3, inputs=2, outputs=5)
258+ >>> C = rss(4, inputs=5, outputs=2)
259+ >>> T = feedback(G, C, sign=1)
260+ >>> T.ninputs, T.noutputs, T.nstates
261+ (2, 5, 7)
262+
225263 """
226264 # Allow anything with a feedback function to call that function
227265 try :
@@ -278,9 +316,19 @@ def append(*sys):
278316
279317 Examples
280318 --------
281- >>> sys1 = ss([[1., -2], [3., -4]], [[5.], [7]], [[6., 8]], [[9.]])
282- >>> sys2 = ss([[-1.]], [[1.]], [[1.]], [[0.]])
283- >>> sys = append(sys1, sys2)
319+ >>> from control import append, rss
320+ >>> G1 = rss(3)
321+
322+ >>> G2 = rss(4)
323+ >>> G = append(G1, G2)
324+ >>> G.ninputs, G.noutputs, G.nstates
325+ (2, 2, 7)
326+
327+ >>> G1 = rss(3, inputs=2, outputs=4)
328+ >>> G2 = rss(4, inputs=1, outputs=4)
329+ >>> G = append(G1, G2)
330+ >>> G.ninputs, G.noutputs, G.nstates
331+ (3, 8, 7)
284332
285333 """
286334 s1 = ss ._convert_to_statespace (sys [0 ])
@@ -323,11 +371,13 @@ def connect(sys, Q, inputv, outputv):
323371
324372 Examples
325373 --------
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])
374+ >>> from control import append, connect, rss
375+
376+ >>> G = rss(7, inputs=2, outputs=2)
377+ >>> K = [[1, 2], [2, -1]] # negative feedback interconnection
378+ >>> T = connect(G, K, [2], [1, 2])
379+ >>> T.ninputs, T.noutputs, T.nstates
380+ (1, 2, 7)
331381
332382 Notes
333383 -----
0 commit comments