-
Notifications
You must be signed in to change notification settings - Fork 11
Adddgetri #53
Conversation
This needs #52 . The cgo lapack implementation is wrong. The function documents that it returns the matrix inverse, but the cgo implementation returns a permutation of the inverse. |
// Dgetri is a blocked inversion, but the block size is limited | ||
// by the temporary space available. If lwork == -1, instead of performing Dgetri, | ||
// the optimal work length will be stored into work[0]. | ||
func (impl Implementation) Dgetri(n int, a []float64, lda int, ipiv []int, work []float64, lwork int) bool { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The return is not described.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"ok" here too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
Note that the cgo error is now logged (with comment). |
This one was ours. |
} | ||
ipiv32 := make([]int32, len(ipiv)) | ||
for i, v := range ipiv { | ||
ipiv32[i] = int32(v) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ipiv32[i] = int32(v) + 1
Ah shoot. |
LGTM after minor change. Any idea why travis fails this? The usual? |
No description provided.