Rearrange Lapack to be like BLAS. Implement cholesky decomposition

Responded to PR comments

modified travis file

Changed input and output types

added back needed types by cgo

Fixed perl script so it compiles

Changes to genLapack to allow compilation

Reinstate test-coverage.sh
This commit is contained in:
btracey
2015-05-05 22:55:15 -07:00
parent ab032b6bfa
commit 578f42c8df
24 changed files with 422 additions and 437 deletions

View File

@@ -1,8 +1,6 @@
package lapack
import (
"github.com/gonum/blas"
)
import "github.com/gonum/blas"
const None = 'N'
@@ -21,19 +19,10 @@ const (
Explicit (CompSV) = 'I'
)
// Float64 defines the float64 interface for the Lapack function. This interface
// contains the functions needed in the gonum suite.
type Float64 interface {
Dgeqrf(m, n int, a []float64, lda int, tau []float64) int
Dormqr(s blas.Side, t blas.Transpose, m, n, k int, a []float64, lda int, tau []float64, c []float64, ldc int) int
Dgesdd(job Job, m, n int, a []float64, lda int, s []float64, u []float64, ldu int, vt []float64, ldvt int) int
Dgebrd(m, n int, a []float64, lda int, d, e, tauq, taup []float64) int
Dbdsdc(uplo blas.Uplo, compq CompSV, n int, d, e []float64, u []float64, ldu int, vt []float64, ldvt int, q []float64, iq []int32) int
Dpotrf(ul blas.Uplo, n int, a []float64, lda int) (ok bool)
}
type Complex128 interface {
Float64
Zgeqrf(m, n int, a []complex128, lda int, tau []complex128) int
Zunmqr(s blas.Side, t blas.Transpose, m, n, k int, a []complex128, lda int, tau []complex128, c []complex128, ldc int) int
Zgesdd(job Job, m, n int, a []complex128, lda int, s []float64, u []complex128, ldu int, vt []complex128, ldvt int) int
Zgebrd(m, n int, a []complex128, lda int, d, e []float64, tauq, taup []complex128) int
}
type Complex128 interface{}