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.Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None