Commit Graph

5155 Commits

Author SHA1 Message Date
Dan Kortschak
c64a0a7fc7 graph/encoding/dot: run go fmt -s 2018-12-12 21:38:20 +10:30
Vladimir Chalupecky
bf83f2c3b8 lapack/testlapack: add implementation comments to Dgebd2 test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
665d381a36 lapack/testlapack: add implementation comments to Dgelqf test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
b9eabf83ee lapack/testlapack: add implementation comments to Dgeqp3 test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
d4a060d493 lapack/testlapack: add implementation comments to Dlags2 test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
f5caaf507d lapack/testlapack: add implementation comments to Dlange test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
8ebfea9f67 lapack/testlapack: add implementation comments to Dlanst test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
3ff63b0dd5 lapack/testlapack: add implementation comments to Dlansy test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
3e1f1595e5 lapack/testlapack: add implementation comments to Dlapll test 2018-12-12 11:53:36 +01:00
Vladimir Chalupecky
f795de207b lapack/testlapack: add implementation comments to Dlartg test 2018-12-12 11:53:36 +01:00
Iskander (Alex) Sharipov
333db37892 mat: fix duplicated switch case
Found using gocritic linter, `dupCase` checker.
2018-12-12 17:12:13 +10:30
Dan Kortschak
6df660f22f num/{dual,hyperdual}: new packages for dual and hyperdual arithmetic 2018-12-12 11:59:52 +10:30
Brendan Tracey
572d9101fe blas64: add length field N to Vector
blas64: add length field N to Vector

Alongside, fix the implementation of mat.VecDense and mat.Diagonal, as well as other changes needed to fix this change.

Fixes #736.
2018-12-10 08:36:04 +00:00
Brendan Tracey
6b862e40c9 blas: Remove variable copying in dgemm (#734)
* blas: Remove variable copying in dgemm

Fixes #732.
2018-12-09 16:34:14 +00:00
deas-mhumhna
435185761c stat/distuv: add binomial distribution 2018-12-09 07:39:48 +10:30
Nick Potts
b71a28080e A+C: add npotts to authors and contributors
* Adding myself to CONTRIBUTORS

Adding myself to the list of contributors for work on gonum.  https://github.com/gonum/plot/pull/487

* Adding myself to Authors list

Adding due to work on gonum/plot https://github.com/gonum/plot/pull/487
2018-12-08 10:16:43 +01:00
Brendan Tracey
c395f0688f optimize: move global code to minimize (#724)
Fixes #482.
2018-12-05 18:18:39 +00:00
Dan Kortschak
ec146a97d7 quat: rename Quat to Number
This reduces stutter and parallels the convention in the proposed dual
and hyperdual packages.
2018-12-04 07:58:26 +10:30
Brendan Tracey
b53e0d9ab0 mat: Add DiagView methods to types (#711)
* mat: Add DiagView methods to types

Fixes #213
2018-11-29 16:08:30 +00:00
Brendan Tracey
4a8f318905 Listtypes (#714)
* mat: Add missing types to list test

With the recent additions of Diagonal and TriBanded, there were some matrix types that were not added to the list of testing types. There were additionally some older types that had been left out. This PR completes the set of types, their transposes, and their basic counterparts to the set of matrices. Changes are made to the makeNew etc. routines in order to support this.

This also changes the behavior of Triangle to return the embedded TriKind even if the matrix IsZero (before we intentionally corrupted the value). We document that the value cannot be trusted, so it shouldn't matter, but this way is simpler, and allows the TriKind to be used in list_test to specify matrices with different TriKind.

Fixes #266
2018-11-28 09:19:22 +00:00
Brendan Tracey
b630de2f22 mat: Clean up TriBand documentation (#710) 2018-11-25 18:50:08 +00:00
Vladimir Chalupecky
9a5244455e lapack/testlapack: add implementation comments to Dlasr test 2018-11-25 10:14:57 +01:00
Vladimir Chalupecky
c015e0732d lapack/testlapack: add implementation comments to Dlatrd test 2018-11-25 10:14:57 +01:00
Vladimir Chalupecky
6dfebf106b lapack/testlapack: add implementation comments to Dorg2r test 2018-11-25 10:14:57 +01:00
Vladimir Chalupecky
4bcd344ac3 lapack/testlapack: add implementation comments to Dorgtr test 2018-11-25 10:14:57 +01:00
Vladimir Chalupecky
7c04cab020 lapack/testlapack: add implementation comments to Dtrti2 test 2018-11-25 10:14:57 +01:00
Brendan Tracey
32b7bcde45 mat: Add TriBanded interface and TriBandDense type (#693)
* mat: Add TriBanded interface and TriBandDense type
2018-11-25 08:26:55 +00:00
Dan Kortschak
4fc8509578 encoding/dot: pass returned error up call stack
This should probably use a rich error strategy, but we can leave that for
when the Go error handling experiments are more fully developed.
2018-11-25 18:52:21 +10:30
Dan Kortschak
cdf8233f4e encoding/dot: always allow first graph to be returned 2018-11-25 18:52:21 +10:30
J. Holmes
b3c4e40467 graph/encoding/dot: add multigraph serialization and deserialization support 2018-11-25 07:31:56 +10:30
Dan Kortschak
dc5eba8a13 mat: add striding to DiagDense and capacity to extract diags from other matrices
Also add IsZero and Reset needed for this.
2018-11-24 19:16:21 +10:30
Dan Kortschak
17a33f2c20 mat: add Banded methods to Diagonal 2018-11-22 17:30:21 +10:30
Vladimir Chalupecky
a4ff288f27 lapack/gonum: clean up parameter checks in Dgelqf 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
d19441177a lapack/gonum: clean up parameter checks in Dorglq 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
f415dca77c lapack/gonum: clean up parameter checks in Dgehrd 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
a5c280a104 lapack/gonum: check lda after workspace query return in Dorgqr
Dorgqr is queried at several places in Dgesvd for workspace size with
varying arguments. With the current code it is impossible to pass
the lda check. The reference gets around this because it's column-major
and the number of rows is the same for each call.
2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
c8ad599984 lapack/gonum: clean up parameter checks in Dorgqr 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
1cc352d23d lapack/gonum: clean up parameter checks in Dgerqf 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
30505441f7 lapack/gonum: clean up parameter checks in Dgeqrf 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
7b030a69db lapack/gonum: clean up parameter checks in Dsytrd 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
89fec2d1bb lapack/gonum: clean up parameter checks in Dorgql 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
6b286119a0 lapack/gonum: use blocking crossover point in Dgebrd 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
e5e06d8b76 lapack/testlapack: use lda at least 1 in test for Dormlq 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
4152ba8bed lapack/gonum: use real arguments in workspace query calls 2018-11-22 06:27:37 +01:00
Vladimir Chalupecky
ce429941af lapack/testlapack: use real arguments in workspace query calls 2018-11-22 06:27:37 +01:00
Dan Kortschak
3f7ecaa7e8 mat: add SymBanded type 2018-11-21 14:23:19 +10:30
Dan Kortschak
2b0dcc4a5e graph/multi: test graph implementations with testgraph package
Fix bugs found by testgraph.
2018-11-21 11:35:03 +10:30
Dan Kortschak
2df0688894 graph/simple: test graph implementations with testgraph package
Fix bugs found by testgraph.
2018-11-21 11:35:03 +10:30
Dan Kortschak
a8f1562992 graph/testgraph: new package for testing graph implementations
Currently variant line types do not work the same way as they would with
a slice of edges because access to a []graph.Edge also allows the
elements of that slice can be type asserted to richer types like
graph.Line or graph.WeightedEdge for example. This cannot be done with
the API as is stands with the iterator-holding edge being down graded
from one of the richer types.
The problem can be avoided by either making graph.WeightedLines also
satisfy graph.Lines (same for edges), or by down-typing the edges in the
non-weighted edge return methods for the graph implemetations.
2018-11-21 11:35:03 +10:30
Dan Kortschak
d752f8fef7 mat: make Diagonal satisfy Symmetric 2018-11-21 09:02:12 +10:30