1# Gonum BLAS [![GoDoc](https://godoc.org/gonum.org/v1/gonum/blas?status.svg)](https://godoc.org/gonum.org/v1/gonum/blas) 2 3A collection of packages to provide BLAS functionality for the [Go programming 4language](http://golang.org) 5 6## Installation 7```sh 8 go get gonum.org/v1/gonum/blas/... 9``` 10 11## Packages 12 13### blas 14 15Defines [BLAS API](http://www.netlib.org/blas/blast-forum/cinterface.pdf) split in several 16interfaces. 17 18### blas/gonum 19 20Go implementation of the BLAS API (incomplete, implements the `float32` and `float64` API). 21 22### blas/blas64 and blas/blas32 23 24Wrappers for an implementation of the double (i.e., `float64`) and single (`float32`) 25precision real parts of the BLAS API. 26 27```Go 28package main 29 30import ( 31 "fmt" 32 33 "gonum.org/v1/gonum/blas/blas64" 34) 35 36func main() { 37 v := blas64.Vector{Inc: 1, Data: []float64{1, 1, 1}} 38 fmt.Println("v has length:", blas64.Nrm2(len(v.Data), v)) 39} 40``` 41 42### blas/cblas128 and blas/cblas64 43 44Wrappers for an implementation of the double (i.e., `complex128`) and single (`complex64`) 45precision complex parts of the blas API. 46 47Currently blas/cblas64 and blas/cblas128 require gonum.org/v1/netlib/blas. 48