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

◆ Banfac()

Sub Banfac ( N As  Long,
Kl As  Long,
Ku As  Long,
Ab() As  Double,
Info As  Long 
)

LU factorization of banded coefficient matrix of system of linear equations (support routine for Bint4 and Bintk)

Purpose
This routine computes the LU factorization (without pivoting) of the banded matrix A of order N with (Kl + 1 + Ku) bands or diagonals.
The LU factorized matrix is used by Banslv to compoute the B-spline coefficients by solving the system of linear equations.
Banfac and Banslv are the support routines for Bint4 and Bintk.
Parameters
[in]NNumber of linear equations, i.e., order of the matrix A. (N >= 1)
[in]KlNumber of sub-diagonals within the band of A. (Kl >= 0)
[in]KuNumber of super-diagonals within the band of A. (Ku >= 0)
[in,out]Ab()Array Ab(LAb1 - 1, LAb2 - 1) (LAb1 >= Kl + Ku + 1, LAb2 >= N) (2D array) or Ab(LAb - 1) (LAb >= (Kl + Ku + 1)*N) (1D array)
[in] The matrix A in band matrix form.
[out] The LU factorization of A into a unit lower triangular matrix L and an upper triangular matrix U (both banded) and stored in customary fashion over the corresponding entries of A.
[out]Info= 0: Successful exit.
= -1: The argument N had an illegal value. (N < 1)
= -2: The argument Kl had an illegal value. (Kl < 0)
= -3: The argument Ku had an illegal value. (Ku < 0)
= -4: The argument Ab() is incalid.
= 1: Failed to factorize A. This implies that A is singular.
Reference
SLATEC