Commit Graph

31 Commits

Author SHA1 Message Date
Vladimir Chalupecky
82e11dfec8 mat: add PivotedCholesky 2023-08-19 13:00:55 +02:00
Dan Kortschak
a2c6f817bf ci: replace golangci-lint with staticcheck 2022-05-18 21:35:57 +09:30
Dan Kortschak
3d32334f97 mat: rename Symmetric method to SymmetricDim 2021-08-23 07:02:27 +09:30
Vladimir Chalupecky
971fc50f31 mat: add BandCholesky type 2020-09-28 09:54:56 +02:00
Dan Kortschak
da72779e7a floats/scalar: new package containing non-vector functions from floats 2020-08-07 07:59:02 +09:30
Dan Kortschak
7b6a63e4e7 mat: don't use global rand state 2020-03-19 17:44:06 +10:30
Egon Elbre
190873a112 mat: make tests parallel 2020-03-16 16:10:59 +02:00
Dan Kortschak
5127c365f2 mat: provide internal slice methods that returns the concrete types 2019-12-28 10:00:57 +10:30
Dan Kortschak
455f782e4c mat: clean up lint 2019-11-02 20:58:09 +10:30
Brendan Tracey
16f4144126 mat: Change methods to accept empty instead of nil matrices (#1090)
* mat: Change methods to accept empty instead of nil matrices

While here, fix enough to compile.

Updates #1081.
2019-09-20 19:19:07 +01:00
Brendan Tracey
975d99cd20 mat,all: Rename IsZero to IsEmpty (#1088)
This avoids the confusion between Zero() and IsZero() which sounds like they should be related
to one another but are not. This makes IsEmpty the counterpart to Reset. Add check for Zero in allMatrix

Fixes #1083.
Updates #1081.
2019-09-15 13:53:29 +01:00
Dan Kortschak
779ef2ac20 mat: rename SliceSquare=>SliceSym and GrowSquare=>GrowSym and return Symmetric 2019-03-30 19:01:34 +10:30
Brendan Tracey
4b1617dbb0 mat: Add methods for Cholesky to implement Matrix and Symmetric (#928)
* mat: Add methods for Cholesky to implement Matrix and Symmetric

Fixes #919.
2019-03-29 23:07:04 +00:00
Brendan Tracey
a65628b4b5 mat: Rename Solve(Vec) to Solve(Vec)To (#922)
* mat: Rename Solve(Vec) to Solev(Vec)To

Fix #830.
2019-03-28 01:01:36 +00:00
Vladimir Chalupecky
9d4132a30c mat: use lapack64.Potri in Cholesky.InverseTo
Also,
 - make tricky shadowing conversion from a SymDense to a TriDense more
 explicit in Cholesky.ToSym,
 - add a benchmark for InverseTo:

name                        old time/op  new time/op  delta
CholeskyInverseTo/n=10-4    10.8µs ± 2%   3.2µs ± 1%  -70.16%  (p=0.008 n=5+5)
CholeskyInverseTo/n=100-4   1.07ms ± 2%  0.51ms ± 2%  -52.06%  (p=0.008 n=5+5)
CholeskyInverseTo/n=1000-4   713ms ± 1%   315ms ± 1%  -55.83%  (p=0.008 n=5+5)
2019-01-04 23:08:42 +01:00
Vladimir Chalupecky
56de5241eb mat: add benchmark for Cholesky.ToSym 2018-12-24 20:32:52 +01:00
Vladimir Chalupecky
0a5cbfddd8 mat: rewrite benchmark for Cholesky.Factorize to use sub-benchmarks 2018-12-24 20:32:52 +01:00
Brendan Tracey
4b0a9c6ea9 Fix Cholesky downdate and improve tests (#455)
* Fix Cholesky downdate and improve tests
2018-04-11 10:20:12 -06:00
Dan Kortschak
790b7356e7 all: migrate to golang.org/x/exp/rand 2017-11-20 15:20:25 +10:30
kortschak
fa0c5aa7bc all: use golang.org/x/exp/rand instead of math/rand 2017-11-17 11:52:34 +10:30
Brendan Tracey
23014c0119 mat: add ability to compute the Cholesky when adding a row and column… (#298)
* mat: add ability to compute the Cholesky when adding a row and column to the factorized matrix
2017-11-16 17:11:32 -07:00
kortschak
805531d142 all: change capitalization of gonum in license header 2017-11-02 06:54:08 +10:30
Brendan Tracey
ac9ad9e533 mat: Add Scale method for TriDense and Cholesky (#267)
* mat: Add Scale method for TriDense and Cholesky
2017-10-19 07:24:29 -06:00
Brendan Tracey
fa42c6938b mat: change cholesky.To to cholesky.ToSym (#250)
* mat: change cholesky.To to cholesky.ToSym

Fixes #133
2017-10-02 15:35:10 -06:00
kortschak
fc1f4400f7 mat: export Dense.solveTwoChol as Cholesky.SolveChol 2017-08-03 06:21:30 +09:30
kortschak
862a4c5a4f mat: rename Vector->VecDense 2017-07-31 09:59:22 +09:30
kortschak
08e1f7dfc1 mat: allow nil destination for Cholesky extraction 2017-07-06 13:49:14 +09:30
kortschak
1466bc5437 mat: move InverseCholesky onto Cholesky 2017-07-06 13:49:14 +09:30
kortschak
8dc3a3df20 mat: move SolveCholesky* onto Cholesky 2017-07-06 13:49:14 +09:30
kortschak
2a36f7a571 mat: rewrite cholesky extractions as To rather than From 2017-07-06 13:49:14 +09:30
Brendan Tracey
3fa9374bd4 matrix: rename matrix to mat, and merge with mat64 and cmat128.
This merges the three packages, matrix, mat64, and cmat128. It then renames this big package to mat. It fixes the import statements and corresponding code
2017-06-13 10:26:10 -06:00