The DBSTRS subroutine solves a system of linear equations
AX = B for X, where A is a
real symmetric indefinite matrix, and X and B are real
general matrices. This subroutine uses the results of the factorization
of matrix A, produced by a preceding call to DBSTRF.
| A, B | ipvt | Subroutine |
| Long-precision real | Integer | DBSTRS |
| Fortran | CALL DBSTRS (uplo, n, nrhs, ap, ipvt, b, ldb, info) |
| C and C++ | dbstrs (uplo, n, nrhs, ap, ipvt, b, ldb, info); |
| PL/I | CALL DBSTRS (uplo, n, nrhs, ap, ipvt, b, ldb, info); |
If uplo = 'U', A is stored in upper-packed storage mode.
If uplo = 'L', A is stored in lower-packed storage mode.
Specified as: a single character. It must be 'U' or 'L'.
Specified as: a fullword integer; n >= 0.
Specified as: a fullword integer; nrhs >= 0.
Specified as: a one-dimensional array of length nsinfo, containing numbers of the data type indicated in Table 99. See Notes and DBSTRF--Symmetric Indefinite Matrix Factorization.
Specified as: a one-dimensional array of (at least) length n, containing numbers of the data type indicated in Table 99. See Notes.
Specified as: an ldb by (at least) nrhs array, containing numbers of the data type indicated in Table 99.
Specified as: a fullword integer; ldb > 0 and ldb >= n.
Returned as: an ldb by (at least) nrhs array, containing numbers of the data type indicated in Table 99.
Returned as: a fullword integer.
The system AX = B is solved for X, where A is a real symmetric indefinite matrix, and X and B are real general matrices. This subroutine uses the results of the factorization of matrix A, produced by a preceding call to DBSTRF.
If n or nrhs is 0, no computation is performed and the subroutine returns after doing some parameter checking.
None.
None.
This example shows how to solve the system AX = B, for three right-hand sides, where matrix A is the same matrix factored in the Example 1 for DBSTRF.
UPLO N NRHS AP IPVT B LDB INFO
| | | | | | | |
CALL DBSTRS ( 'L', 8, 3, AP, IPVT, B, 8, INFO )
* *
| 1.0 -38.0 47.0 |
| 7.0 -10.0 73.0 |
| 6.0 52.0 2.0 |
B = | -30.0 -228.0 -42.0 |
| 32.0 183.0 105.0 |
| 34.0 297.0 9.0 |
| 32.0 244.0 44.0 |
| 62.0 497.0 61.0 |
* *
* *
| 1.0 1.0 8.0 |
| 1.0 2.0 7.0 |
| 1.0 3.0 6.0 |
B = | 1.0 4.0 5.0 |
| 1.0 5.0 4.0 |
| 1.0 6.0 3.0 |
| 1.0 7.0 2.0 |
| 1.0 8.0 1.0 |
* *
INFO = 0
This example shows how to solve the system AX = B, for three right-hand sides, where matrix A is the same matrix factored in the Example 2 for DBSTRF.
UPLO N NRHS AP IPVT B LDB INFO
| | | | | | | |
CALL DBSTRS ( 'U', 8, 3, AP, IPVT, B, 8, INFO )
* *
| 59.0 52.0 479.0 |
| 30.0 38.0 232.0 |
| 33.0 50.0 247.0 |
B = | 35.0 114.0 201.0 |
| -28.0 -36.0 -216.0 |
| 4.0 -4.0 40.0 |
| 12.0 88.0 20.0 |
| 4.0 56.0 -20.0 |
* *
* *
| 1.0 1.0 8.0 |
| 1.0 2.0 7.0 |
| 1.0 3.0 6.0 |
B = | 1.0 4.0 5.0 |
| 1.0 5.0 4.0 |
| 1.0 6.0 3.0 |
| 1.0 7.0 2.0 |
| 1.0 8.0 1.0 |
* *
INFO = 0