getri#
Functions
-
void sgetri(const INT n, f32 *restrict A, const INT lda, const INT *restrict ipiv, f32 *restrict work, const INT lwork, INT *info)#
SGETRI computes the inverse of a matrix using the LU factorization computed by SGETRF.
This method inverts U and then computes
inv(A)by solving the systeminv(A)*L = inv(U)forinv(A).Parameters
innThe order of the matrix
A.n>=0.inoutAArray of dimension (
lda,n). On entry, the factors L and U from the factorization A = P*L*U as computed by sgetrf. On exit, ifinfo=0, the inverse of the original matrixA.inldaThe leading dimension of the array
A.lda>=max(1,n).inipivArray of dimension
n. The pivot indices from sgetrf; row i was interchanged with rowipiv[i].outworkWorkspace array of dimension (
max(1,lwork)). On exit, ifinfo=0, thenwork[0]returns the optimallwork.inlworkThe dimension of the array
work.lwork>=max(1,n). For optimal performancelwork>=n*nb. Iflwork=-1, a workspace query is assumed.outinfoinfo=0: successful exitinfo<0: ifinfo=-i, the i-th argument had an illegal valueinfo>0: ifinfo=i, U(i,i) is exactly zero; the matrix is singular and its inverse could not be computed.
void sgetri(
const INT n,
f32* restrict A,
const INT lda,
const INT* restrict ipiv,
f32* restrict work,
const INT lwork,
INT* info
);
Functions
-
void dgetri(const INT n, f64 *restrict A, const INT lda, const INT *restrict ipiv, f64 *restrict work, const INT lwork, INT *info)#
DGETRI computes the inverse of a matrix using the LU factorization computed by DGETRF.
This method inverts U and then computes
inv(A)by solving the systeminv(A)*L = inv(U)forinv(A).Parameters
innThe order of the matrix
A.n>=0.inoutAArray of dimension (
lda,n). On entry, the factors L and U from the factorization A = P*L*U as computed by dgetrf. On exit, ifinfo=0, the inverse of the original matrixA.inldaThe leading dimension of the array
A.lda>=max(1,n).inipivArray of dimension
n. The pivot indices from dgetrf; row i was interchanged with rowipiv[i].outworkWorkspace array of dimension (
max(1,lwork)). On exit, ifinfo=0, thenwork[0]returns the optimallwork.inlworkThe dimension of the array
work.lwork>=max(1,n). For optimal performancelwork>=n*nb. Iflwork=-1, a workspace query is assumed.outinfoinfo=0: successful exitinfo<0: ifinfo=-i, the i-th argument had an illegal valueinfo>0: ifinfo=i, U(i,i) is exactly zero; the matrix is singular and its inverse could not be computed.
void dgetri(
const INT n,
f64* restrict A,
const INT lda,
const INT* restrict ipiv,
f64* restrict work,
const INT lwork,
INT* info
);
Functions
-
void cgetri(const INT n, c64 *restrict A, const INT lda, const INT *restrict ipiv, c64 *restrict work, const INT lwork, INT *info)#
CGETRI computes the inverse of a matrix using the LU factorization computed by CGETRF.
This method inverts U and then computes
inv(A)by solving the systeminv(A)*L = inv(U)forinv(A).Parameters
innThe order of the matrix
A.n>=0.inoutAArray of dimension (
lda,n). On entry, the factors L and U from the factorization A = P*L*U as computed by cgetrf. On exit, ifinfo=0, the inverse of the original matrixA.inldaThe leading dimension of the array
A.lda>=max(1,n).inipivArray of dimension
n. The pivot indices from cgetrf; row i was interchanged with rowipiv[i].outworkWorkspace array of dimension (
max(1,lwork)). On exit, ifinfo=0, thenwork[0]returns the optimallwork.inlworkThe dimension of the array
work.lwork>=max(1,n). For optimal performancelwork>=n*nb. Iflwork=-1, a workspace query is assumed.outinfoinfo=0: successful exitinfo<0: ifinfo=-i, the i-th argument had an illegal valueinfo>0: ifinfo=i, U(i,i) is exactly zero; the matrix is singular and its inverse could not be computed.
void cgetri(
const INT n,
c64* restrict A,
const INT lda,
const INT* restrict ipiv,
c64* restrict work,
const INT lwork,
INT* info
);
Functions
-
void zgetri(const INT n, c128 *restrict A, const INT lda, const INT *restrict ipiv, c128 *restrict work, const INT lwork, INT *info)#
ZGETRI computes the inverse of a matrix using the LU factorization computed by ZGETRF.
This method inverts U and then computes
inv(A)by solving the systeminv(A)*L = inv(U)forinv(A).Parameters
innThe order of the matrix
A.n>=0.inoutAArray of dimension (
lda,n). On entry, the factors L and U from the factorization A = P*L*U as computed by zgetrf. On exit, ifinfo=0, the inverse of the original matrixA.inldaThe leading dimension of the array
A.lda>=max(1,n).inipivArray of dimension
n. The pivot indices from zgetrf; row i was interchanged with rowipiv[i].outworkWorkspace array of dimension (
max(1,lwork)). On exit, ifinfo=0, thenwork[0]returns the optimallwork.inlworkThe dimension of the array
work.lwork>=max(1,n). For optimal performancelwork>=n*nb. Iflwork=-1, a workspace query is assumed.outinfoinfo=0: successful exitinfo<0: ifinfo=-i, the i-th argument had an illegal valueinfo>0: ifinfo=i, U(i,i) is exactly zero; the matrix is singular and its inverse could not be computed.
void zgetri(
const INT n,
c128* restrict A,
const INT lda,
const INT* restrict ipiv,
c128* restrict work,
const INT lwork,
INT* info
);