Skip to content

Commit 6aa5f78

Browse files
committed
change ag08bd docstring sections to numpydoc style
1 parent e59f126 commit 6aa5f78

1 file changed

Lines changed: 74 additions & 69 deletions

File tree

‎slycot/analysis.py‎

Lines changed: 74 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1903,75 +1903,80 @@ def ag08bd(l,n,m,p,A,E,B,C,D,equil='N',tol=0.0,ldwork=None):
19031903
and left Kronecker indices, and the multiplicities of infinite
19041904
eigenvalues.
19051905
1906-
Required arguments:
1907-
l : input int
1908-
The number of rows of matrices A, B, and E. l >= 0.
1909-
n : input int
1910-
The number of columns of matrices A, E, and C. n >= 0.
1911-
m : input int
1912-
The number of columns of matrix B. m >= 0.
1913-
p : input int
1914-
The number of rows of matrix C. p >= 0.
1915-
A : rank-2 array('d') with bounds (l,n)
1916-
The leading l-by-n part of this array must
1917-
contain the state dynamics matrix A of the system.
1918-
E : rank-2 array('d') with bounds (l,n)
1919-
The leading l-by-n part of this array must
1920-
contain the descriptor matrix E of the system.
1921-
B : rank-2 array('d') with bounds (l,m)
1922-
The leading l-by-m part of this array must
1923-
contain the input/state matrix B of the system.
1924-
C : rank-2 array('d') with bounds (p,n)
1925-
The leading p-by-n part of this array must
1926-
contain the state/output matrix C of the system.
1927-
D : rank-2 array('d') with bounds (p,m)
1928-
The leading p-by-m part of this array must contain the
1929-
direct transmission matrix D of the system.
1930-
Optional arguments:
1931-
equil := 'N' input string(len=1)
1932-
Specifies whether the user wishes to balance the system
1933-
matrix as follows:
1934-
= 'S': Perform balancing (scaling);
1935-
= 'N': Do not perform balancing.
1936-
tol := 0 input float
1937-
A tolerance used in rank decisions to determine the
1938-
effective rank, which is defined as the order of the
1939-
largest leading (or trailing) triangular submatrix in the
1940-
QR (or RQ) factorization with column (or row) pivoting
1941-
whose estimated condition number is less than 1/TOL.
1942-
If the user sets TOL <= 0, then default tolerances are
1943-
used instead, as follows: TOLDEF = L*N*EPS in TG01FD
1944-
(to determine the rank of E) and TOLDEF = (L+P)*(N+M)*EPS
1945-
in the rest, where EPS is the machine precision
1946-
(see LAPACK Library routine DLAMCH). TOL < 1.
1947-
ldwork : input int
1948-
The length of the cache array.
1949-
ldwork >= max( 4*(l,n), ldw ), if equil = 'S',
1950-
ldwork >= ldw, if equil = 'N', where
1951-
ldw = max(l+p,m+n)*(m+n) + max(1,5*max(l+p,m+n)).
1952-
For optimum performance ldwork should be larger.
1953-
Return objects:
1954-
Af : rank-2 array('d')
1955-
the leading NFZ-by-NFZ part of this array
1956-
contains the matrix Af of the reduced pencil.
1957-
Ef : rank-2 array('d')
1958-
the leading NFZ-by-NFZ part of this array
1959-
contains the matrix Ef of the reduced pencil.
1960-
nrank : output int
1961-
The normal rank of the system pencil.
1962-
niz : output int
1963-
The number of infinite zeros.
1964-
infz : rank-1 array('i')
1965-
The leading DINFZ elements of infz contain information
1966-
on the infinite elementary divisors as follows:
1967-
the system has infz(i) infinite elementary divisors of
1968-
degree i in the Smith form, where i = 1,2,...,DINFZ.
1969-
kronr : rank-1 array('i')
1970-
The leading NKROR elements of this array contain the
1971-
right Kronecker (column) indices.
1972-
infe : rank-1 array('i')
1973-
The leading NINFE elements of infe contain the
1974-
multiplicities of infinite eigenvalues.
1906+
Parameters
1907+
----------
1908+
l : int
1909+
The number of rows of matrices A, B, and E. l >= 0.
1910+
n : int
1911+
The number of columns of matrices A, E, and C. n >= 0.
1912+
m : int
1913+
The number of columns of matrix B. m >= 0.
1914+
p : int
1915+
The number of rows of matrix C. p >= 0.
1916+
A : (l, n) array_like
1917+
The leading l-by-n part of this array must
1918+
contain the state dynamics matrix A of the system.
1919+
E : (l, n) array_like
1920+
The leading l-by-n part of this array must
1921+
contain the descriptor matrix E of the system.
1922+
B : (l, m) array_like
1923+
The leading l-by-m part of this array must
1924+
contain the input/state matrix B of the system.
1925+
C : (p, n) array_like
1926+
The leading p-by-n part of this array must
1927+
contain the state/output matrix C of the system.
1928+
D : (p, m) array_like
1929+
The leading p-by-m part of this array must contain the
1930+
direct transmission matrix D of the system.
1931+
equil : {'S', 'N'}, optional
1932+
Specifies whether the user wishes to balance the system
1933+
matrix as follows:
1934+
= 'S': Perform balancing (scaling);
1935+
= 'N': Do not perform balancing.
1936+
Default is `N`
1937+
tol : float, optional
1938+
A tolerance used in rank decisions to determine the
1939+
effective rank, which is defined as the order of the
1940+
largest leading (or trailing) triangular submatrix in the
1941+
QR (or RQ) factorization with column (or row) pivoting
1942+
whose estimated condition number is less than 1/TOL.
1943+
If the user sets TOL <= 0, then default tolerances are
1944+
used instead, as follows: TOLDEF = L*N*EPS in TG01FD
1945+
(to determine the rank of E) and TOLDEF = (L+P)*(N+M)*EPS
1946+
in the rest, where EPS is the machine precision
1947+
(see LAPACK Library routine DLAMCH). TOL < 1.
1948+
Default is 0.
1949+
ldwork : int, optional
1950+
The length of the cache array.
1951+
ldwork >= max( 4*(l,n), ldw ), if equil = 'S',
1952+
ldwork >= ldw, if equil = 'N', where
1953+
ldw = max(l+p,m+n)*(m+n) + max(1,5*max(l+p,m+n)).
1954+
For optimum performance ldwork should be larger.
1955+
Default is None.
1956+
1957+
Returns
1958+
-------
1959+
Af : (nfz, nfz) ndarray
1960+
the leading NFZ-by-NFZ part of this array
1961+
contains the matrix Af of the reduced pencil.
1962+
Ef : (nfz, nfz) ndarray
1963+
the leading NFZ-by-NFZ part of this array
1964+
contains the matrix Ef of the reduced pencil.
1965+
nrank : int
1966+
The normal rank of the system pencil.
1967+
niz : int
1968+
The number of infinite zeros.
1969+
infz : (n+1) ndarray
1970+
The leading DINFZ elements of infz contain information
1971+
on the infinite elementary divisors as follows:
1972+
the system has infz(i) infinite elementary divisors of
1973+
degree i in the Smith form, where i = 1,2,...,DINFZ.
1974+
kronr : (n+m+1) ndarray
1975+
The leading NKROR elements of this array contain the
1976+
right Kronecker (column) indices.
1977+
infe : (1+min(l+p,n+m)) ndarray
1978+
The leading NINFE elements of infe contain the
1979+
multiplicities of infinite eigenvalues.
19751980
"""
19761981
hidden = ' (hidden by the wrapper)'
19771982
arg_list = ['equil', 'l', 'n', 'm', 'p',

0 commit comments

Comments
 (0)