From 17a33f2c20a6b29fa8e2ca1188b5d7e4db1dfa13 Mon Sep 17 00:00:00 2001 From: Dan Kortschak Date: Wed, 21 Nov 2018 14:32:31 +1030 Subject: [PATCH] mat: add Banded methods to Diagonal --- mat/diagonal.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mat/diagonal.go b/mat/diagonal.go index 199d0c8e..26f707aa 100644 --- a/mat/diagonal.go +++ b/mat/diagonal.go @@ -16,6 +16,7 @@ var ( _ MutableDiagonal = diagDense _ Triangular = diagDense _ Symmetric = diagDense + _ SymBanded = diagDense _ Banded = diagDense _ RawBander = diagDense _ RawSymBander = diagDense @@ -30,6 +31,12 @@ type Diagonal interface { // matrices to be used in functions taking symmetric inputs. Diag() int Symmetric() int + + // Bandwidth and TBand are included in the Diagonal interface + // to allow the use of Diagonal types in banded functions. + // Bandwidth will always return (0, 0). + Bandwidth() (kl, ku int) + TBand() Banded } // MutableDiagonal is a Diagonal matrix whose elements can be set.