XLPack 7.0
XLPack Numerical Library (Excel VBA) Reference Manual
Loading...
Searching...
No Matches

◆ Dpbtrs()

Sub Dpbtrs ( Uplo As  String,
N As  Long,
Kd As  Long,
Ab() As  Double,
B() As  Double,
Info As  Long,
Optional Nrhs As  Long = 1 
)

Solution to factorized system of linear equations AX = B for a symmetric positive definite band matrix

Purpose
This routine solves a system of linear equations
A * X = B
with a symmetric positive definite band matrix A using the Cholesy factorization A = U^T*U or A = L*L^T computed by Dpbtrf.
Parameters
[in]Uplo= "U": Upper triangular factor U is stored in Ab().
= "L": Lower triangular factor L is stored in Ab().
[in]NNumber of linear equations, i.e., order of the matrix A. (N >= 0) (If N = 0, returns without computation)
[in]KdNumber of super-diagonals of the matrix A if Uplo = "U", or number of sub-diagonals if Uplo = "L". (Kd >= 0)
[in]Ab()Array Ab(LAb1 - 1, LAb2 - 1) (LAb1 >= Kd + 1, LAb2 >= N)
The triangular factor U or L from the Cholesky factorization A = U^T*U or A = L*L^T of the band matrix A, stored in Kd+1 x N symmetric band matrix form.
[in,out]B()Array B(LB1 - 1, LB2 - 1) (LB1 >= max(1, N), LB2 >= Nrhs) (2D array) or B(LB - 1) (LB >= max(1, N), Nrhs = 1) (1D array)
[in] N x Nrhs right hand side matrix B.
[out] If Info = 0, the N x Nrhs solution matrix X.
[out]Info= 0: Successful exit.
= -1: The argument Uplo had an illegal value. (Uplo <> "U" nor "L")
= -2: The argument N had an illegal value. (N < 0)
= -3: The argument Kd had an illegal value. (Kd < 0)
= -4: The argument Ab() is invalid.
= -5: The argument B() is invalid.
= -7: The argument Nrhs had an illegal value. (Nrhs < 0)
[in]Nrhs(Optional)
Number of right hand sides, i.e., number of columns of the matrix B. (Nrhs >= 0) (If Nrhs = 0, returns without computation) (default = 1)
Reference
LAPACK
Example Program
See example of Dpbtrf.