gonum.org/v1/gonum@v0.14.0/lapack/gonum/doc.go (about)

     1  // Copyright ©2015 The Gonum Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Package gonum is a pure-go implementation of the LAPACK API. The LAPACK API defines
     6  // a set of algorithms for advanced matrix operations.
     7  //
     8  // The function definitions and implementations follow that of the netlib reference
     9  // implementation. See http://www.netlib.org/lapack/explore-html/ for more
    10  // information, and http://www.netlib.org/lapack/explore-html/d4/de1/_l_i_c_e_n_s_e_source.html
    11  // for more license information.
    12  //
    13  // Slice function arguments frequently represent vectors and matrices. The data
    14  // layout is identical to that found in https://pkg.go.dev/gonum.org/v1/gonum/blas/gonum.
    15  //
    16  // Most LAPACK functions are built on top the routines defined in the BLAS API,
    17  // and as such the computation time for many LAPACK functions is
    18  // dominated by BLAS calls. Here, BLAS is accessed through the
    19  // blas64 package (https://pkg.go.dev/gonum.org/v1/gonum/blas/blas64). In particular,
    20  // this implies that an external BLAS library will be used if it is
    21  // registered in blas64.
    22  //
    23  // The full LAPACK capability has not been implemented at present. The full
    24  // API is very large, containing approximately 200 functions for double precision
    25  // alone. Future additions will be focused on supporting the Gonum matrix
    26  // package (https://pkg.go.dev/gonum.org/v1/gonum/mat), though pull requests
    27  // with implementations and tests for LAPACK function are encouraged.
    28  package gonum // import "gonum.org/v1/gonum/lapack/gonum"