mirror of
https://github.com/gonum/gonum.git
synced 2025-10-20 21:59:25 +08:00
40 lines
1.2 KiB
Go
40 lines
1.2 KiB
Go
package lapack
|
|
|
|
import (
|
|
"github.com/gonum/blas"
|
|
)
|
|
|
|
const None = 'N'
|
|
|
|
type Job byte
|
|
|
|
const (
|
|
All (Job) = 'A'
|
|
Slim (Job) = 'S'
|
|
Overwrite (Job) = 'O'
|
|
)
|
|
|
|
type CompSV byte
|
|
|
|
const (
|
|
Compact (CompSV) = 'P'
|
|
Explicit (CompSV) = 'I'
|
|
)
|
|
|
|
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
|
|
}
|
|
|
|
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
|
|
}
|