## SB04QR

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

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

Purpose

      To solve a linear algebraic system of order M whose coefficient
      matrix has zeros below the third subdiagonal and zero elements on
      the third subdiagonal with even column indices. The matrix is
      stored compactly, row-wise.

Specification

          SUBROUTINE SB04QR( M, D, IPR, INFO )
    C     .. Scalar Arguments ..
          INTEGER           INFO, M
    C     .. Array Arguments ..
          INTEGER           IPR(*)
          DOUBLE PRECISION  D(*)

Arguments

Input/Output Parameters

      M       (input) INTEGER
              The order of the system.  M >= 0, M even.
              Note that parameter M should have twice the value in the
              original problem (see SLICOT Library routine SB04QU).

      D       (input/output) DOUBLE PRECISION array, dimension
              (M*M/2+4*M)
              On entry, the first M*M/2 + 3*M elements of this array
              must contain the coefficient matrix, stored compactly,
              row-wise, and the next M elements must contain the right
              hand side of the linear system, as set by SLICOT Library
              routine SB04QU.
              On exit, the content of this array is updated, the last M
              elements containing the solution with components
              interchanged (see IPR).

      IPR     (output) INTEGER array, dimension (2*M)
              The leading M elements contain information about the
              row interchanges performed for solving the system.
              Specifically, the i-th component of the solution is
              specified by IPR(i).

Error Indicator

      INFO    INTEGER
              = 0:  successful exit;
              = 1:  if a singular matrix was encountered.

Method

      Gaussian elimination with partial pivoting is used. The rows of
      the matrix are not actually permuted, only their indices are
      interchanged in array IPR.

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