SLICOT SUPPORTING ROUTINES INDEX


To go to the beginning of a chapter click on the appropriate letter below:

A ; B ; C ; D ; F ; I ; M ; N ; S ; T ; U ;

or Return to SLICOT homepage
or Go to SLICOT LIBRARY INDEX


A - Analysis Routines

AB - State-Space Analysis

Poles, Zeros, Gain


AB08NX   Construction of a reduced system with input/output matrix Dr of full 
         row rank, preserving transmission zeros

Model Reduction


AB09AX   Balance & Truncate model reduction with state matrix in real Schur form  

AB09BX   Singular perturbation approximation based model reduction with state
         matrix in real Schur form 

AB09CX   Hankel norm approximation based model reduction with state matrix
         in real Schur form 

AB09HX   Stochastic balancing model reduction of stable systems

AB09HY   Cholesky factors of the controllability and observability Grammians

AB09IX   Accuracy enhanced balancing related model reduction

AB09IY   Cholesky factors of the frequency-weighted controllability and 
         observability Grammians

AB09JV   State-space representation of a projection of a left weighted 
         transfer-function matrix

AB09JW   State-space representation of a projection of a right weighted 
         transfer-function matrix

AB09JX   Check stability/antistability of finite eigenvalues

AB09KX   Stable projection of V*G*W or conj(V)*G*conj(W)

System Norms


AB13AX   Hankel-norm of a stable system with state matrix in real Schur form  

AB13DX   Maximum singular value of a transfer-function matrix

AG - Generalized State-Space Analysis

Poles, Zeros, Gain


AG08BY   Construction of a reduced system with input/output matrix Dr of full 
         row rank, preserving the finite Smith zeros

B - Benchmark and Test Problems


C - Adaptive Control


D - Data Analysis

DE - Covariances

DF - Spectra

DG - Discrete Fourier Transforms

DK - Windowing


F - Filtering

FB - Kalman Filters


I - Identification

IB - Subspace Identification

Time Invariant State-space Systems


IB01MD   Upper triangular factor in QR factorization of a
         block-Hankel-block matrix

IB01MY   Upper triangular factor in fast QR factorization of a 
         block-Hankel-block matrix

IB01ND   Singular value decomposition giving the system order

IB01OD   Estimating the system order

IB01OY   User's confirmation of the system order

IB01PD   Estimating the system matrices and covariances

IB01PX   Estimating the matrices B and D of a system using Kronecker products

IB01PY   Estimating the matrices B and D of a system exploiting the structure

IB01QD   Estimating the initial state and the matrices B and D of a system

IB01RD   Estimating the initial state of a system

M - Mathematical Routines

MA - Auxiliary Routines

Mathematical Scalar Routines


MA01AD   Complex square root of a complex number in real arithmetic

Mathematical Vector/Matrix Routines


MA02AD   Transpose of a matrix

MA02BD   Reversing the order of rows and/or columns of a matrix

MA02CD   Pertranspose of the central band of a square matrix 

MA02DD   Pack/unpack the upper or lower triangle of a symmetric matrix 

MA02ED   Construct a triangle of a symmetric matrix, given the other triangle 

MA02FD   Hyperbolic plane rotation 

MA02GD   Column interchanges on the matrix 

MA02HD   Check if a matrix is a scalar multiple of an identity-like matrix

MB01SD   Rows and/or columns scaling of a matrix 

MB - Linear Algebra

Basic Linear Algebra Manipulations


MB01RU   Computation of matrix expression alpha*R + beta*A*X*trans(A)
         (MB01RD variant)

MB01RW   Computation of matrix expression alpha*A*X*trans(A), X symmetric (BLAS 2)

MB01RX   Computing a triangle of the matrix expressions alpha*R + beta*A*B 
         or alpha*R + beta*B*A

MB01RY   Computing a triangle of the matrix expressions alpha*R + beta*H*B 
         or alpha*R + beta*B*H, with H an upper Hessenberg matrix

MB01UW   Computation of matrix expressions alpha*H*A or alpha*A*H,
         overwritting A, with H an upper Hessenberg matrix

MB01VD   Kronecker product of two matrices

MB01XY   Computation of the product U'*U or L*L', with U and L upper and 
         lower triangular matrices (unblock algorithm)

SB03OV   Construction of a complex plane rotation to annihilate a real number,
         modifying a complex number

SG03BY   Computing a complex plane rotation in real arithmetic 

Linear Equations and Least Squares


MB02CU   Bringing the first blocks of a generator in proper form
         (extended version of MB02CX)

MB02CV   Applying the MB02CU transformations on other columns / rows of 
         the generator

MB02CX   Bringing the first blocks of a generator in proper form

MB02CY   Applying the MB02CX transformations on other columns / rows of 
         the generator

MB02NY   Separation of a zero singular value of a bidiagonal submatrix

MB02QY   Minimum-norm least squares solution, given a rank-revealing
         QR factorization

MB02UU   Solution of linear equations using LU factorization with complete pivoting

MB02UV   LU factorization with complete pivoting

MB02WD   Solution of a positive definite linear system A*x = b, or f(A, x) = b,
         using conjugate gradient algorithm

MB02XD   Solution of a set of positive definite linear systems, A'*A*X = B, or
         f(A)*X = B, using Gaussian elimination

MB02YD   Solution of the linear system A*x = b, D*x = 0, D diagonal

Eigenvalues and Eigenvectors


MB03NY   The smallest singular value of A - jwI

MB03OY   Matrix rank determination by incremental condition estimation, during 
         the pivoted QR factorization process 

MB03PY   Matrix rank determination by incremental condition estimation, during 
         the pivoted RQ factorization process (row pivoting) 

MB03QX   Eigenvalues of an upper quasi-triangular matrix

MB03QY   Transformation to Schur canonical form of a selected 2-by-2 diagonal
         block of an upper quasi-triangular matrix

MB03RX   Reordering the diagonal blocks of a principal submatrix of a real Schur 
         form matrix

MB03RY   Tentative solution of Sylvester equation -AX + XB = C (A, B in real 
         Schur form)

MB03VY   Generating orthogonal matrices for reduction to periodic 
         Hessenberg form of a product of matrices

MB03WX   Eigenvalues of a product of matrices, T = T_1*T_2*...*T_p,
         with T_1 upper quasi-triangular and T_2, ..., T_p upper triangular 

MB05MY   Computing an orthogonal matrix reducing a matrix to real Schur form T, 
         the eigenvalues, and the upper triangular matrix of right eigenvectors 
         of T 

MB05OY   Restoring a matrix after balancing transformations

Decompositions and Transformations


MB04DY   Symplectic scaling of a Hamiltonian matrix

MB04IY   Applying the product of elementary reflectors used for QR factorization
         of a matrix having a lower left zero triangle

MB04NY   Applying an elementary reflector to a matrix C = ( A  B ), from the right, 
         where A has one column

MB04OY   Applying an elementary reflector to a matrix C = ( A'  B' )', from the 
         left, where A has one row

MB04OW   Rank-one update of a Cholesky factorization for a 2-by-2 block matrix

MB04OX   Rank-one update of a Cholesky factorization

MB04PY   Applying an elementary reflector to a matrix from the left or right

MB04TU   Applying a row-permuted Givens transformation to two row vectors

MB04XY   Applying Householder transformations for bidiagonalization (stored 
         in factored form) to one or two matrices, from the left

MB04YW   One QR or QL iteration step onto an unreduced bidiagonal submatrix 
         of a bidiagonal matrix

MC - Polynomial and Rational Function Manipulation

Scalar Polynomials


MC01PY   Coefficients of a real polynomial, stored in decreasing order, 
         given its zeros         

Polynomial Matrices


MC03NX   Construction of a pencil sE-A related to a given polynomial matrix  

MD - Optimization

Unconstrained Nonlinear Least Squares


MD03BX   QR factorization with column pivoting and error vector 
         transformation

MD03BY   Finding the Levenberg-Marquardt parameter

N - Nonlinear Systems

NF - Wiener Systems

Wiener Systems Identification


NF01AD   Computing the output of a Wiener system  

NF01AY   Computing the output of a set of neural networks

NF01BD   Computing the Jacobian of a Wiener system  

NF01BP   Finding the Levenberg-Marquardt parameter

NF01BQ   Solution of the linear system J*x = b, D*x = 0, D diagonal

NF01BR   Solution of the linear system op(R)*x = b, R block upper 
         triangular stored in a compressed form

NF01BS   QR factorization of a structured Jacobian matrix

NF01BU   Computing J'*J + c*I, for the Jacobian J given in a
         compressed form

NF01BV   Computing J'*J + c*I, for a full Jacobian J (one output
         variable)

NF01BW   Matrix-vector product x <-- (J'*J + c*I)*x, for J in a
         compressed form

NF01BX   Matrix-vector product x <-- (A'*A + c*I)*x, for a
         full matrix A

NF01BY   Computing the Jacobian of the error function for a neural 
         network (for one output variable)

S - Synthesis Routines

SB - State-Space Synthesis

Eigenvalue/Eigenvector Assignment


SB01BX   Choosing the closest real (complex conjugate) eigenvalue(s) to
         a given real (complex) value

SB01BY   Pole placement for systems of order 1 or 2

SB01FY   Inner denominator of a right-coprime factorization of an unstable system
         of order 1 or 2

Riccati Equations


SB02MU   Constructing the 2n-by-2n Hamiltonian or symplectic matrix for
         linear-quadratic optimization problems

SB02RU   Constructing the 2n-by-2n Hamiltonian or symplectic matrix for
         linear-quadratic optimization problems (efficient and accurate
         version of SB02MU)

SB02OY   Constructing and compressing the extended Hamiltonian or symplectic 
         matrix pairs for linear-quadratic optimization problems

Lyapunov Equations


SB03MV   Solving a discrete-time Lyapunov equation for a 2-by-2 matrix

SB03MW   Solving a continuous-time Lyapunov equation for a 2-by-2 matrix

SB03MX   Solving a discrete-time Lyapunov equation with matrix A quasi-triangular

SB03MY   Solving a continuous-time Lyapunov equation with matrix A quasi-triangular

SB03OT   Solving (for Cholesky factor) stable continuous- or discrete-time 
         Lyapunov equations, with A quasi-triangular and R triangular

SB03OU   Solving (for Cholesky factor) stable continuous- or discrete-time 
         Lyapunov equations, with A in real Schur form and B rectangular

SB03OY   Solving (for Cholesky factor) stable 2-by-2 continuous- or discrete-time
         Lyapunov equations, with matrix A having complex conjugate eigenvalues

SB03QX   Forward error bound for continuous-time Lyapunov equations

SB03QY   Separation and Theta norm for continuous-time Lyapunov equations

SB03SX   Forward error bound for discrete-time Lyapunov equations

SB03SY   Separation and Theta norm for discrete-time Lyapunov equations

Sylvester Equations


SB03MU   Solving a discrete-time Sylvester equation for an m-by-n matrix X, 
         1 <= m,n <= 2

SB03OR   Solving quasi-triangular continuous- or discrete-time Sylvester equations, 
         for an n-by-m matrix X, 1 <= m <= 2

SB04MR   Solving a linear algebraic system whose coefficient matrix (stored 
         compactly) has zeros below the second subdiagonal

SB04MU   Constructing and solving a linear algebraic system whose coefficient 
         matrix (stored compactly) has zeros below the second subdiagonal 

SB04MW   Solving a linear algebraic system whose coefficient matrix (stored 
         compactly) has zeros below the first subdiagonal

SB04MY   Constructing and solving a linear algebraic system whose coefficient 
         matrix (stored compactly) has zeros below the first subdiagonal

SB04NV   Constructing right-hand sides for a system of equations in 
         Hessenberg form solved via SB04NX

SB04NW   Constructing the right-hand side for a system of equations in 
         Hessenberg form solved via SB04NY 

SB04NX   Solving a system of equations in Hessenberg form with two consecutive 
         offdiagonals and two right-hand sides 

SB04NY   Solving a system of equations in Hessenberg form with one offdiagonal 
         and one right-hand side 

SB04PX   Solving a discrete-time Sylvester equation for matrices of order <= 2

SB04PY   Solving a discrete-time Sylvester equation with matrices in Schur form

SB04QR   Solving a linear algebraic system whose coefficient matrix (stored 
         compactly) has zeros below the third subdiagonal

SB04QU   Constructing and solving a linear algebraic system whose coefficient 
         matrix (stored compactly) has zeros below the third subdiagonal

SB04QY   Constructing and solving a linear algebraic system whose coefficient 
         matrix (stored compactly) has zeros below the first subdiagonal
         (discrete-time case)

SB04RV   Constructing right-hand sides for a system of equations in 
         Hessenberg form solved via SB04RX

SB04RW   Constructing the right-hand side for a system of equations in 
         Hessenberg form solved via SB04RY 

SB04RX   Solving a system of equations in Hessenberg form with two consecutive 
         offdiagonals and two right-hand sides (discrete-time case) 

SB04RY   Solving a system of equations in Hessenberg form with one offdiagonal 
         and one right-hand side (discrete-time case) 

Optimal Regulator Problems


SB10JD    Conversion of a descriptor state-space system into regular 
          state-space form

SB10LD    Closed-loop system matrices for a system with robust controller

SB10PD    Normalization of a system for H-infinity controller design

SB10QD    State feedback and output injection matrices for an H-infinity
          (sub)optimal state controller (continuous-time)

SB10RD    H-infinity (sub)optimal controller matrices using state feedback
          and output injection matrices (continuous-time)

SB10SD    H2 optimal controller matrices for a normalized discrete-time system

SB10TD    H2 optimal controller matrices for a discrete-time system

SB10UD    Normalization of a system for H2 controller design

SB10VD    State feedback and output injection matrices for an H2 optimal
          state controller (continuous-time)

SB10WD    H2 optimal controller matrices using state feedback and
          output injection matrices (continuous-time)

SB10YD    Fitting frequency response data with a stable, minimum phase
          SISO system

SB10ZP    Transforming a SISO system into a stable and minimum phase one

Controller Reduction


SB16AY    Cholesky factors of the frequency-weighted controllability and 
          observability Grammians for controller reduction

SB16CY    Cholesky factors of controllability and observability Grammians
          of coprime factors of a state-feedback controller

SG - Generalized State-Space Synthesis

Generalized Lyapunov Equations


SG03AX   Solving a generalized discrete-time Lyapunov equation with 
         A quasi-triangular and E upper triangular

SG03AY   Solving a generalized continuous-time Lyapunov equation with 
         A quasi-triangular and E upper triangular

SG03BU   Solving (for Cholesky factor) stable generalized discrete-time 
         Lyapunov equations with A quasi-triangular, and E, B upper triangular

SG03BV   Solving (for Cholesky factor) stable generalized continuous-time 
         Lyapunov equations with A quasi-triangular, and E, B upper triangular

SG03BX   Solving (for Cholesky factor) stable generalized 2-by-2 Lyapunov equations

Generalized Sylvester Equations


SG03BW   Solving a generalized Sylvester equation with A quasi-triangular 
         and E upper triangular, for X m-by-n, n = 1 or 2

T - Transformation Routines

TB - State-Space

State-Space Transformations


TB01VD   Conversion of a discrete-time system to output normal form

TB01VY   Conversion of the output normal form of a discrete-time system 
         to a state-space representation

TB01XD   Special similarity transformation of the dual state-space system

TB01YD   Special similarity transformation of a state-space system 

State-Space to Rational Matrix Conversion


TB04BV   Strictly proper part of a proper transfer function matrix 

TB04BW   Sum of a rational matrix and a real matrix 

TB04BX   Gain of a SISO linear system, given (A,b,c,d), its poles and zeros

TC - Polynomial Matrix

TD - Rational Matrix

TF - Time Response


TF01MX   Output response of a linear discrete-time system, given a 
         general system matrix (each output is a column of the result)

TF01MY   Output response of a linear discrete-time system, given the
         system matrices (each output is a column of the result)

TG - Generalized State-space

Generalized State-space Transformations


TG01HX   Orthogonal reduction of a descriptor system to a system with
         the same transfer-function matrix and without uncontrollable finite 
         eigenvalues

U - Utility Routines

UD - Numerical Data Handling