Skip to content

Commit

Permalink
add lapack info checks (#265)
Browse files Browse the repository at this point in the history
  • Loading branch information
cval26 authored Feb 2, 2024
1 parent f2695be commit e8ee2d1
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions lib/linalg/Matrix.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -755,7 +755,11 @@ Matrix::inverse(
}
// Now call lapack to do the inversion.
dgetrf(&mtx_size, &mtx_size, result->d_mat, &mtx_size, ipiv, &info);
CAROM_VERIFY(info == 0);

dgetri(&mtx_size, result->d_mat, &mtx_size, ipiv, work, &lwork, &info);
CAROM_VERIFY(info == 0);

// Result now has the inverse in a column major representation. Put it
// into row major order.
for (int row = 0; row < mtx_size; ++row) {
Expand Down Expand Up @@ -798,7 +802,11 @@ Matrix::inverse(
}
// Now call lapack to do the inversion.
dgetrf(&mtx_size, &mtx_size, result.d_mat, &mtx_size, ipiv, &info);
CAROM_VERIFY(info == 0);

dgetri(&mtx_size, result.d_mat, &mtx_size, ipiv, work, &lwork, &info);
CAROM_VERIFY(info == 0);

// Result now has the inverse in a column major representation. Put it
// into row major order.
for (int row = 0; row < mtx_size; ++row) {
Expand Down Expand Up @@ -852,7 +860,11 @@ Matrix::inverse()
}
// Now call lapack to do the inversion.
dgetrf(&mtx_size, &mtx_size, d_mat, &mtx_size, ipiv, &info);
CAROM_VERIFY(info == 0);

dgetri(&mtx_size, d_mat, &mtx_size, ipiv, work, &lwork, &info);
CAROM_VERIFY(info == 0);

// This now has its inverse in a column major representation. Put it into
// row major representation.
for (int row = 0; row < mtx_size; ++row) {
Expand Down

0 comments on commit e8ee2d1

Please sign in to comment.