dgesv - compute the solution to a real system of linear equations A * X = B,
SUBROUTINE DGESV( N, NRHS, A, LDA, IPIVOT, B, LDB, INFO) INTEGER N, NRHS, LDA, LDB, INFO INTEGER IPIVOT(*) DOUBLE PRECISION A(LDA,*), B(LDB,*)
SUBROUTINE DGESV_64( N, NRHS, A, LDA, IPIVOT, B, LDB, INFO) INTEGER*8 N, NRHS, LDA, LDB, INFO INTEGER*8 IPIVOT(*) DOUBLE PRECISION A(LDA,*), B(LDB,*)
SUBROUTINE GESV( [N], [NRHS], A, [LDA], IPIVOT, B, [LDB], [INFO]) INTEGER :: N, NRHS, LDA, LDB, INFO INTEGER, DIMENSION(:) :: IPIVOT REAL(8), DIMENSION(:,:) :: A, B
SUBROUTINE GESV_64( [N], [NRHS], A, [LDA], IPIVOT, B, [LDB], [INFO]) INTEGER(8) :: N, NRHS, LDA, LDB, INFO INTEGER(8), DIMENSION(:) :: IPIVOT REAL(8), DIMENSION(:,:) :: A, B
#include <sunperf.h>
void dgesv(int n, int nrhs, double *a, int lda, int *ipivot, double *b, int ldb, int *info);
void dgesv_64(long n, long nrhs, double *a, long lda, long *ipivot, double *b, long ldb, long *info);
dgesv computes the solution to a real system of linear equations A * X = B, where A is an N-by-N matrix and X and B are N-by-NRHS matrices.
The LU decomposition with partial pivoting and row interchanges is used to factor A as
A = P * L * U,
where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
> 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.