SUBROUTINE SGBTRF( M, N, NSUB, NSUPER, A, LDA, IPIVOT, INFO) INTEGER M, N, NSUB, NSUPER, LDA, INFO INTEGER IPIVOT(*) REAL A(LDA,*) SUBROUTINE SGBTRF_64( M, N, NSUB, NSUPER, A, LDA, IPIVOT, INFO) INTEGER*8 M, N, NSUB, NSUPER, LDA, INFO INTEGER*8 IPIVOT(*) REAL A(LDA,*)
SUBROUTINE GBTRF( [M], [N], NSUB, NSUPER, A, [LDA], IPIVOT, [INFO]) INTEGER :: M, N, NSUB, NSUPER, LDA, INFO INTEGER, DIMENSION(:) :: IPIVOT REAL, DIMENSION(:,:) :: A SUBROUTINE GBTRF_64( [M], [N], NSUB, NSUPER, A, [LDA], IPIVOT, [INFO]) INTEGER(8) :: M, N, NSUB, NSUPER, LDA, INFO INTEGER(8), DIMENSION(:) :: IPIVOT REAL, DIMENSION(:,:) :: A
void sgbtrf(int m, int n, int nsub, int nsuper, float *a, int lda, int *ipivot, int *info);
void sgbtrf_64(long m, long n, long nsub, long nsuper, float *a, long lda, long *ipivot, long *info);
This is the blocked version of the algorithm, calling Level 3 BLAS.
On exit, details of the factorization: U is stored as an upper triangular band matrix with NSUB+NSUPER superdiagonals in rows 1 to NSUB+NSUPER+1, and the multipliers used during the factorization are stored in rows NSUB+NSUPER+2 to 2*NSUB+NSUPER+1. See below for further details.