Interface LAPACK

All Known Implementing Classes:
OpenBLAS

public interface LAPACK
Linear Algebra Package. LAPACK is a standard software library for numerical linear algebra. It provides routines for solving systems of linear equations and linear least squares, eigenvalue problems, and singular value decomposition. It also includes routines to implement the associated matrix factorizations such as LU, QR, Cholesky and Schur decomposition.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final LAPACK
    The default LAPACK engine.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    gbsv(Layout layout, int n, int kl, int ku, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
    Solves a real system of linear equations.
    int
    gbsv(Layout layout, int n, int kl, int ku, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
    Solves a real system of linear equations.
    int
    gbsv(Layout layout, int n, int kl, int ku, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    gbsv(Layout layout, int n, int kl, int ku, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    gbtrf(Layout layout, int m, int n, int kl, int ku, double[] AB, int ldab, int[] ipiv)
    Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
    int
    gbtrf(Layout layout, int m, int n, int kl, int ku, float[] AB, int ldab, int[] ipiv)
    Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
    int
    gbtrf(Layout layout, int m, int n, int kl, int ku, DoubleBuffer AB, int ldab, IntBuffer ipiv)
    Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
    int
    gbtrf(Layout layout, int m, int n, int kl, int ku, FloatBuffer AB, int ldab, IntBuffer ipiv)
    Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
    int
    gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, double[] AB, int ldab, int[] ipiv, double[] B, int ldb)
    Solves a system of linear equations
    int
    gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, float[] AB, int ldab, int[] ipiv, float[] B, int ldb)
    Solves a system of linear equations
    int
    gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, DoubleBuffer AB, int ldab, IntBuffer ipiv, DoubleBuffer B, int ldb)
    Solves a system of linear equations
    int
    gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, FloatBuffer AB, int ldab, IntBuffer ipiv, FloatBuffer B, int ldb)
    Solves a system of linear equations
    int
    geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, double[] A, int lda, double[] wr, double[] wi, double[] Vl, int ldvl, double[] Vr, int ldvr)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors.
    int
    geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, float[] A, int lda, float[] wr, float[] wi, float[] Vl, int ldvl, float[] Vr, int ldvr)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors.
    int
    geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, DoubleBuffer A, int lda, DoubleBuffer wr, DoubleBuffer wi, DoubleBuffer Vl, int ldvl, DoubleBuffer Vr, int ldvr)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors.
    int
    geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, FloatBuffer A, int lda, FloatBuffer wr, FloatBuffer wi, FloatBuffer Vl, int ldvl, FloatBuffer Vr, int ldvr)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors.
    int
    geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer wr, org.bytedeco.javacpp.DoublePointer wi, org.bytedeco.javacpp.DoublePointer Vl, int ldvl, org.bytedeco.javacpp.DoublePointer Vr, int ldvr)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors.
    int
    gels(Layout layout, Transpose trans, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
    Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A.
    int
    gels(Layout layout, Transpose trans, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
    Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A.
    int
    gels(Layout layout, Transpose trans, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
    Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A.
    int
    gels(Layout layout, Transpose trans, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
    Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A.
    int
    gelsd(Layout layout, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb, double[] s, double rcond, int[] rank)
    Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A.
    int
    gelsd(Layout layout, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb, float[] s, float rcond, int[] rank)
    Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A.
    int
    gelsd(Layout layout, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer s, double rcond, IntBuffer rank)
    Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A.
    int
    gelsd(Layout layout, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer s, float rcond, IntBuffer rank)
    Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A.
    int
    gelss(Layout layout, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb, double[] s, double rcond, int[] rank)
    Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A.
    int
    gelss(Layout layout, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb, float[] s, float rcond, int[] rank)
    Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A.
    int
    gelss(Layout layout, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer s, double rcond, IntBuffer rank)
    Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A.
    int
    gelss(Layout layout, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer s, float rcond, IntBuffer rank)
    Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A.
    int
    gelsy(Layout layout, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb, int[] jpvt, double rcond, int[] rank)
    Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A.
    int
    gelsy(Layout layout, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb, int[] jpvt, float rcond, int[] rank)
    Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A.
    int
    gelsy(Layout layout, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, IntBuffer jpvt, double rcond, IntBuffer rank)
    Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A.
    int
    gelsy(Layout layout, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb, IntBuffer jpvt, float rcond, IntBuffer rank)
    Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A.
    int
    geqrf(Layout layout, int m, int n, double[] A, int lda, double[] tau)
    Computes a QR factorization of a general M-by-N matrix A.
    int
    geqrf(Layout layout, int m, int n, float[] A, int lda, float[] tau)
    Computes a QR factorization of a general M-by-N matrix A.
    int
    geqrf(Layout layout, int m, int n, DoubleBuffer A, int lda, DoubleBuffer tau)
    Computes a QR factorization of a general M-by-N matrix A.
    int
    geqrf(Layout layout, int m, int n, FloatBuffer A, int lda, FloatBuffer tau)
    Computes a QR factorization of a general M-by-N matrix A.
    int
    geqrf(Layout layout, int m, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer tau)
    Computes a QR factorization of a general M-by-N matrix A.
    int
    gesdd(Layout layout, SVDJob jobz, int m, int n, double[] A, int lda, double[] s, double[] U, int ldu, double[] VT, int ldvt)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesdd(Layout layout, SVDJob jobz, int m, int n, float[] A, int lda, float[] s, float[] U, int ldu, float[] VT, int ldvt)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesdd(Layout layout, SVDJob jobz, int m, int n, DoubleBuffer A, int lda, DoubleBuffer s, DoubleBuffer U, int ldu, DoubleBuffer VT, int ldvt)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesdd(Layout layout, SVDJob jobz, int m, int n, FloatBuffer A, int lda, FloatBuffer s, FloatBuffer U, int ldu, FloatBuffer VT, int ldvt)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesdd(Layout layout, SVDJob jobz, int m, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer s, org.bytedeco.javacpp.DoublePointer U, int ldu, org.bytedeco.javacpp.DoublePointer VT, int ldvt)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesv(Layout layout, int n, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
    Solves a real system of linear equations.
    int
    gesv(Layout layout, int n, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
    Solves a real system of linear equations.
    int
    gesv(Layout layout, int n, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    gesv(Layout layout, int n, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    gesv(Layout layout, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv, org.bytedeco.javacpp.DoublePointer B, int ldb)
    Solves a real system of linear equations.
    int
    gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, double[] A, int lda, double[] s, double[] U, int ldu, double[] VT, int ldvt, double[] superb)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, float[] A, int lda, float[] s, float[] U, int ldu, float[] VT, int ldvt, float[] superb)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, DoubleBuffer A, int lda, DoubleBuffer s, DoubleBuffer U, int ldu, DoubleBuffer VT, int ldvt, DoubleBuffer superb)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    int
    gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, FloatBuffer A, int lda, FloatBuffer s, FloatBuffer U, int ldu, FloatBuffer VT, int ldvt, FloatBuffer superb)
    Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
    static LAPACK
    Creates an instance.
    int
    getrf(Layout layout, int m, int n, double[] A, int lda, int[] ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf(Layout layout, int m, int n, float[] A, int lda, int[] ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf(Layout layout, int m, int n, DoubleBuffer A, int lda, IntBuffer ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf(Layout layout, int m, int n, FloatBuffer A, int lda, IntBuffer ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf(Layout layout, int m, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf2(Layout layout, int m, int n, double[] A, int lda, int[] ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf2(Layout layout, int m, int n, float[] A, int lda, int[] ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf2(Layout layout, int m, int n, DoubleBuffer A, int lda, IntBuffer ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrf2(Layout layout, int m, int n, FloatBuffer A, int lda, IntBuffer ipiv)
    Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
    int
    getrs(Layout layout, Transpose trans, int n, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
    Solves a system of linear equations
    int
    getrs(Layout layout, Transpose trans, int n, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
    Solves a system of linear equations
    int
    getrs(Layout layout, Transpose trans, int n, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
    Solves a system of linear equations
    int
    getrs(Layout layout, Transpose trans, int n, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
    Solves a system of linear equations
    int
    getrs(Layout layout, Transpose trans, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv, org.bytedeco.javacpp.DoublePointer B, int ldb)
    Solves a system of linear equations
    int
    ggglm(Layout layout, int n, int m, int p, double[] A, int lda, double[] B, int ldb, double[] d, double[] x, double[] y)
    Solves a general Gauss-Markov linear model (GLM) problem.
    int
    ggglm(Layout layout, int n, int m, int p, float[] A, int lda, float[] B, int ldb, float[] d, float[] x, float[] y)
    Solves a general Gauss-Markov linear model (GLM) problem.
    int
    ggglm(Layout layout, int n, int m, int p, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer d, DoubleBuffer x, DoubleBuffer y)
    Solves a general Gauss-Markov linear model (GLM) problem.
    int
    ggglm(Layout layout, int n, int m, int p, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer d, FloatBuffer x, FloatBuffer y)
    Solves a general Gauss-Markov linear model (GLM) problem.
    int
    gglse(Layout layout, int m, int n, int p, double[] A, int lda, double[] B, int ldb, double[] c, double[] d, double[] x)
    Solves a linear equality-constrained least squares (LSE) problem.
    int
    gglse(Layout layout, int m, int n, int p, float[] A, int lda, float[] B, int ldb, float[] c, float[] d, float[] x)
    Solves a linear equality-constrained least squares (LSE) problem.
    int
    gglse(Layout layout, int m, int n, int p, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer c, DoubleBuffer d, DoubleBuffer x)
    Solves a linear equality-constrained least squares (LSE) problem.
    int
    gglse(Layout layout, int m, int n, int p, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer c, FloatBuffer d, FloatBuffer x)
    Solves a linear equality-constrained least squares (LSE) problem.
    int
    orgqr(Layout layout, int m, int n, int k, double[] A, int lda, double[] tau)
    Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
    int
    orgqr(Layout layout, int m, int n, int k, float[] A, int lda, float[] tau)
    Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
    int
    orgqr(Layout layout, int m, int n, int k, DoubleBuffer A, int lda, DoubleBuffer tau)
    Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
    int
    orgqr(Layout layout, int m, int n, int k, FloatBuffer A, int lda, FloatBuffer tau)
    Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
    int
    orgqr(Layout layout, int m, int n, int k, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer tau)
    Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
    int
    ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, double[] A, int lda, double[] tau, double[] C, int ldc)
    Overwrites the general real M-by-N matrix C with
    int
    ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, float[] A, int lda, float[] tau, float[] C, int ldc)
    Overwrites the general real M-by-N matrix C with
    int
    ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, DoubleBuffer A, int lda, DoubleBuffer tau, DoubleBuffer C, int ldc)
    Overwrites the general real M-by-N matrix C with
    int
    ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, FloatBuffer A, int lda, FloatBuffer tau, FloatBuffer C, int ldc)
    Overwrites the general real M-by-N matrix C with
    int
    ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer tau, org.bytedeco.javacpp.DoublePointer C, int ldc)
    Overwrites the general real M-by-N matrix C with
    int
    pbtrf(Layout layout, UPLO uplo, int n, int kd, double[] AB, int ldab)
    Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
    int
    pbtrf(Layout layout, UPLO uplo, int n, int kd, float[] AB, int ldab)
    Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
    int
    pbtrf(Layout layout, UPLO uplo, int n, int kd, DoubleBuffer AB, int ldab)
    Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
    int
    pbtrf(Layout layout, UPLO uplo, int n, int kd, FloatBuffer AB, int ldab)
    Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
    int
    pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, double[] AB, int ldab, double[] B, int ldb)
    Solves a system of linear equations
    int
    pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, float[] AB, int ldab, float[] B, int ldb)
    Solves a system of linear equations
    int
    pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, DoubleBuffer AB, int ldab, DoubleBuffer B, int ldb)
    Solves a system of linear equations
    int
    pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, FloatBuffer AB, int ldab, FloatBuffer B, int ldb)
    Solves a system of linear equations
    int
    posv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
    Solves a real system of linear equations.
    int
    posv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
    Solves a real system of linear equations.
    int
    posv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    posv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    potrf(Layout layout, UPLO uplo, int n, double[] A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A.
    int
    potrf(Layout layout, UPLO uplo, int n, float[] A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A.
    int
    potrf(Layout layout, UPLO uplo, int n, DoubleBuffer A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A.
    int
    potrf(Layout layout, UPLO uplo, int n, FloatBuffer A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A.
    int
    potrf(Layout layout, UPLO uplo, int n, org.bytedeco.javacpp.DoublePointer A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A.
    int
    potrf2(Layout layout, UPLO uplo, int n, double[] A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
    int
    potrf2(Layout layout, UPLO uplo, int n, float[] A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
    int
    potrf2(Layout layout, UPLO uplo, int n, DoubleBuffer A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
    int
    potrf2(Layout layout, UPLO uplo, int n, FloatBuffer A, int lda)
    Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
    int
    potrs(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
    Solves a system of linear equations
    int
    potrs(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
    Solves a system of linear equations
    int
    potrs(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
    Solves a system of linear equations
    int
    potrs(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
    Solves a system of linear equations
    int
    potrs(Layout layout, UPLO uplo, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer B, int ldb)
    Solves a system of linear equations
    int
    ppsv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, double[] B, int ldb)
    Solves a real system of linear equations.
    int
    ppsv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, float[] B, int ldb)
    Solves a real system of linear equations.
    int
    ppsv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, DoubleBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    ppsv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, FloatBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    pptrf(Layout layout, UPLO uplo, int n, double[] AP)
    Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
    int
    pptrf(Layout layout, UPLO uplo, int n, float[] AP)
    Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
    int
    pptrf(Layout layout, UPLO uplo, int n, DoubleBuffer AP)
    Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
    int
    pptrf(Layout layout, UPLO uplo, int n, FloatBuffer AP)
    Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
    int
    pptrs(Layout layout, UPLO uplo, int n, int nrhs, double[] AP, double[] B, int ldb)
    Solves a system of linear equations
    int
    pptrs(Layout layout, UPLO uplo, int n, int nrhs, float[] AP, float[] B, int ldb)
    Solves a system of linear equations
    int
    pptrs(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer AP, DoubleBuffer B, int ldb)
    Solves a system of linear equations
    int
    pptrs(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer AP, FloatBuffer B, int ldb)
    Solves a system of linear equations
    int
    spsv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int[] ipiv, double[] B, int ldb)
    Solves a real system of linear equations.
    int
    spsv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int[] ipiv, float[] B, int ldb)
    Solves a real system of linear equations.
    int
    spsv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, IntBuffer ipiv, DoubleBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    spsv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, IntBuffer ipiv, FloatBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    sptrf(Layout layout, UPLO uplo, int n, double[] AP, int[] ipiv)
    Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
    int
    sptrf(Layout layout, UPLO uplo, int n, float[] AP, int[] ipiv)
    Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
    int
    sptrf(Layout layout, UPLO uplo, int n, DoubleBuffer AP, IntBuffer ipiv)
    Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
    int
    sptrf(Layout layout, UPLO uplo, int n, FloatBuffer AP, IntBuffer ipiv)
    Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
    int
    sptrs(Layout layout, UPLO uplo, int n, int nrhs, double[] AP, int[] ipiv, double[] B, int ldb)
    Solves a system of linear equations
    int
    sptrs(Layout layout, UPLO uplo, int n, int nrhs, float[] AP, int[] ipiv, float[] B, int ldb)
    Solves a system of linear equations
    int
    sptrs(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer AP, IntBuffer ipiv, DoubleBuffer B, int ldb)
    Solves a system of linear equations
    int
    sptrs(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer AP, IntBuffer ipiv, FloatBuffer B, int ldb)
    Solves a system of linear equations
    int
    syev(Layout layout, EVDJob jobz, UPLO uplo, int n, double[] A, int lda, double[] w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syev(Layout layout, EVDJob jobz, UPLO uplo, int n, float[] A, int lda, float[] w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syev(Layout layout, EVDJob jobz, UPLO uplo, int n, DoubleBuffer A, int lda, DoubleBuffer w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syev(Layout layout, EVDJob jobz, UPLO uplo, int n, FloatBuffer A, int lda, FloatBuffer w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, double[] A, int lda, double[] w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, float[] A, int lda, float[] w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, DoubleBuffer A, int lda, DoubleBuffer w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, FloatBuffer A, int lda, FloatBuffer w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer w)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, double[] A, int lda, double vl, double vu, int il, int iu, double abstol, int[] m, double[] w, double[] Z, int ldz, int[] isuppz)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, float[] A, int lda, float vl, float vu, int il, int iu, float abstol, int[] m, float[] w, float[] Z, int ldz, int[] isuppz)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, DoubleBuffer A, int lda, double vl, double vu, int il, int iu, double abstol, IntBuffer m, DoubleBuffer w, DoubleBuffer Z, int ldz, IntBuffer isuppz)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, FloatBuffer A, int lda, float vl, float vu, int il, int iu, float abstol, IntBuffer m, FloatBuffer w, FloatBuffer Z, int ldz, IntBuffer isuppz)
    Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
    int
    sysv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
    Solves a real system of linear equations.
    int
    sysv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
    Solves a real system of linear equations.
    int
    sysv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    sysv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
    Solves a real system of linear equations.
    int
    sysv(Layout layout, UPLO uplo, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv, org.bytedeco.javacpp.DoublePointer B, int ldb)
    Solves a real system of linear equations.
    int
    trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
    Solves a triangular system of the form
    int
    trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
    Solves a triangular system of the form
    int
    trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
    Solves a triangular system of the form
    int
    trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
    Solves a triangular system of the form
    int
    trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer B, int ldb)
    Solves a triangular system of the form
  • Field Details

    • engine

      static final LAPACK engine
      The default LAPACK engine.
  • Method Details

    • getInstance

      static LAPACK getInstance()
      Creates an instance.
      Returns:
      a LAPACK instance.
    • gesv

      int gesv(Layout layout, int n, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gesv

      int gesv(Layout layout, int n, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A.LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gesv

      int gesv(Layout layout, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv, org.bytedeco.javacpp.DoublePointer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A.LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gesv

      int gesv(Layout layout, int n, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gesv

      int gesv(Layout layout, int n, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • sysv

      int sysv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • sysv

      int sysv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • sysv

      int sysv(Layout layout, UPLO uplo, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv, org.bytedeco.javacpp.DoublePointer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • sysv

      int sysv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • sysv

      int sysv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • spsv

      int spsv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int[] ipiv, double[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • spsv

      int spsv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, IntBuffer ipiv, DoubleBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • spsv

      int spsv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int[] ipiv, float[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • spsv

      int spsv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, IntBuffer ipiv, FloatBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.

      The diagonal pivoting method is used to factor A as

      
           A = U * D * U<sup>T</sup>,  if UPLO = 'U'
       
      or
      
           A = L * D * L<sup>T</sup>,  if UPLO = 'L'
       
      where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • posv

      int posv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • posv

      int posv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • posv

      int posv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • posv

      int posv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • ppsv

      int ppsv(Layout layout, UPLO uplo, int n, int nrhs, double[] A, double[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • ppsv

      int ppsv(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, DoubleBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • ppsv

      int ppsv(Layout layout, UPLO uplo, int n, int nrhs, float[] A, float[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • ppsv

      int ppsv(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, FloatBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices.

      The Cholesky decomposition is used to factor A as

      
           A = U<sup>T</sup>* U,  if UPLO = 'U'
       
      or
      
           A = L * L<sup>T</sup>,  if UPLO = 'L'
       
      where U is an upper triangular matrix and L is a lower triangular matrix. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The symmetric packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT, in the same storage format as A.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i of A is not positive definite, so the factorization could not be completed, and the solution has not been computed.
    • gbsv

      int gbsv(Layout layout, int n, int kl, int ku, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - the number of subdiagonal elements of band matrix.
      ku - the number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On entry, the matrix A in band storage, in rows KL+1 to 2*KL+KU+1; rows 1 to KL of the array need not be set. The j-th column of A is stored in the j-th column of the matrix AB as follows: AB(KL+KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+KL)

      On exit, details of the factorization: U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.

      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gbsv

      int gbsv(Layout layout, int n, int kl, int ku, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - the number of subdiagonal elements of band matrix.
      ku - the number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On entry, the matrix A in band storage, in rows KL+1 to 2*KL+KU+1; rows 1 to KL of the array need not be set. The j-th column of A is stored in the j-th column of the matrix AB as follows: AB(KL+KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+KL)

      On exit, details of the factorization: U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.

      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gbsv

      int gbsv(Layout layout, int n, int kl, int ku, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - the number of subdiagonal elements of band matrix.
      ku - the number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On entry, the matrix A in band storage, in rows KL+1 to 2*KL+KU+1; rows 1 to KL of the array need not be set. The j-th column of A is stored in the j-th column of the matrix AB as follows: AB(KL+KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+KL)

      On exit, details of the factorization: U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.

      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gbsv

      int gbsv(Layout layout, int n, int kl, int ku, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
      Solves a real system of linear equations.
      
           A * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices.

      The LU decomposition with partial pivoting and row interchanges is used to factor A as

      
           A = P * L * U
       
      where P is a permutation matrix, L is unit lower triangular, and U is upper triangular. The factored form of A is then used to solve the system of equations A * X = B.
      Parameters:
      layout - The matrix layout.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - the number of subdiagonal elements of band matrix.
      ku - the number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On entry, the matrix A in band storage, in rows KL+1 to 2*KL+KU+1; rows 1 to KL of the array need not be set. The j-th column of A is stored in the j-th column of the matrix AB as follows: AB(KL+KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+KL)

      On exit, details of the factorization: U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.

      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, so the solution could not be computed.
    • gels

      int gels(Layout layout, Transpose trans, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
      Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A. It is assumed that A has full rank.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gels

      int gels(Layout layout, Transpose trans, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
      Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A. It is assumed that A has full rank.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gels

      int gels(Layout layout, Transpose trans, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
      Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A. It is assumed that A has full rank.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gels

      int gels(Layout layout, Transpose trans, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
      Solves an overdetermined or underdetermined system, using a QR or LQ factorization of A. It is assumed that A has full rank.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsy

      int gelsy(Layout layout, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb, int[] jpvt, double rcond, int[] rank)
      Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A. A may be rank-deficient.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      jpvt - On entry, if JPVT(i) != 0, the i-th column of A is permuted to the front of AP, otherwise column i is a free column. On exit, if JPVT(i) = k, then the i-th column of AP was the k-th column of A.
      rcond - RCOND is used to determine the effective rank of A, which is defined as the order of the largest leading triangular submatrix R11 in the QR factorization with pivoting of A, whose estimated condition number < 1/RCOND.
      rank - The effective rank of A, i.e., the order of the submatrix R11. This is the same as the order of the submatrix T11 in the complete orthogonal factorization of A.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsy

      int gelsy(Layout layout, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, IntBuffer jpvt, double rcond, IntBuffer rank)
      Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A. A may be rank-deficient.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      jpvt - On entry, if JPVT(i) != 0, the i-th column of A is permuted to the front of AP, otherwise column i is a free column. On exit, if JPVT(i) = k, then the i-th column of AP was the k-th column of A.
      rcond - RCOND is used to determine the effective rank of A, which is defined as the order of the largest leading triangular submatrix R11 in the QR factorization with pivoting of A, whose estimated condition number < 1/RCOND.
      rank - The effective rank of A, i.e., the order of the submatrix R11. This is the same as the order of the submatrix T11 in the complete orthogonal factorization of A.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsy

      int gelsy(Layout layout, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb, int[] jpvt, float rcond, int[] rank)
      Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A. A may be rank-deficient.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      jpvt - On entry, if JPVT(i) != 0, the i-th column of A is permuted to the front of AP, otherwise column i is a free column. On exit, if JPVT(i) = k, then the i-th column of AP was the k-th column of A.
      rcond - RCOND is used to determine the effective rank of A, which is defined as the order of the largest leading triangular submatrix R11 in the QR factorization with pivoting of A, whose estimated condition number < 1/RCOND.
      rank - The effective rank of A, i.e., the order of the submatrix R11. This is the same as the order of the submatrix T11 in the complete orthogonal factorization of A.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsy

      int gelsy(Layout layout, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb, IntBuffer jpvt, float rcond, IntBuffer rank)
      Solves an overdetermined or underdetermined system, using a complete orthogonal factorization of A. A may be rank-deficient.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      jpvt - On entry, if JPVT(i) != 0, the i-th column of A is permuted to the front of AP, otherwise column i is a free column. On exit, if JPVT(i) = k, then the i-th column of AP was the k-th column of A.
      rcond - RCOND is used to determine the effective rank of A, which is defined as the order of the largest leading triangular submatrix R11 in the QR factorization with pivoting of A, whose estimated condition number < 1/RCOND.
      rank - The effective rank of A, i.e., the order of the submatrix R11. This is the same as the order of the submatrix T11 in the complete orthogonal factorization of A.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelss

      int gelss(Layout layout, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb, double[] s, double rcond, int[] rank)
      Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelss

      int gelss(Layout layout, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer s, double rcond, IntBuffer rank)
      Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelss

      int gelss(Layout layout, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb, float[] s, float rcond, int[] rank)
      Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelss

      int gelss(Layout layout, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer s, float rcond, IntBuffer rank)
      Solves an overdetermined or underdetermined system, using the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsd

      int gelsd(Layout layout, int m, int n, int nrhs, double[] A, int lda, double[] B, int ldb, double[] s, double rcond, int[] rank)
      Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsd

      int gelsd(Layout layout, int m, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer s, double rcond, IntBuffer rank)
      Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsd

      int gelsd(Layout layout, int m, int n, int nrhs, float[] A, int lda, float[] B, int ldb, float[] s, float rcond, int[] rank)
      Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gelsd

      int gelsd(Layout layout, int m, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer s, float rcond, IntBuffer rank)
      Solves an overdetermined or underdetermined system, using a divide and conquer algorithm with the singular value decomposition (SVD) of A. A may be rank-deficient.

      The effective rank of A is determined by treating as zero those singular values which are less than RCOND times the largest singular value.

      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The matrix of dimension (LDA, N). On exit, A is overwritten by the factorization.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - The right hand side matrix of dimension (LDB, NRHS). On exit, if INFO = 0, B is overwritten by the solution vectors, stored columnwise.
      ldb - The leading dimension of the matrix B. LDB >= max(1,M,N).
      s - The singular values of A in decreasing order. The condition number of A in the 2-norm = S(1)/S(min(m,n)).
      rcond - RCOND is used to determine the effective rank of A. Singular values S(i) <= {@code RCOND*S(1)} are treated as zero. If RCOND < 0, machine precision is used instead.
      rank - The effective rank of A, i.e., the number of singular values which are greater than RCOND*S(1).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of the triangular factor of A is zero, so that A does not have full rank; the least squares solution could not be computed.
    • gglse

      int gglse(Layout layout, int m, int n, int p, double[] A, int lda, double[] B, int ldb, double[] c, double[] d, double[] x)
      Solves a linear equality-constrained least squares (LSE) problem.
      
           minimize || c - A*x ||_2   subject to   B*x = d
       
      where A is an M-by-N matrix, B is a P-by-N matrix, c is a given M-vector, and d is a given P-vector. It is assumed that P <= N <= M+P, and
      
           rank(B) = P and  rank( (A) ) = N
                                ( (B) )
       
      These conditions ensure that the LSE problem has a unique solution, which is obtained using a generalized RQ factorization of the matrices (B, A) given by
      
           B = (0 R)*Q,   A = Z*T*Q
       
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A and B.
      p - The number of rows of the matrix B. 0 <= P <= N <= M+P.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix T.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - On entry, the P-by-N matrix B. On exit, the upper triangle of the submatrix B(1:P,N-P+1:N) contains the P-by-P upper triangular matrix R.
      ldb - The leading dimension of the matrix B. LDB >= max(1,P).
      c - Dimension (M). On entry, C contains the right hand side vector for the least squares part of the LSE problem. On exit, the residual sum of squares for the solution is given by the sum of squares of elements N-P+1 to M of vector C.
      d - Dimension (P). On entry, D contains the right hand side vector for the constrained equation. On exit, D is destroyed.
      x - Dimension (N). On exit, X is the solution of the LSE problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with B in the generalized RQ factorization of the pair (B, A) is singular, so that rank(B) < P; the least squares solution could not be computed. = 2: the (N-P) by (N-P) part of the upper trapezoidal factor T associated with A in the generalized RQ factorization of the pair (B, A) is singular, so that rank( A, B ) < N; the least squares solution could not be computed.
    • gglse

      int gglse(Layout layout, int m, int n, int p, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer c, DoubleBuffer d, DoubleBuffer x)
      Solves a linear equality-constrained least squares (LSE) problem.
      
           minimize || c - A*x ||_2   subject to   B*x = d
       
      where A is an M-by-N matrix, B is a P-by-N matrix, c is a given M-vector, and d is a given P-vector. It is assumed that P <= N <= M+P, and
      
           rank(B) = P and  rank( (A) ) = N
                                ( (B) )
       
      These conditions ensure that the LSE problem has a unique solution, which is obtained using a generalized RQ factorization of the matrices (B, A) given by
      
           B = (0 R)*Q,   A = Z*T*Q
       
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A and B.
      p - The number of rows of the matrix B. 0 <= P <= N <= M+P.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix T.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - On entry, the P-by-N matrix B. On exit, the upper triangle of the submatrix B(1:P,N-P+1:N) contains the P-by-P upper triangular matrix R.
      ldb - The leading dimension of the matrix B. LDB >= max(1,P).
      c - Dimension (M). On entry, C contains the right hand side vector for the least squares part of the LSE problem. On exit, the residual sum of squares for the solution is given by the sum of squares of elements N-P+1 to M of vector C.
      d - Dimension (P). On entry, D contains the right hand side vector for the constrained equation. On exit, D is destroyed.
      x - Dimension (N). On exit, X is the solution of the LSE problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with B in the generalized RQ factorization of the pair (B, A) is singular, so that rank(B) < P; the least squares solution could not be computed. = 2: the (N-P) by (N-P) part of the upper trapezoidal factor T associated with A in the generalized RQ factorization of the pair (B, A) is singular, so that rank( A, B ) < N; the least squares solution could not be computed.
    • gglse

      int gglse(Layout layout, int m, int n, int p, float[] A, int lda, float[] B, int ldb, float[] c, float[] d, float[] x)
      Solves a linear equality-constrained least squares (LSE) problem.
      
           minimize || c - A*x ||_2   subject to   B*x = d
       
      where A is an M-by-N matrix, B is a P-by-N matrix, c is a given M-vector, and d is a given P-vector. It is assumed that P <= N <= M+P, and
      
           rank(B) = P and  rank( (A) ) = N
                                ( (B) )
       
      These conditions ensure that the LSE problem has a unique solution, which is obtained using a generalized RQ factorization of the matrices (B, A) given by
      
           B = (0 R)*Q,   A = Z*T*Q
       
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A and B.
      p - The number of rows of the matrix B. 0 <= P <= N <= M+P.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix T.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - On entry, the P-by-N matrix B. On exit, the upper triangle of the submatrix B(1:P,N-P+1:N) contains the P-by-P upper triangular matrix R.
      ldb - The leading dimension of the matrix B. LDB >= max(1,P).
      c - Dimension (M). On entry, C contains the right hand side vector for the least squares part of the LSE problem. On exit, the residual sum of squares for the solution is given by the sum of squares of elements N-P+1 to M of vector C.
      d - Dimension (P). On entry, D contains the right hand side vector for the constrained equation. On exit, D is destroyed.
      x - Dimension (N). On exit, X is the solution of the LSE problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with B in the generalized RQ factorization of the pair (B, A) is singular, so that rank(B) < P; the least squares solution could not be computed. = 2: the (N-P) by (N-P) part of the upper trapezoidal factor T associated with A in the generalized RQ factorization of the pair (B, A) is singular, so that rank( A, B ) < N; the least squares solution could not be computed.
    • gglse

      int gglse(Layout layout, int m, int n, int p, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer c, FloatBuffer d, FloatBuffer x)
      Solves a linear equality-constrained least squares (LSE) problem.
      
           minimize || c - A*x ||_2   subject to   B*x = d
       
      where A is an M-by-N matrix, B is a P-by-N matrix, c is a given M-vector, and d is a given P-vector. It is assumed that P <= N <= M+P, and
      
           rank(B) = P and  rank( (A) ) = N
                                ( (B) )
       
      These conditions ensure that the LSE problem has a unique solution, which is obtained using a generalized RQ factorization of the matrices (B, A) given by
      
           B = (0 R)*Q,   A = Z*T*Q
       
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A and B.
      p - The number of rows of the matrix B. 0 <= P <= N <= M+P.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix T.
      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      B - On entry, the P-by-N matrix B. On exit, the upper triangle of the submatrix B(1:P,N-P+1:N) contains the P-by-P upper triangular matrix R.
      ldb - The leading dimension of the matrix B. LDB >= max(1,P).
      c - Dimension (M). On entry, C contains the right hand side vector for the least squares part of the LSE problem. On exit, the residual sum of squares for the solution is given by the sum of squares of elements N-P+1 to M of vector C.
      d - Dimension (P). On entry, D contains the right hand side vector for the constrained equation. On exit, D is destroyed.
      x - Dimension (N). On exit, X is the solution of the LSE problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with B in the generalized RQ factorization of the pair (B, A) is singular, so that rank(B) < P; the least squares solution could not be computed. = 2: the (N-P) by (N-P) part of the upper trapezoidal factor T associated with A in the generalized RQ factorization of the pair (B, A) is singular, so that rank( A, B ) < N; the least squares solution could not be computed.
    • ggglm

      int ggglm(Layout layout, int n, int m, int p, double[] A, int lda, double[] B, int ldb, double[] d, double[] x, double[] y)
      Solves a general Gauss-Markov linear model (GLM) problem.
      
           minimize || y ||_2   subject to   d = A*x + B*y
               x
       
      where A is an N-by-M matrix, B is an N-by-P matrix, and d is a given N-vector. It is assumed that M <= N <= M+P, and
      
           rank(A) = M    and    rank( A B ) = N
       
      Under these assumptions, the constrained equation is always consistent, and there is a unique solution x and a minimal 2-norm solution y, which is obtained using a generalized QR factorization of the matrices (A, B) given by
      
           A = Q*(R),   B = Q*T*Z
                 (0)
       
      In particular, if matrix B is square nonsingular, then the problem GLM is equivalent to the following weighted linear least squares problem
      
           minimize || inv(B)*(d-A*x) ||_2
               x
       
      where inv(B) denotes the inverse of B.
      Parameters:
      layout - The matrix layout.
      n - The number of rows of the matrix A and B.
      m - The number of columns of the matrix A. 0 <= M <= N.
      p - The number of columns of the matrix B. P >= N-M.
      A - The matrix of dimension (LDA, M). On exit, the upper triangular part of the matrix A contains the M-by-M upper triangular matrix R.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-P matrix B. On exit, if N <= P, the upper triangle of the subarray B(1:N,P-N+1:P) contains the N-by-N upper triangular matrix T; if N > P, the elements on and above the (N-P)th subdiagonal contain the N-by-P upper trapezoidal matrix T.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      d - Dimension (N). On entry, D is the left hand side of the GLM equation. On exit, D is destroyed.
      x - Dimension (M). On exit, X and Y are the solutions of the GLM problem.
      y - Dimension (P). On exit, X and Y are the solutions of the GLM problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with A in the generalized QR factorization of the pair (A, B) is singular, so that rank(A) < M; the least squares solution could not be computed. = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal factor T associated with B in the generalized QR factorization of the pair (A, B) is singular, so that rank( A B ) < N; the least squares solution could not be computed.
    • ggglm

      int ggglm(Layout layout, int n, int m, int p, DoubleBuffer A, int lda, DoubleBuffer B, int ldb, DoubleBuffer d, DoubleBuffer x, DoubleBuffer y)
      Solves a general Gauss-Markov linear model (GLM) problem.
      
           minimize || y ||_2   subject to   d = A*x + B*y
               x
       
      where A is an N-by-M matrix, B is an N-by-P matrix, and d is a given N-vector. It is assumed that M <= N <= M+P, and
      
           rank(A) = M    and    rank( A B ) = N
       
      Under these assumptions, the constrained equation is always consistent, and there is a unique solution x and a minimal 2-norm solution y, which is obtained using a generalized QR factorization of the matrices (A, B) given by
      
           A = Q*(R),   B = Q*T*Z
                 (0)
       
      In particular, if matrix B is square nonsingular, then the problem GLM is equivalent to the following weighted linear least squares problem
      
           minimize || inv(B)*(d-A*x) ||_2
               x
       
      where inv(B) denotes the inverse of B.
      Parameters:
      layout - The matrix layout.
      n - The number of rows of the matrix A and B.
      m - The number of columns of the matrix A. 0 <= M <= N.
      p - The number of columns of the matrix B. P >= N-M.
      A - The matrix of dimension (LDA, M). On exit, the upper triangular part of the matrix A contains the M-by-M upper triangular matrix R.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-P matrix B. On exit, if N <= P, the upper triangle of the subarray B(1:N,P-N+1:P) contains the N-by-N upper triangular matrix T; if N > P, the elements on and above the (N-P)th subdiagonal contain the N-by-P upper trapezoidal matrix T.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      d - Dimension (N). On entry, D is the left hand side of the GLM equation. On exit, D is destroyed.
      x - Dimension (M). On exit, X and Y are the solutions of the GLM problem.
      y - Dimension (P). On exit, X and Y are the solutions of the GLM problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with A in the generalized QR factorization of the pair (A, B) is singular, so that rank(A) < M; the least squares solution could not be computed. = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal factor T associated with B in the generalized QR factorization of the pair (A, B) is singular, so that rank( A B ) < N; the least squares solution could not be computed.
    • ggglm

      int ggglm(Layout layout, int n, int m, int p, float[] A, int lda, float[] B, int ldb, float[] d, float[] x, float[] y)
      Solves a general Gauss-Markov linear model (GLM) problem.
      
           minimize || y ||_2   subject to   d = A*x + B*y
               x
       
      where A is an N-by-M matrix, B is an N-by-P matrix, and d is a given N-vector. It is assumed that M <= N <= M+P, and
      
           rank(A) = M    and    rank( A B ) = N
       
      Under these assumptions, the constrained equation is always consistent, and there is a unique solution x and a minimal 2-norm solution y, which is obtained using a generalized QR factorization of the matrices (A, B) given by
      
           A = Q*(R),   B = Q*T*Z
                 (0)
       
      In particular, if matrix B is square nonsingular, then the problem GLM is equivalent to the following weighted linear least squares problem
      
           minimize || inv(B)*(d-A*x) ||_2
               x
       
      where inv(B) denotes the inverse of B.
      Parameters:
      layout - The matrix layout.
      n - The number of rows of the matrix A and B.
      m - The number of columns of the matrix A. 0 <= M <= N.
      p - The number of columns of the matrix B. P >= N-M.
      A - The matrix of dimension (LDA, M). On exit, the upper triangular part of the matrix A contains the M-by-M upper triangular matrix R.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-P matrix B. On exit, if N <= P, the upper triangle of the subarray B(1:N,P-N+1:P) contains the N-by-N upper triangular matrix T; if N > P, the elements on and above the (N-P)th subdiagonal contain the N-by-P upper trapezoidal matrix T.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      d - Dimension (N). On entry, D is the left hand side of the GLM equation. On exit, D is destroyed.
      x - Dimension (M). On exit, X and Y are the solutions of the GLM problem.
      y - Dimension (P). On exit, X and Y are the solutions of the GLM problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with A in the generalized QR factorization of the pair (A, B) is singular, so that rank(A) < M; the least squares solution could not be computed. = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal factor T associated with B in the generalized QR factorization of the pair (A, B) is singular, so that rank( A B ) < N; the least squares solution could not be computed.
    • ggglm

      int ggglm(Layout layout, int n, int m, int p, FloatBuffer A, int lda, FloatBuffer B, int ldb, FloatBuffer d, FloatBuffer x, FloatBuffer y)
      Solves a general Gauss-Markov linear model (GLM) problem.
      
           minimize || y ||_2   subject to   d = A*x + B*y
               x
       
      where A is an N-by-M matrix, B is an N-by-P matrix, and d is a given N-vector. It is assumed that M <= N <= M+P, and
      
           rank(A) = M    and    rank( A B ) = N
       
      Under these assumptions, the constrained equation is always consistent, and there is a unique solution x and a minimal 2-norm solution y, which is obtained using a generalized QR factorization of the matrices (A, B) given by
      
           A = Q*(R),   B = Q*T*Z
                 (0)
       
      In particular, if matrix B is square nonsingular, then the problem GLM is equivalent to the following weighted linear least squares problem
      
           minimize || inv(B)*(d-A*x) ||_2
               x
       
      where inv(B) denotes the inverse of B.
      Parameters:
      layout - The matrix layout.
      n - The number of rows of the matrix A and B.
      m - The number of columns of the matrix A. 0 <= M <= N.
      p - The number of columns of the matrix B. P >= N-M.
      A - The matrix of dimension (LDA, M). On exit, the upper triangular part of the matrix A contains the M-by-M upper triangular matrix R.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-P matrix B. On exit, if N <= P, the upper triangle of the subarray B(1:N,P-N+1:P) contains the N-by-N upper triangular matrix T; if N > P, the elements on and above the (N-P)th subdiagonal contain the N-by-P upper trapezoidal matrix T.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      d - Dimension (N). On entry, D is the left hand side of the GLM equation. On exit, D is destroyed.
      x - Dimension (M). On exit, X and Y are the solutions of the GLM problem.
      y - Dimension (P). On exit, X and Y are the solutions of the GLM problem.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value = 1: the upper triangular factor R associated with A in the generalized QR factorization of the pair (A, B) is singular, so that rank(A) < M; the least squares solution could not be computed. = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal factor T associated with B in the generalized QR factorization of the pair (A, B) is singular, so that rank( A B ) < N; the least squares solution could not be computed.
    • geev

      int geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, double[] A, int lda, double[] wr, double[] wi, double[] Vl, int ldvl, double[] Vr, int ldvr)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors. The computed eigenvectors are normalized to have Euclidean norm equal to 1 and largest component real.
      Parameters:
      layout - The matrix layout.
      jobvl - The option for computing all or part of the matrix U.
      jobvr - The option for computing all or part of the matrix VT.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      wr - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      wi - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      Vl - Left eigenvectors. If JOBVL = 'N', Vl is not referenced.
      ldvl - The leading dimension of the matrix Vl.
      Vr - Right eigenvectors. If JOBVR = 'N', Vr is not referenced.
      ldvr - The leading dimension of the matrix Vr.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the QR algorithm failed to compute all the eigenvalues, and no eigenvectors have been computed; elements i+1:N of WR and WI contain eigenvalues which have converged.
    • geev

      int geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, DoubleBuffer A, int lda, DoubleBuffer wr, DoubleBuffer wi, DoubleBuffer Vl, int ldvl, DoubleBuffer Vr, int ldvr)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors. The computed eigenvectors are normalized to have Euclidean norm equal to 1 and largest component real.
      Parameters:
      layout - The matrix layout.
      jobvl - The option for computing all or part of the matrix U.
      jobvr - The option for computing all or part of the matrix VT.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      wr - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      wi - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      Vl - Left eigenvectors. If JOBVL = 'N', Vl is not referenced.
      ldvl - The leading dimension of the matrix Vl.
      Vr - Right eigenvectors. If JOBVR = 'N', Vr is not referenced.
      ldvr - The leading dimension of the matrix Vr.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the QR algorithm failed to compute all the eigenvalues, and no eigenvectors have been computed; elements i+1:N of WR and WI contain eigenvalues which have converged.
    • geev

      int geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer wr, org.bytedeco.javacpp.DoublePointer wi, org.bytedeco.javacpp.DoublePointer Vl, int ldvl, org.bytedeco.javacpp.DoublePointer Vr, int ldvr)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors. The computed eigenvectors are normalized to have Euclidean norm equal to 1 and largest component real.
      Parameters:
      layout - The matrix layout.
      jobvl - The option for computing all or part of the matrix U.
      jobvr - The option for computing all or part of the matrix VT.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      wr - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      wi - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      Vl - Left eigenvectors. If JOBVL = 'N', Vl is not referenced.
      ldvl - The leading dimension of the matrix Vl.
      Vr - Right eigenvectors. If JOBVR = 'N', Vr is not referenced.
      ldvr - The leading dimension of the matrix Vr.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the QR algorithm failed to compute all the eigenvalues, and no eigenvectors have been computed; elements i+1:N of WR and WI contain eigenvalues which have converged.
    • geev

      int geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, float[] A, int lda, float[] wr, float[] wi, float[] Vl, int ldvl, float[] Vr, int ldvr)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors. The computed eigenvectors are normalized to have Euclidean norm equal to 1 and largest component real.
      Parameters:
      layout - The matrix layout.
      jobvl - The option for computing all or part of the matrix U.
      jobvr - The option for computing all or part of the matrix VT.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      wr - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      wi - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      Vl - Left eigenvectors. If JOBVL = 'N', Vl is not referenced.
      ldvl - The leading dimension of the matrix Vl.
      Vr - Right eigenvectors. If JOBVR = 'N', Vr is not referenced.
      ldvr - The leading dimension of the matrix Vr.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the QR algorithm failed to compute all the eigenvalues, and no eigenvectors have been computed; elements i+1:N of WR and WI contain eigenvalues which have converged.
    • geev

      int geev(Layout layout, EVDJob jobvl, EVDJob jobvr, int n, FloatBuffer A, int lda, FloatBuffer wr, FloatBuffer wi, FloatBuffer Vl, int ldvl, FloatBuffer Vr, int ldvr)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors. The computed eigenvectors are normalized to have Euclidean norm equal to 1 and largest component real.
      Parameters:
      layout - The matrix layout.
      jobvl - The option for computing all or part of the matrix U.
      jobvr - The option for computing all or part of the matrix VT.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      wr - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      wi - Dimension N. WR and WI contain the real and imaginary parts, respectively, of the computed eigenvalues. Complex conjugate pairs of eigenvalues appear consecutively with the eigenvalue having the positive imaginary part first.
      Vl - Left eigenvectors. If JOBVL = 'N', Vl is not referenced.
      ldvl - The leading dimension of the matrix Vl.
      Vr - Right eigenvectors. If JOBVR = 'N', Vr is not referenced.
      ldvr - The leading dimension of the matrix Vr.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the QR algorithm failed to compute all the eigenvalues, and no eigenvectors have been computed; elements i+1:N of WR and WI contain eigenvalues which have converged.
    • syev

      int syev(Layout layout, EVDJob jobz, UPLO uplo, int n, double[] A, int lda, double[] w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syev

      int syev(Layout layout, EVDJob jobz, UPLO uplo, int n, DoubleBuffer A, int lda, DoubleBuffer w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syev

      int syev(Layout layout, EVDJob jobz, UPLO uplo, int n, float[] A, int lda, float[] w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syev

      int syev(Layout layout, EVDJob jobz, UPLO uplo, int n, FloatBuffer A, int lda, FloatBuffer w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syevd

      int syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, double[] A, int lda, double[] w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. If eigenvectors are desired, it uses a divide and conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syevd

      int syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, DoubleBuffer A, int lda, DoubleBuffer w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. If eigenvectors are desired, it uses a divide and conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syevd

      int syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. If eigenvectors are desired, it uses a divide and conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syevd

      int syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, float[] A, int lda, float[] w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. If eigenvectors are desired, it uses a divide and conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syevd

      int syevd(Layout layout, EVDJob jobz, UPLO uplo, int n, FloatBuffer A, int lda, FloatBuffer w)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. If eigenvectors are desired, it uses a divide and conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      w - Dimension N. If INFO = 0, the eigenvalues in ascending order.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
    • syevr

      int syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, double[] A, int lda, double vl, double vu, int il, int iu, double abstol, int[] m, double[] w, double[] Z, int ldz, int[] isuppz)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. Eigenvalues and eigenvectors can be selected by specifying either a range of values or a range of indices for the desired eigenvalues.

      SYEVR first reduces the matrix A to tridiagonal form T with a call to DSYTRD. Then, whenever possible, DSYEVR calls DSTEMR to compute the eigenspectrum using Relatively Robust Representations. DSTEMR computes eigenvalues by the dqds algorithm, while orthogonal eigenvectors are computed from various "good" L D L^T representations (also known as Relatively Robust Representations). Gram-Schmidt orthogonalization is avoided as far as possible. More specifically, the various steps of the algorithm are as follows.

      The desired accuracy of the output can be specified by the input parameter ABSTOL.

      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      range - The range of eigenvalues to compute.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      vl - The lower bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      vu - The upper bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      il - The index of the smallest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      iu - The index of the largest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      abstol - The absolute error tolerance for the eigenvalues.
      m - The total number of eigenvalues found.
      w - The first M elements contain the selected eigenvalues in ascending order.
      Z - Dimension (LDZ, max(1,M)). If JOBZ = 'V', then if INFO = 0, the first M columns of Z contain the orthonormal eigenvectors of the matrix A corresponding to the selected eigenvalues, with the i-th column of Z holding the eigenvector associated with W(i). If JOBZ = 'N', then Z is not referenced.
      ldz - The leading dimension of the matrix Z.
      isuppz - Dimension 2 * max(1,M). The support of the eigenvectors in Z, i.e., the indices indicating the nonzero elements in Z. The i-th eigenvector is nonzero only in elements ISUPPZ( 2*i-1 ) through ISUPPZ( 2*i ). This is an output of DSTEMR (tridiagonal matrix). The support of the eigenvectors of A is typically 1:N because of the orthogonal transformations applied by DORMTR. Implemented only for RANGE = 'A' or 'I' and IU - IL = N - 1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: Internal error
    • syevr

      int syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, DoubleBuffer A, int lda, double vl, double vu, int il, int iu, double abstol, IntBuffer m, DoubleBuffer w, DoubleBuffer Z, int ldz, IntBuffer isuppz)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. Eigenvalues and eigenvectors can be selected by specifying either a range of values or a range of indices for the desired eigenvalues.

      SYEVR first reduces the matrix A to tridiagonal form T with a call to DSYTRD. Then, whenever possible, DSYEVR calls DSTEMR to compute the eigenspectrum using Relatively Robust Representations. DSTEMR computes eigenvalues by the dqds algorithm, while orthogonal eigenvectors are computed from various "good" L D L^T representations (also known as Relatively Robust Representations). Gram-Schmidt orthogonalization is avoided as far as possible. More specifically, the various steps of the algorithm are as follows.

      The desired accuracy of the output can be specified by the input parameter ABSTOL.

      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      range - The range of eigenvalues to compute.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      vl - The lower bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      vu - The upper bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      il - The index of the smallest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      iu - The index of the largest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      abstol - The absolute error tolerance for the eigenvalues.
      m - The total number of eigenvalues found.
      w - The first M elements contain the selected eigenvalues in ascending order.
      Z - Dimension (LDZ, max(1,M)). If JOBZ = 'V', then if INFO = 0, the first M columns of Z contain the orthonormal eigenvectors of the matrix A corresponding to the selected eigenvalues, with the i-th column of Z holding the eigenvector associated with W(i). If JOBZ = 'N', then Z is not referenced.
      ldz - The leading dimension of the matrix Z.
      isuppz - Dimension 2 * max(1,M). The support of the eigenvectors in Z, i.e., the indices indicating the nonzero elements in Z. The i-th eigenvector is nonzero only in elements ISUPPZ( 2*i-1 ) through ISUPPZ( 2*i ). This is an output of DSTEMR (tridiagonal matrix). The support of the eigenvectors of A is typically 1:N because of the orthogonal transformations applied by DORMTR. Implemented only for RANGE = 'A' or 'I' and IU - IL = N - 1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: Internal error
    • syevr

      int syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, float[] A, int lda, float vl, float vu, int il, int iu, float abstol, int[] m, float[] w, float[] Z, int ldz, int[] isuppz)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. Eigenvalues and eigenvectors can be selected by specifying either a range of values or a range of indices for the desired eigenvalues.

      SYEVR first reduces the matrix A to tridiagonal form T with a call to DSYTRD. Then, whenever possible, DSYEVR calls DSTEMR to compute the eigenspectrum using Relatively Robust Representations. DSTEMR computes eigenvalues by the dqds algorithm, while orthogonal eigenvectors are computed from various "good" L D L^T representations (also known as Relatively Robust Representations). Gram-Schmidt orthogonalization is avoided as far as possible. More specifically, the various steps of the algorithm are as follows.

      The desired accuracy of the output can be specified by the input parameter ABSTOL.

      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      range - The range of eigenvalues to compute.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      vl - The lower bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      vu - The upper bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      il - The index of the smallest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      iu - The index of the largest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      abstol - The absolute error tolerance for the eigenvalues.
      m - The total number of eigenvalues found.
      w - The first M elements contain the selected eigenvalues in ascending order.
      Z - Dimension (LDZ, max(1,M)). If JOBZ = 'V', then if INFO = 0, the first M columns of Z contain the orthonormal eigenvectors of the matrix A corresponding to the selected eigenvalues, with the i-th column of Z holding the eigenvector associated with W(i). If JOBZ = 'N', then Z is not referenced.
      ldz - The leading dimension of the matrix Z.
      isuppz - Dimension 2 * max(1,M). The support of the eigenvectors in Z, i.e., the indices indicating the nonzero elements in Z. The i-th eigenvector is nonzero only in elements ISUPPZ( 2*i-1 ) through ISUPPZ( 2*i ). This is an output of DSTEMR (tridiagonal matrix). The support of the eigenvectors of A is typically 1:N because of the orthogonal transformations applied by DORMTR. Implemented only for RANGE = 'A' or 'I' and IU - IL = N - 1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: Internal error
    • syevr

      int syevr(Layout layout, EVDJob jobz, EigenRange range, UPLO uplo, int n, FloatBuffer A, int lda, float vl, float vu, int il, int iu, float abstol, IntBuffer m, FloatBuffer w, FloatBuffer Z, int ldz, IntBuffer isuppz)
      Computes the eigenvalues and, optionally, the left and/or right eigenvectors of a real symmetric matrix A. Eigenvalues and eigenvectors can be selected by specifying either a range of values or a range of indices for the desired eigenvalues.

      SYEVR first reduces the matrix A to tridiagonal form T with a call to DSYTRD. Then, whenever possible, DSYEVR calls DSTEMR to compute the eigenspectrum using Relatively Robust Representations. DSTEMR computes eigenvalues by the dqds algorithm, while orthogonal eigenvectors are computed from various "good" L D L^T representations (also known as Relatively Robust Representations). Gram-Schmidt orthogonalization is avoided as far as possible. More specifically, the various steps of the algorithm are as follows.

      The desired accuracy of the output can be specified by the input parameter ABSTOL.

      Parameters:
      layout - The matrix layout.
      jobz - The option if computing eigen vectors.
      range - The range of eigenvalues to compute.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On entry, the N-by-N matrix A. On exit, A has been overwritten.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      vl - The lower bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      vu - The upper bound of the interval to be searched for eigenvalues. Not referenced if RANGE = 'A' or 'I'.
      il - The index of the smallest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      iu - The index of the largest eigenvalue to be returned. Not referenced if RANGE = 'A' or 'V'.
      abstol - The absolute error tolerance for the eigenvalues.
      m - The total number of eigenvalues found.
      w - The first M elements contain the selected eigenvalues in ascending order.
      Z - Dimension (LDZ, max(1,M)). If JOBZ = 'V', then if INFO = 0, the first M columns of Z contain the orthonormal eigenvectors of the matrix A corresponding to the selected eigenvalues, with the i-th column of Z holding the eigenvector associated with W(i). If JOBZ = 'N', then Z is not referenced.
      ldz - The leading dimension of the matrix Z.
      isuppz - Dimension 2 * max(1,M). The support of the eigenvectors in Z, i.e., the indices indicating the nonzero elements in Z. The i-th eigenvector is nonzero only in elements ISUPPZ( 2*i-1 ) through ISUPPZ( 2*i ). This is an output of DSTEMR (tridiagonal matrix). The support of the eigenvectors of A is typically 1:N because of the orthogonal transformations applied by DORMTR. Implemented only for RANGE = 'A' or 'I' and IU - IL = N - 1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: Internal error
    • gesvd

      int gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, double[] A, int lda, double[] s, double[] U, int ldu, double[] VT, int ldvt, double[] superb)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
      Parameters:
      layout - The matrix layout.
      jobu - The option for computing all or part of the matrix U.
      jobvt - The option for computing all or part of the matrix VT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBU = 'O', A is overwritten with the first min(m,n) columns of U (the left singular vectors, stored columnwise).

      If JOBVT = 'O',A is overwritten with the first min(m,n) rows of VT (the right singular vectors, stored rowwise).

      If JOBU != 'O' and JOBVT != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      superb - The superdiagonal of the upper bidiagonal matrix B. Dimension min(M,N)-1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if DBDSQR did not converge, INFO specifies how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.
    • gesvd

      int gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, DoubleBuffer A, int lda, DoubleBuffer s, DoubleBuffer U, int ldu, DoubleBuffer VT, int ldvt, DoubleBuffer superb)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
      Parameters:
      layout - The matrix layout.
      jobu - The option for computing all or part of the matrix U.
      jobvt - The option for computing all or part of the matrix VT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBU = 'O', A is overwritten with the first min(m,n) columns of U (the left singular vectors, stored columnwise).

      If JOBVT = 'O',A is overwritten with the first min(m,n) rows of VT (the right singular vectors, stored rowwise).

      If JOBU != 'O' and JOBVT != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      superb - The superdiagonal of the upper bidiagonal matrix B. Dimension min(M,N)-1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if DBDSQR did not converge, INFO specifies how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.
    • gesvd

      int gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, float[] A, int lda, float[] s, float[] U, int ldu, float[] VT, int ldvt, float[] superb)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
      Parameters:
      layout - The matrix layout.
      jobu - The option for computing all or part of the matrix U.
      jobvt - The option for computing all or part of the matrix VT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBU = 'O', A is overwritten with the first min(m,n) columns of U (the left singular vectors, stored columnwise).

      If JOBVT = 'O',A is overwritten with the first min(m,n) rows of VT (the right singular vectors, stored rowwise).

      If JOBU != 'O' and JOBVT != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      superb - The superdiagonal of the upper bidiagonal matrix B. Dimension min(M,N)-1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if DBDSQR did not converge, INFO specifies how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.
    • gesvd

      int gesvd(Layout layout, SVDJob jobu, SVDJob jobvt, int m, int n, FloatBuffer A, int lda, FloatBuffer s, FloatBuffer U, int ldu, FloatBuffer VT, int ldvt, FloatBuffer superb)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors.
      Parameters:
      layout - The matrix layout.
      jobu - The option for computing all or part of the matrix U.
      jobvt - The option for computing all or part of the matrix VT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBU = 'O', A is overwritten with the first min(m,n) columns of U (the left singular vectors, stored columnwise).

      If JOBVT = 'O',A is overwritten with the first min(m,n) rows of VT (the right singular vectors, stored rowwise).

      If JOBU != 'O' and JOBVT != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      superb - The superdiagonal of the upper bidiagonal matrix B. Dimension min(M,N)-1.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: if DBDSQR did not converge, INFO specifies how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.
    • gesdd

      int gesdd(Layout layout, SVDJob jobz, int m, int n, double[] A, int lda, double[] s, double[] U, int ldu, double[] VT, int ldvt)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors. If singular vectors are desired, it uses a divide-and-conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option for computing all or part of the matrix U.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBZ = 'O', A is overwritten with the first N columns of U (the left singular vectors, stored columnwise) if M >= N; A is overwritten with the first M rows of VT (the right singular vectors, stored rowwise) otherwise.

      If JOBZ != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: DBDSDC did not converge, updating process failed.
    • gesdd

      int gesdd(Layout layout, SVDJob jobz, int m, int n, DoubleBuffer A, int lda, DoubleBuffer s, DoubleBuffer U, int ldu, DoubleBuffer VT, int ldvt)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors. If singular vectors are desired, it uses a divide-and-conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option for computing all or part of the matrix U.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBZ = 'O', A is overwritten with the first N columns of U (the left singular vectors, stored columnwise) if M >= N; A is overwritten with the first M rows of VT (the right singular vectors, stored rowwise) otherwise.

      If JOBZ != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: DBDSDC did not converge, updating process failed.
    • gesdd

      int gesdd(Layout layout, SVDJob jobz, int m, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer s, org.bytedeco.javacpp.DoublePointer U, int ldu, org.bytedeco.javacpp.DoublePointer VT, int ldvt)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors. If singular vectors are desired, it uses a divide-and-conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option for computing all or part of the matrix U.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBZ = 'O', A is overwritten with the first N columns of U (the left singular vectors, stored columnwise) if M >= N; A is overwritten with the first M rows of VT (the right singular vectors, stored rowwise) otherwise.

      If JOBZ != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: DBDSDC did not converge, updating process failed.
    • gesdd

      int gesdd(Layout layout, SVDJob jobz, int m, int n, float[] A, int lda, float[] s, float[] U, int ldu, float[] VT, int ldvt)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors. If singular vectors are desired, it uses a divide-and-conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option for computing all or part of the matrix U.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBZ = 'O', A is overwritten with the first N columns of U (the left singular vectors, stored columnwise) if M >= N; A is overwritten with the first M rows of VT (the right singular vectors, stored rowwise) otherwise.

      If JOBZ != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: DBDSDC did not converge, updating process failed.
    • gesdd

      int gesdd(Layout layout, SVDJob jobz, int m, int n, FloatBuffer A, int lda, FloatBuffer s, FloatBuffer U, int ldu, FloatBuffer VT, int ldvt)
      Computes the singular value decomposition (SVD) of a real M-by-N matrix A, optionally computing the left and/or right singular vectors. If singular vectors are desired, it uses a divide-and-conquer algorithm.
      Parameters:
      layout - The matrix layout.
      jobz - The option for computing all or part of the matrix U.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N).

      If JOBZ = 'O', A is overwritten with the first N columns of U (the left singular vectors, stored columnwise) if M >= N; A is overwritten with the first M rows of VT (the right singular vectors, stored rowwise) otherwise.

      If JOBZ != 'O', the contents of A are destroyed.

      lda - The leading dimension of the matrix A. LDA >= max(1,M).
      s - The singular values of A, sorted so that S(i) >= S(i+1). Dimension min(M,N).
      U - If JOBU = 'N' or 'O', U is not referenced.
      ldu - The leading dimension of the matrix U.
      VT - If JOBVT = 'N' or 'O', VT is not referenced.
      ldvt - The leading dimension of the matrix VT.
      Returns:
      INFO flag. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value. > 0: DBDSDC did not converge, updating process failed.
    • getrf

      int getrf(Layout layout, int m, int n, double[] A, int lda, int[] ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf

      int getrf(Layout layout, int m, int n, DoubleBuffer A, int lda, IntBuffer ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf

      int getrf(Layout layout, int m, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf

      int getrf(Layout layout, int m, int n, float[] A, int lda, int[] ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf

      int getrf(Layout layout, int m, int n, FloatBuffer A, int lda, IntBuffer ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf2

      int getrf2(Layout layout, int m, int n, double[] A, int lda, int[] ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges. This is the recursive version of the algorithm.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf2

      int getrf2(Layout layout, int m, int n, DoubleBuffer A, int lda, IntBuffer ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges. This is the recursive version of the algorithm.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf2

      int getrf2(Layout layout, int m, int n, float[] A, int lda, int[] ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges. This is the recursive version of the algorithm.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrf2

      int getrf2(Layout layout, int m, int n, FloatBuffer A, int lda, IntBuffer ipiv)
      Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges. This is the recursive version of the algorithm.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • gbtrf

      int gbtrf(Layout layout, int m, int n, int kl, int ku, double[] AB, int ldab, int[] ipiv)
      Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      AB - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • gbtrf

      int gbtrf(Layout layout, int m, int n, int kl, int ku, DoubleBuffer AB, int ldab, IntBuffer ipiv)
      Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      AB - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • gbtrf

      int gbtrf(Layout layout, int m, int n, int kl, int ku, float[] AB, int ldab, int[] ipiv)
      Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      AB - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • gbtrf

      int gbtrf(Layout layout, int m, int n, int kl, int ku, FloatBuffer AB, int ldab, IntBuffer ipiv)
      Computes an LU factorization of a band matrix A using partial pivoting with row interchanges.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      AB - The matrix of dimension (LDA, N). On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, U(i,i) is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • sptrf

      int sptrf(Layout layout, UPLO uplo, int n, double[] AP, int[] ipiv)
      Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix.
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, D(i,i) is exactly zero. The factorization has been completed, but the block diagonal matrix D is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • sptrf

      int sptrf(Layout layout, UPLO uplo, int n, DoubleBuffer AP, IntBuffer ipiv)
      Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix.
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, D(i,i) is exactly zero. The factorization has been completed, but the block diagonal matrix D is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • sptrf

      int sptrf(Layout layout, UPLO uplo, int n, float[] AP, int[] ipiv)
      Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix.
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, D(i,i) is exactly zero. The factorization has been completed, but the block diagonal matrix D is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • sptrf

      int sptrf(Layout layout, UPLO uplo, int n, FloatBuffer AP, IntBuffer ipiv)
      Computes the Bunch–Kaufman factorization of a symmetric packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix.
      ipiv - The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, D(i,i) is exactly zero. The factorization has been completed, but the block diagonal matrix D is exactly singular, and division by zero will occur if it is used to solve a system of equations.
    • getrs

      int getrs(Layout layout, Transpose trans, int n, int nrhs, double[] A, int lda, int[] ipiv, double[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GETRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The LU factorization computed by GETRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • getrs

      int getrs(Layout layout, Transpose trans, int n, int nrhs, DoubleBuffer A, int lda, IntBuffer ipiv, DoubleBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GETRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The LU factorization computed by GETRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • getrs

      int getrs(Layout layout, Transpose trans, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.IntPointer ipiv, org.bytedeco.javacpp.DoublePointer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GETRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The LU factorization computed by GETRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • getrs

      int getrs(Layout layout, Transpose trans, int n, int nrhs, float[] A, int lda, int[] ipiv, float[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GETRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The LU factorization computed by GETRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • getrs

      int getrs(Layout layout, Transpose trans, int n, int nrhs, FloatBuffer A, int lda, IntBuffer ipiv, FloatBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GETRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The LU factorization computed by GETRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • gbtrs

      int gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, double[] AB, int ldab, int[] ipiv, double[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GBTRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The LU factorization computed by GBTRF.
      ldab - The leading dimension of the matrix AB. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • gbtrs

      int gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, DoubleBuffer AB, int ldab, IntBuffer ipiv, DoubleBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GBTRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The LU factorization computed by GBTRF.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • gbtrs

      int gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, float[] AB, int ldab, int[] ipiv, float[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GBTRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The LU factorization computed by GBTRF.
      ldab - The leading dimension of the matrix AB. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • gbtrs

      int gbtrs(Layout layout, Transpose trans, int n, int kl, int ku, int nrhs, FloatBuffer AB, int ldab, IntBuffer ipiv, FloatBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N band matrix and X and B are N-by-NRHS matrices using the LU factorization computed by GBTRF.
      Parameters:
      layout - The matrix layout.
      trans - The normal or transpose of the matrix A.
      n - The number of linear equations, i.e., the order of the matrix A.
      kl - The number of subdiagonal elements of band matrix.
      ku - The number of superdiagonal elements of band matrix.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The LU factorization computed by GBTRF.
      ldab - The leading dimension of the matrix AB. LDA >= max(1,N).
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • sptrs

      int sptrs(Layout layout, UPLO uplo, int n, int nrhs, double[] AP, int[] ipiv, double[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N packed matrix and X and B are N-by-NRHS matrices using the Bunch-Kaufman factorization computed by SPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The Bunch-Kaufman factorization computed by SPTRF.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • sptrs

      int sptrs(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer AP, IntBuffer ipiv, DoubleBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N packed matrix and X and B are N-by-NRHS matrices using the Bunch-Kaufman factorization computed by SPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The Bunch-Kaufman factorization computed by SPTRF.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • sptrs

      int sptrs(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer AP, IntBuffer ipiv, FloatBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N packed matrix and X and B are N-by-NRHS matrices using the Bunch-Kaufman factorization computed by SPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The Bunch-Kaufman factorization computed by SPTRF.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • sptrs

      int sptrs(Layout layout, UPLO uplo, int n, int nrhs, float[] AP, int[] ipiv, float[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is an N-by-N packed matrix and X and B are N-by-NRHS matrices using the Bunch-Kaufman factorization computed by SPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The Bunch-Kaufman factorization computed by SPTRF.
      ipiv - The pivot indices that define the permutation matrix P; row i of the matrix was interchanged with row IPIV(i).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • potrf

      int potrf(Layout layout, UPLO uplo, int n, double[] A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf

      int potrf(Layout layout, UPLO uplo, int n, DoubleBuffer A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf

      int potrf(Layout layout, UPLO uplo, int n, org.bytedeco.javacpp.DoublePointer A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf

      int potrf(Layout layout, UPLO uplo, int n, float[] A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf

      int potrf(Layout layout, UPLO uplo, int n, FloatBuffer A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf2

      int potrf2(Layout layout, UPLO uplo, int n, double[] A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf2

      int potrf2(Layout layout, UPLO uplo, int n, DoubleBuffer A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf2

      int potrf2(Layout layout, UPLO uplo, int n, float[] A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrf2

      int potrf2(Layout layout, UPLO uplo, int n, FloatBuffer A, int lda)
      Computes the Cholesky factorization of a real symmetric positive definite matrix A using the recursive algorithm.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pbtrf

      int pbtrf(Layout layout, UPLO uplo, int n, int kd, double[] AB, int ldab)
      Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      AB - The band matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pbtrf

      int pbtrf(Layout layout, UPLO uplo, int n, int kd, DoubleBuffer AB, int ldab)
      Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      AB - The band matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pbtrf

      int pbtrf(Layout layout, UPLO uplo, int n, int kd, float[] AB, int ldab)
      Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      AB - The band matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pbtrf

      int pbtrf(Layout layout, UPLO uplo, int n, int kd, FloatBuffer AB, int ldab)
      Computes the Cholesky factorization of a real symmetric positive definite band matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      AB - The band matrix of dimension (LDA, N). On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      ldab - The leading dimension of the matrix A. LDA >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pptrf

      int pptrf(Layout layout, UPLO uplo, int n, double[] AP)
      Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pptrf

      int pptrf(Layout layout, UPLO uplo, int n, DoubleBuffer AP)
      Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pptrf

      int pptrf(Layout layout, UPLO uplo, int n, float[] AP)
      Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • pptrf

      int pptrf(Layout layout, UPLO uplo, int n, FloatBuffer AP)
      Computes the Cholesky factorization of a real symmetric positive definite packed matrix A.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The dimension of the matrix A.
      AP - The packed matrix. On exit, the factor U or L from the Cholesky factorization A = UT*U or A = L*LT.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the leading minor of order i is not positive definite, and the factorization could not be completed.
    • potrs

      int potrs(Layout layout, UPLO uplo, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by POTRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • potrs

      int potrs(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by POTRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • potrs

      int potrs(Layout layout, UPLO uplo, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by POTRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • potrs

      int potrs(Layout layout, UPLO uplo, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by POTRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • potrs

      int potrs(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      A - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by POTRF.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pbtrs

      int pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, double[] AB, int ldab, double[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite band matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PBTRF.
      ldab - The leading dimension of the matrix AB. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pbtrs

      int pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, DoubleBuffer AB, int ldab, DoubleBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite band matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PBTRF.
      ldab - The leading dimension of the matrix AB. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pbtrs

      int pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, float[] AB, int ldab, float[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite band matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PBTRF.
      ldab - The leading dimension of the matrix AB. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pbtrs

      int pbtrs(Layout layout, UPLO uplo, int n, int kd, int nrhs, FloatBuffer AB, int ldab, FloatBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite band matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by POTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      kd - The number of superdiagonals/subdiagonals of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AB - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PBTRF.
      ldab - The leading dimension of the matrix AB. LDA >= max(1,N).
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pptrs

      int pptrs(Layout layout, UPLO uplo, int n, int nrhs, double[] AP, double[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite packed matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by PPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PPTRF.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pptrs

      int pptrs(Layout layout, UPLO uplo, int n, int nrhs, DoubleBuffer AP, DoubleBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite packed matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by PPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PPTRF.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pptrs

      int pptrs(Layout layout, UPLO uplo, int n, int nrhs, float[] AP, float[] B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite packed matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by PPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PPTRF.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • pptrs

      int pptrs(Layout layout, UPLO uplo, int n, int nrhs, FloatBuffer AP, FloatBuffer B, int ldb)
      Solves a system of linear equations
      
           A * X = B
       
      where A is an N-by-N symmetric positive definite packed matrix and X and B are N-by-NRHS matrices using the Cholesky factorization A = UT*U or A = L*LT computed by PPTRF.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      n - The number of linear equations, i.e., the order of the matrix A.
      nrhs - The number of right hand sides, i.e., the number of columns of the matrix B.
      AP - The triangular factor U or L from the Cholesky factorization A = UT*U or A = L*LT, as computed by PPTRF.
      B - On entry, the N-by-NRHS matrix of right hand side matrix B. On exit, if INFO = 0, the N-by-NRHS solution matrix X.
      ldb - The leading dimension of the matrix B. LDB >= max(1,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • geqrf

      int geqrf(Layout layout, int m, int n, double[] A, int lda, double[] tau)
      Computes a QR factorization of a general M-by-N matrix A.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • geqrf

      int geqrf(Layout layout, int m, int n, DoubleBuffer A, int lda, DoubleBuffer tau)
      Computes a QR factorization of a general M-by-N matrix A.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • geqrf

      int geqrf(Layout layout, int m, int n, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer tau)
      Computes a QR factorization of a general M-by-N matrix A.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • geqrf

      int geqrf(Layout layout, int m, int n, float[] A, int lda, float[] tau)
      Computes a QR factorization of a general M-by-N matrix A.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • geqrf

      int geqrf(Layout layout, int m, int n, FloatBuffer A, int lda, FloatBuffer tau)
      Computes a QR factorization of a general M-by-N matrix A.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • ormqr

      int ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, double[] A, int lda, double[] tau, double[] C, int ldc)
      Overwrites the general real M-by-N matrix C with
      
                        SIDE = 'L'     SIDE = 'R'
        TRANS = 'N':      Q * C          C * Q
        TRANS = 'T':      Q**T * C       C * Q**T
       
      where Q is a real orthogonal matrix defined as the product of k elementary reflectors
      
              Q = H(1) H(2) . . . H(k)
       
      as returned by GEQRF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
      Parameters:
      layout - The matrix layout.
      side - Apply Q or QT from the Left; or apply Q or QT from the Right.
      trans - No transpose, apply Q; Transpose, apply QT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The number of elementary reflectors whose product defines the matrix Q.
      A - The matrix of dimension (LDA, K). The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by GEQRF in the first k columns of its array argument A.
      lda - The leading dimension of the matrix A. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors, as returned by GEQRF.
      C - On entry, the M-by-N matrix C. On exit, C is overwritten by Q*C or QT*C or C*QT or C*Q.
      ldc - The leading dimension of the matrix C. LDC >= max(1,M).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • ormqr

      int ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, DoubleBuffer A, int lda, DoubleBuffer tau, DoubleBuffer C, int ldc)
      Overwrites the general real M-by-N matrix C with
      
                        SIDE = 'L'     SIDE = 'R'
        TRANS = 'N':      Q * C          C * Q
        TRANS = 'T':      Q**T * C       C * Q**T
       
      where Q is a real orthogonal matrix defined as the product of k elementary reflectors
      
              Q = H(1) H(2) . . . H(k)
       
      as returned by GEQRF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
      Parameters:
      layout - The matrix layout.
      side - Apply Q or QT from the Left; or apply Q or QT from the Right.
      trans - No transpose, apply Q; Transpose, apply QT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The number of elementary reflectors whose product defines the matrix Q.
      A - The matrix of dimension (LDA, K). The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by GEQRF in the first k columns of its array argument A.
      lda - The leading dimension of the matrix A. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors, as returned by GEQRF.
      C - On entry, the M-by-N matrix C. On exit, C is overwritten by Q*C or QT*C or C*QT or C*Q.
      ldc - The leading dimension of the matrix C. LDC >= max(1,M).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • ormqr

      int ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer tau, org.bytedeco.javacpp.DoublePointer C, int ldc)
      Overwrites the general real M-by-N matrix C with
      
                        SIDE = 'L'     SIDE = 'R'
        TRANS = 'N':      Q * C          C * Q
        TRANS = 'T':      Q**T * C       C * Q**T
       
      where Q is a real orthogonal matrix defined as the product of k elementary reflectors
      
              Q = H(1) H(2) . . . H(k)
       
      as returned by GEQRF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
      Parameters:
      layout - The matrix layout.
      side - Apply Q or QT from the Left; or apply Q or QT from the Right.
      trans - No transpose, apply Q; Transpose, apply QT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The number of elementary reflectors whose product defines the matrix Q.
      A - The matrix of dimension (LDA, K). The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by GEQRF in the first k columns of its array argument A.
      lda - The leading dimension of the matrix A. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors, as returned by GEQRF.
      C - On entry, the M-by-N matrix C. On exit, C is overwritten by Q*C or QT*C or C*QT or C*Q.
      ldc - The leading dimension of the matrix C. LDC >= max(1,M).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • ormqr

      int ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, float[] A, int lda, float[] tau, float[] C, int ldc)
      Overwrites the general real M-by-N matrix C with
      
                        SIDE = 'L'     SIDE = 'R'
        TRANS = 'N':      Q * C          C * Q
        TRANS = 'T':      Q**T * C       C * Q**T
       
      where Q is a real orthogonal matrix defined as the product of k elementary reflectors
      
              Q = H(1) H(2) . . . H(k)
       
      as returned by GEQRF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
      Parameters:
      layout - The matrix layout.
      side - Apply Q or QT from the Left; or apply Q or QT from the Right.
      trans - No transpose, apply Q; Transpose, apply QT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The number of elementary reflectors whose product defines the matrix Q.
      A - The matrix of dimension (LDA, K). The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by GEQRF in the first k columns of its array argument A.
      lda - The leading dimension of the matrix A. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors, as returned by GEQRF.
      C - On entry, the M-by-N matrix C. On exit, C is overwritten by Q*C or QT*C or C*QT or C*Q.
      ldc - The leading dimension of the matrix C. LDC >= max(1,M).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • ormqr

      int ormqr(Layout layout, Side side, Transpose trans, int m, int n, int k, FloatBuffer A, int lda, FloatBuffer tau, FloatBuffer C, int ldc)
      Overwrites the general real M-by-N matrix C with
      
                        SIDE = 'L'     SIDE = 'R'
        TRANS = 'N':      Q * C          C * Q
        TRANS = 'T':      Q**T * C       C * Q**T
       
      where Q is a real orthogonal matrix defined as the product of k elementary reflectors
      
              Q = H(1) H(2) . . . H(k)
       
      as returned by GEQRF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
      Parameters:
      layout - The matrix layout.
      side - Apply Q or QT from the Left; or apply Q or QT from the Right.
      trans - No transpose, apply Q; Transpose, apply QT.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The number of elementary reflectors whose product defines the matrix Q.
      A - The matrix of dimension (LDA, K). The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by GEQRF in the first k columns of its array argument A.
      lda - The leading dimension of the matrix A. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors, as returned by GEQRF.
      C - On entry, the M-by-N matrix C. On exit, C is overwritten by Q*C or QT*C or C*QT or C*Q.
      ldc - The leading dimension of the matrix C. LDC >= max(1,M).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • orgqr

      int orgqr(Layout layout, int m, int n, int k, double[] A, int lda, double[] tau)
      Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The minimum number of rows and columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • orgqr

      int orgqr(Layout layout, int m, int n, int k, DoubleBuffer A, int lda, DoubleBuffer tau)
      Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The minimum number of rows and columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • orgqr

      int orgqr(Layout layout, int m, int n, int k, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer tau)
      Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The minimum number of rows and columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • orgqr

      int orgqr(Layout layout, int m, int n, int k, float[] A, int lda, float[] tau)
      Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The minimum number of rows and columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • orgqr

      int orgqr(Layout layout, int m, int n, int k, FloatBuffer A, int lda, FloatBuffer tau)
      Generates the real orthogonal matrix Q of the QR factorization formed by geqrf.
      Parameters:
      layout - The matrix layout.
      m - The number of rows of the matrix A.
      n - The number of columns of the matrix A.
      k - The minimum number of rows and columns of the matrix A.
      A - The matrix of dimension (LDA, N). On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors.
      lda - The leading dimension of the matrix A. LDA >= max(1,N).
      tau - The scalar factors of the elementary reflectors. Dimension min(M,N).
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
    • trtrs

      int trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, double[] A, int lda, double[] B, int ldb)
      Solves a triangular system of the form
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. A check is made to verify that A is nonsingular.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      trans - The normal or transpose of the matrix A.
      diag - A is unit diagonal triangular or not.
      n - The order of the matrix A.
      nrhs - The number of right hand sides.
      A - The triangular matrix A.
      lda - The leading dimension of the matrix A.
      B - On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X.
      ldb - The leading dimension of the matrix B.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is zero, indicating that the matrix is singular and the solutions X have not been computed.
    • trtrs

      int trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, DoubleBuffer A, int lda, DoubleBuffer B, int ldb)
      Solves a triangular system of the form
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. A check is made to verify that A is nonsingular.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      trans - The normal or transpose of the matrix A.
      diag - A is unit diagonal triangular or not.
      n - The order of the matrix A.
      nrhs - The number of right hand sides.
      A - The triangular matrix A.
      lda - The leading dimension of the matrix A.
      B - On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X.
      ldb - The leading dimension of the matrix B.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is zero, indicating that the matrix is singular and the solutions X have not been computed.
    • trtrs

      int trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, org.bytedeco.javacpp.DoublePointer A, int lda, org.bytedeco.javacpp.DoublePointer B, int ldb)
      Solves a triangular system of the form
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. A check is made to verify that A is nonsingular.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      trans - The normal or transpose of the matrix A.
      diag - A is unit diagonal triangular or not.
      n - The order of the matrix A.
      nrhs - The number of right hand sides.
      A - The triangular matrix A.
      lda - The leading dimension of the matrix A.
      B - On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X.
      ldb - The leading dimension of the matrix B.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is zero, indicating that the matrix is singular and the solutions X have not been computed.
    • trtrs

      int trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, float[] A, int lda, float[] B, int ldb)
      Solves a triangular system of the form
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. A check is made to verify that A is nonsingular.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      trans - The normal or transpose of the matrix A.
      diag - A is unit diagonal triangular or not.
      n - The order of the matrix A.
      nrhs - The number of right hand sides.
      A - The triangular matrix A.
      lda - The leading dimension of the matrix A.
      B - On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X.
      ldb - The leading dimension of the matrix B.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is zero, indicating that the matrix is singular and the solutions X have not been computed.
    • trtrs

      int trtrs(Layout layout, UPLO uplo, Transpose trans, Diag diag, int n, int nrhs, FloatBuffer A, int lda, FloatBuffer B, int ldb)
      Solves a triangular system of the form
      
           A * X = B
       
      or
      
           A**T * X = B
       
      where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. A check is made to verify that A is nonsingular.
      Parameters:
      layout - The matrix layout.
      uplo - The upper or lower triangular part of the matrix A is to be referenced.
      trans - The normal or transpose of the matrix A.
      diag - A is unit diagonal triangular or not.
      n - The order of the matrix A.
      nrhs - The number of right hand sides.
      A - The triangular matrix A.
      lda - The leading dimension of the matrix A.
      B - On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X.
      ldb - The leading dimension of the matrix B.
      Returns:
      INFO flag. = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is zero, indicating that the matrix is singular and the solutions X have not been computed.