## SB04QU

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

[Specification] [Arguments] [Method] [References] [Comments] [Example]

Purpose

```  To construct and solve a linear algebraic system of order 2*M
whose coefficient matrix has zeros below the third subdiagonal,
and zero elements on the third subdiagonal with even column
indices. Such systems appear when solving discrete-time Sylvester
equations using the Hessenberg-Schur method.

```
Specification
```      SUBROUTINE SB04QU( N, M, IND, A, LDA, B, LDB, C, LDC, D, IPR,
\$                   INFO )
C     .. Scalar Arguments ..
INTEGER           INFO, IND, LDA, LDB, LDC, M, N
C     .. Array Arguments ..
INTEGER           IPR(*)
DOUBLE PRECISION  A(LDA,*), B(LDB,*), C(LDC,*), D(*)

```
Arguments

Input/Output Parameters

```  N       (input) INTEGER
The order of the matrix B.  N >= 0.

M       (input) INTEGER
The order of the matrix A.  M >= 0.

IND     (input) INTEGER
IND and IND - 1 specify the indices of the columns in C
to be computed.  IND > 1.

A       (input) DOUBLE PRECISION array, dimension (LDA,M)
The leading M-by-M part of this array must contain an
upper Hessenberg matrix.

LDA     INTEGER
The leading dimension of array A.  LDA >= MAX(1,M).

B       (input) DOUBLE PRECISION array, dimension (LDB,N)
The leading N-by-N part of this array must contain a
matrix in real Schur form.

LDB     INTEGER
The leading dimension of array B.  LDB >= MAX(1,N).

C       (input/output) DOUBLE PRECISION array, dimension (LDC,N)
On entry, the leading M-by-N part of this array must
contain the coefficient matrix C of the equation.
On exit, the leading M-by-N part of this array contains
the matrix C with columns IND-1 and IND updated.

LDC     INTEGER
The leading dimension of array C.  LDC >= MAX(1,M).

```
Workspace
```  D       DOUBLE PRECISION array, dimension (2*M*M+8*M)

IPR     INTEGER array, dimension (4*M)

```
Error Indicator
```  INFO    INTEGER
= 0:  successful exit;
> 0:  if INFO = IND, a singular matrix was encountered.

```
Method
```  A special linear algebraic system of order 2*M, whose coefficient
matrix has zeros below the third subdiagonal and zero elements on
the third subdiagonal with even column indices, is constructed and
solved. The coefficient matrix is stored compactly, row-wise.

```
References
```  [1] Golub, G.H., Nash, S. and Van Loan, C.F.
A Hessenberg-Schur method for the problem AX + XB = C.
IEEE Trans. Auto. Contr., AC-24, pp. 909-913, 1979.

[2] Sima, V.
Algorithms for Linear-quadratic Optimization.
Marcel Dekker, Inc., New York, 1996.

```
Numerical Aspects
```  None.

```
Further Comments
```  None
```
Example

Program Text

```  None
```
Program Data
```  None
```
Program Results
```  None
```

Return to Supporting Routines index