## SB04RV

### Constructing the right-hand sides for a system of equations in quasi-Hessenberg form solved via SB04RX (case with 2 right-hand sides)

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

Purpose

```  To construct the right-hand sides D for a system of equations in
quasi-Hessenberg form solved via SB04RX (case with 2 right-hand
sides).

```
Specification
```      SUBROUTINE SB04RV( ABSCHR, UL, N, M, C, LDC, INDX, AB, LDAB, BA,
\$                   LDBA, D, DWORK )
C     .. Scalar Arguments ..
CHARACTER         ABSCHR, UL
INTEGER           INDX, LDAB, LDBA, LDC, M, N
C     .. Array Arguments ..
DOUBLE PRECISION  AB(LDAB,*), BA(LDBA,*), C(LDC,*), D(*), DWORK(*)

```
Arguments

Mode Parameters

```  ABSCHR  CHARACTER*1
Indicates whether AB contains A or B, as follows:
= 'A':  AB contains A;
= 'B':  AB contains B.

UL      CHARACTER*1
Indicates whether AB is upper or lower Hessenberg matrix,
as follows:
= 'U':  AB is upper Hessenberg;
= 'L':  AB is lower Hessenberg.

```
Input/Output Parameters
```  N       (input) INTEGER
The order of the matrix A.  N >= 0.

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

C       (input) DOUBLE PRECISION array, dimension (LDC,M)
The leading N-by-M part of this array must contain both
the not yet modified part of the coefficient matrix C of
the Sylvester equation X + AXB = C, and both the currently
computed part of the solution of the Sylvester equation.

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

INDX    (input) INTEGER
The position of the first column/row of C to be used in
the construction of the right-hand side D.

AB      (input) DOUBLE PRECISION array, dimension (LDAB,*)
The leading N-by-N or M-by-M part of this array must
contain either A or B of the Sylvester equation
X + AXB = C.

LDAB    INTEGER
The leading dimension of array AB.
LDAB >= MAX(1,N) or LDAB >= MAX(1,M) (depending on
ABSCHR = 'A' or ABSCHR = 'B', respectively).

BA      (input) DOUBLE PRECISION array, dimension (LDBA,*)
The leading N-by-N or M-by-M part of this array must
contain either A or B of the Sylvester equation
X + AXB = C, the matrix not contained in AB.

LDBA    INTEGER
The leading dimension of array BA.
LDBA >= MAX(1,N) or LDBA >= MAX(1,M) (depending on
ABSCHR = 'B' or ABSCHR = 'A', respectively).

D       (output) DOUBLE PRECISION array, dimension (*)
The leading 2*N or 2*M part of this array (depending on
ABSCHR = 'B' or ABSCHR = 'A', respectively) contains the
right-hand side stored as a matrix with two rows.

```
Workspace
```  DWORK   DOUBLE PRECISION array, dimension (LDWORK)
where LDWORK is equal to 2*N or 2*M (depending on
ABSCHR = 'B' or ABSCHR = 'A', respectively).

```
Numerical Aspects
```  None.

```
```  None
```
Example

Program Text

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