-
Notifications
You must be signed in to change notification settings - Fork 133
API Changes
Remove NMatrix#getrf
: This one doesn't make sense, because it's not really analogous to #getrf!
, which returns the pivot array and replaces the original matrix with LU. #getrf
just returns the LU part and throws away the pivot array.
Remove NMatrix#lu_decomposition!
: This is an alias for #getrf!
, but the name seems too similar to #factorize_lu
which does a different thing. Remove to prevent confusion
Change #getrf!
: The clapack_?getrf interface is strange and doesn't match the LAPACK spec. Make #getrf!
match LAPACK rather than ATLAS CLAPACK. All the callers were confused about this anyway, so I think it's OK to change. This has the downside that it has to do a transpose before and after calling clapack_getrf, which uses extra memory, but on the hand, all of the callers were already doing this anyway.
Change #factorize_cholesky
: The new version assumes that the matrix is symmetric and so only has to call #potrf!
once. The old version called #potrf!
twice, but still returned nonsense in the case that the matrix was non-symmetric.
Remove NMatrix::LAPACK.clapack_gesv
: This has the same behavior as NMatrix#solve
and also the name was deceiving since it didn't actually call gesv.
Remove NMatrix::LAPACK.clapack_posv
: Doesn't actually call C functions clapack_?posv
. Arguments difficult to interpret. Replaced by NMatrix::LAPACK.posv
.
Change NMatrix::LAPACK.geev
: The old version did not actually work properly. New behavior is described in the documentation.