package lacaml
Install
dune-project
Dependency
Authors
-
EEgbert Ammicht <eammicht@lucent.com>
-
PPatrick Cousot <Patrick.Cousot@ens.fr>
-
SSam Ehrlichman <sehrlichman@janestreet.com>
-
FFlorent Hoareau <h.florent@gmail.com>
-
MMarkus Mottl <markus.mottl@gmail.com>
-
LLiam Stewart <liam@cs.toronto.edu>
-
CChristophe Troestler <Christophe.Troestler@umons.ac.be>
-
OOleg Trott <ot14@columbia.edu>
-
MMartin Willensdorfer <ma.wi@gmx.at>
Maintainers
Sources
sha256=852c5ea28ad0526dd5fa4474b8d512fb22b7e43ff24d157cba418e5f77a5b178
sha512=15579052306403e10524a2615d7fbdcb286ec02a1a510f255e4292c40c115ce96f18c19cab8295b71a94cb556f025c5115c049579493bd7ff8e50fa4d5e6b2c3
doc/CHANGES.html
11.0.6 (2020-01-23)
- Switched to OPAM file generation via
dune-project - Added missing autogenerated dependencies to
dunefile to avoid build system race conditions.
11.0.5 (2019-10-11)
- Fixed warnings in C-stubs
11.0.4 (2019-05-21)
- Fixed an API misspecification in
ptsv, which leads to incorrect results.
Thanks to Nicolas Ratier nicolas.ratier@femto-st.fr for the bug report!
11.0.3 (2018-12-31)
- Fixed a portability bug in (complex)
dotuanddotcdue to BLAS API incompatibilities between different platforms.
11.0.2 (2018-10-24)
- Switched to dune, dune-release, and OPAM 2.0
11.0.1 (2018-05-23)
- Fixed warnings and errors in configuration code due to upstream changes.
- Fixed bug in Vec.ssqr.
11.0.0 (2018-02-28)
WARNINIG WARNING WARNING
User code changes in existing code required! User code may still compile, but can behave differently!
The following functions are affected:
potrfpotripotrs
The above functions now do not support the
jitterargument anymore. Users should remove the flag from calls to the above functions and call the newMat.add_const_diagfunction if they need to add jitter. This call should happen right before the (now required) call topotrf.More importantly,
potriandpotrsnow do not support thefactorizeflag anymore, which would callpotrfautomatically beforehand. This was the (ill-conceived) default, which makes it harder to port LAPACK code to Lacaml. In order to upgrade your code, please do the following:- If
potriorpotrswere passed~factorize:false, just remove the flag. - If
potriorpotrswere passed~factorize:trueor were called without thefactorizeflag, remove the flag if necessary and callpotrfwith the exactly corresponding arguments before.
Luckily, these functions are typically used rarely, and the changes are trivial. Apologies anyway for the churn!
New functions
Mat.add_const_diagfor adding a constant to the diagonal of a (sub-)matrix.
orgqrnow detects ifm < nand raises an exception instead of printing a Fortran error message and continuing.- Eigenvalue offsets should now work correctly.
- Improved documentation.
10.0.2 (2017-11-08)
- Fixed bugs accessing lower pentagonal matrix patterns
- Fixed library override issue on Mac OS X
10.0.1 (2017-10-21)
- Fixed wrongly capitalized build targets missed due to Mac OS X file system case insensitivity.
10.0.0 (2017-10-20)
- Switched to jbuilder and topkg
API changes
trmmandtrsmnow do not label argumentaanymore- Many matrix functions now support an optional
pattargument, which can be used to specify rectangular, triagonal, trapezoidal, and pentagonal patterns on which to perform an operation. New functions
Mat.sum_prodcomputes the sum of element-wise products of two matrices. Some use cases are already covered byMat.gemm_trace, but the latter does not support patterns.
- Improved C-code to better support SIMD compiler optimizations
- Many internal improvements, including untagged and unboxed passing of parameters to and from external functions.
- Compilation now uses
-march=native -O3 -ffast-mathby default, which should be safe and exploit SIMD on platforms that support it to greatly improve performance of some operations. - Improved documentation
- Improved configuration and build process