Working implementation of blocked QR

Improved function documentation

Fixed dlarfb and dlarft and added full tests

Added dgelq2

Working Dgels

Fix many comments and tests

Many PR comment responses

Responded to more PR comments

Many PR comments
This commit is contained in:
btracey
2015-07-02 23:40:55 -07:00
parent b024a5b37c
commit ec100cf00f
42 changed files with 4425 additions and 42 deletions

View File

@@ -10,23 +10,51 @@ const None = 'N'
type Job byte
const (
All (Job) = 'A'
Slim (Job) = 'S'
Overwrite (Job) = 'O'
)
// CompSV determines if the singular values are to be computed in compact form.
type CompSV byte
const (
Compact (CompSV) = 'P'
Explicit (CompSV) = 'I'
Compact CompSV = 'P'
Explicit CompSV = 'I'
)
// Float64 defines the float64 interface for the Lapack function. This interface
// contains the functions needed in the gonum suite.
// Complex128 defines the public complex128 LAPACK API supported by gonum/lapack.
type Complex128 interface{}
// Float64 defines the public float64 LAPACK API supported by gonum/lapack.
type Float64 interface {
Dpotrf(ul blas.Uplo, n int, a []float64, lda int) (ok bool)
}
type Complex128 interface{}
// Direct specifies the direction of the multiplication for the Householder matrix.
type Direct byte
const (
Forward Direct = 'F' // Reflectors are right-multiplied, H_1 * H_2 * ... * H_k
Backward Direct = 'B' // Reflectors are left-multiplied, H_k * ... * H_2 * H_1
)
// StoreV indicates the storage direction of elementary reflectors.
type StoreV byte
const (
ColumnWise StoreV = 'C' // Reflector stored in a column of the matrix.
RowWise StoreV = 'R' // Reflector stored in a row of the matrix.
)
// MatrixNorm represents the kind of matrix norm to compute.
type MatrixNorm byte
const (
MaxAbs MatrixNorm = 'M' // max(abs(A(i,j))) ('M')
MaxColumnSum MatrixNorm = 'O' // Maximum column sum (one norm) ('1', 'O')
MaxRowSum MatrixNorm = 'I' // Maximum row sum (infinity norm) ('I', 'i')
NormFrob MatrixNorm = 'F' // Frobenium norm (sqrt of sum of squares) ('F', 'f', E, 'e')
)
// MatrixType represents the kind of matrix represented in the data.
type MatrixType byte
const (
General MatrixType = 'G' // A dense matrix (like blas64.General).
)