Skip to content

Commit 505e30b

Browse files
committed
change ab05nd docstring sections to numpydoc style
1 parent c8dc725 commit 505e30b

1 file changed

Lines changed: 68 additions & 62 deletions

File tree

‎slycot/analysis.py‎

Lines changed: 68 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -243,71 +243,77 @@ def ab05nd(n1,m1,p1,n2,A1,B1,C1,D1,A2,B2,C2,D2,alpha=1.0,ldwork=None):
243243
To obtain the state-space model (A,B,C,D) for the feedback inter-connection
244244
of two systems, each given in state-space form.
245245
246-
Required arguments:
247-
n1 : input int
248-
The number of state variables in the first system, i.e. the order
249-
of the matrix A1. n1 > 0.
250-
m1 : input int
251-
The number of input variables for the first system and the number
252-
of output variables from the second system. m1 > 0.
253-
p1 : input int
254-
The number of output variables from the first system and the number
255-
of input variables for the second system. p1 > 0.
256-
n2 : input int
257-
The number of state variables in the second system, i.e. the order
258-
of the matrix A2. n2 > 0.
259-
A1 : input rank-2 array('d') with bounds (n1,n1)
260-
The leading n1-by-n1 part of this array must contain the state
261-
transition matrix A1 for the first system.
262-
B1 : input rank-2 array('d') with bounds (n1,m1)
263-
The leading n1-by-m1 part of this array must contain the input/state
264-
matrix B1 for the first system.
265-
C1 : input rank-2 array('d') with bounds (p1,n1)
266-
The leading p1-by-n1 part of this array must contain the state/output
267-
matrix C1 for the first system.
268-
D1 : input rank-2 array('d') with bounds (p1,m1)
269-
The leading p1-by-m1 part of this array must contain the input/output
270-
matrix D1 for the first system.
271-
A2 : input rank-2 array('d') with bounds (n2,n2)
272-
The leading n2-by-n2 part of this array must contain the state
273-
transition matrix A2 for the second system.
274-
B2 : input rank-2 array('d') with bounds (n2,p1)
275-
The leading n2-by-p1 part of this array must contain the input/state
276-
matrix B2 for the second system.
277-
C2 : input rank-2 array('d') with bounds (m1,n2)
278-
The leading m1-by-n2 part of this array must contain the state/output
279-
matrix C2 for the second system.
280-
D2 : input rank-2 array('d') with bounds (m1,p1)
281-
The leading m1-by-p1 part of this array must contain the input/output
282-
matrix D2 for the second system.
283-
Optional arguments:
284-
alpha := 1.0 input float
285-
A coefficient multiplying the transfer-function matrix (or the
286-
output equation) of the second system. i.e alpha = +1 corresponds
287-
to positive feedback, and alpha = -1 corresponds to negative
288-
feedback.
289-
ldwork := max(p1*p1,m1*m1,n1*p1) input int
290-
The length of the cache array. ldwork >= max(p1*p1,m1*m1,n1*p1).
291-
Return objects:
292-
n : int
293-
The number of state variables (n1 + n2) in the connected system, i.e.
294-
the order of the matrix A, the number of rows of B and the number of
295-
columns of C.
296-
A : rank-2 array('d') with bounds (n1+n2,n1+n2)
297-
The leading n-by-n part of this array contains the state transition
298-
matrix A for the connected system.
299-
B : rank-2 array('d') with bounds (n1+n2,m1)
300-
The leading n-by-m1 part of this array contains the input/state
301-
matrix B for the connected system.
302-
C : rank-3 array('d') with bounds (p1,n1,n2)
303-
The leading p1-by-n part of this array contains the state/output
304-
matrix C for the connected system.
305-
D : rank-2 array('d') with bounds (p1,m1)
306-
The leading p1-by-m1 part of this array contains the input/output
307-
matrix D for the connected system.
246+
Parameters
247+
----------
248+
n1 : int
249+
The number of state variables in the first system, i.e. the order
250+
of the matrix A1. n1 > 0.
251+
m1 : int
252+
The number of input variables for the first system and the number
253+
of output variables from the second system. m1 > 0.
254+
p1 : int
255+
The number of output variables from the first system and the number
256+
of input variables for the second system. p1 > 0.
257+
n2 : int
258+
The number of state variables in the second system, i.e. the order
259+
of the matrix A2. n2 > 0.
260+
A1 : (n1,n1) array_like
261+
The leading n1-by-n1 part of this array must contain the state
262+
transition matrix A1 for the first system.
263+
B1 : (n1,m1) array_like
264+
The leading n1-by-m1 part of this array must contain the input/state
265+
matrix B1 for the first system.
266+
C1 : (p1,n1) array_like
267+
The leading p1-by-n1 part of this array must contain the state/output
268+
matrix C1 for the first system.
269+
D1 : (p1,m1) array_like
270+
The leading p1-by-m1 part of this array must contain the input/output
271+
matrix D1 for the first system.
272+
A2 : (n2,n2) array_like
273+
The leading n2-by-n2 part of this array must contain the state
274+
transition matrix A2 for the second system.
275+
B2 : (n2,p1) array_like
276+
The leading n2-by-p1 part of this array must contain the input/state
277+
matrix B2 for the second system.
278+
C2 : (m1,n2) array_like
279+
The leading m1-by-n2 part of this array must contain the state/output
280+
matrix C2 for the second system.
281+
D2 : (m1,p1) array_like
282+
The leading m1-by-p1 part of this array must contain the input/output
283+
matrix D2 for the second system.
284+
alpha : float, optional
285+
A coefficient multiplying the transfer-function matrix (or the
286+
output equation) of the second system. i.e alpha = +1 corresponds
287+
to positive feedback, and alpha = -1 corresponds to negative
288+
feedback.
289+
Default is `1.0`.
290+
ldwork : int, optional
291+
The length of the cache array. ldwork >= max(p1*p1,m1*m1,n1*p1).
292+
Default is max(p1*p1,m1*m1,n1*p1).
293+
294+
Returns
295+
-------
296+
n : int
297+
The number of state variables (n1 + n2) in the connected system, i.e.
298+
the order of the matrix A, the number of rows of B and the number of
299+
columns of C.
300+
A : (n1+n2,n1+n2) ndarray
301+
The leading n-by-n part of this array contains the state transition
302+
matrix A for the connected system.
303+
B : (n1+n2,m1) ndarray
304+
The leading n-by-m1 part of this array contains the input/state
305+
matrix B for the connected system.
306+
C : (p1,n1,n2) ndarray
307+
The leading p1-by-n part of this array contains the state/output
308+
matrix C for the connected system.
309+
D : (p1,m1) ndarray
310+
The leading p1-by-m1 part of this array contains the input/output
311+
matrix D for the connected system.
308312
309313
Raises
310314
------
315+
SlycotParameterError
316+
:info = -i: the i-th argument had an illegal value
311317
SlycotArithmeticError
312318
:1 <= info <= p1:
313319
the system is not completely controllable. That is, the matrix

0 commit comments

Comments
 (0)