Show / Hide Table of Contents

    Class CudaSolveDense

    CudaSolveDense: The cuSolverDN library was designed to solve dense linear systems of the form Ax=B

    Inheritance
    System.Object
    CudaSolveDense
    Implements
    System.IDisposable
    Inherited Members
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    Namespace: ManagedCuda.CudaSolve
    Assembly: CudaSolve.dll
    Syntax
    public class CudaSolveDense : IDisposable

    Constructors

    | Improve this Doc View Source

    CudaSolveDense()

    Create new dense solve instance

    Declaration
    public CudaSolveDense()
    | Improve this Doc View Source

    CudaSolveDense(CudaStream)

    Create new dense solve instance using stream stream

    Declaration
    public CudaSolveDense(CudaStream stream)
    Parameters
    Type Name Description
    CudaStream stream

    Methods

    | Improve this Doc View Source

    Dispose()

    Dispose

    Declaration
    public void Dispose()
    | Improve this Doc View Source

    Dispose(Boolean)

    For IDisposable

    Declaration
    protected virtual void Dispose(bool fDisposing)
    Parameters
    Type Name Description
    System.Boolean fDisposing
    | Improve this Doc View Source

    Finalize()

    For dispose

    Declaration
    protected void Finalize()
    | Improve this Doc View Source

    Gebrd(Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, CudaDeviceVariable<cuDoubleComplex>, CudaDeviceVariable<cuDoubleComplex>, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public void Gebrd(int m, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<double> D, CudaDeviceVariable<double> E, CudaDeviceVariable<cuDoubleComplex> TAUQ, CudaDeviceVariable<cuDoubleComplex> TAUP, CudaDeviceVariable<cuDoubleComplex> Work, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> D

    array of dimension min(m,n). The diagonal elements of the bidiagonal matrix B: D(i) = A(i,i).

    CudaDeviceVariable<System.Double> E

    array of dimension min(m,n). The off-diagonal elements of the bidiagonal matrix B: if m>=n, E(i) = A(i,i+1) for i = 1,2,...,n-1; if m<n, E(i) = A(i+1,i) for i = 1,2,...,m-1.

    CudaDeviceVariable<cuDoubleComplex> TAUQ

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix Q.

    CudaDeviceVariable<cuDoubleComplex> TAUP

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix P.

    CudaDeviceVariable<cuDoubleComplex> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gebrd_bufferSize.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Gebrd(Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, CudaDeviceVariable<cuFloatComplex>, CudaDeviceVariable<cuFloatComplex>, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public void Gebrd(int m, int n, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<float> D, CudaDeviceVariable<float> E, CudaDeviceVariable<cuFloatComplex> TAUQ, CudaDeviceVariable<cuFloatComplex> TAUP, CudaDeviceVariable<cuFloatComplex> Work, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> D

    array of dimension min(m,n). The diagonal elements of the bidiagonal matrix B: D(i) = A(i,i).

    CudaDeviceVariable<System.Single> E

    array of dimension min(m,n). The off-diagonal elements of the bidiagonal matrix B: if m>=n, E(i) = A(i,i+1) for i = 1,2,...,n-1; if m<n, E(i) = A(i+1,i) for i = 1,2,...,m-1.

    CudaDeviceVariable<cuFloatComplex> TAUQ

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix Q.

    CudaDeviceVariable<cuFloatComplex> TAUP

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix P.

    CudaDeviceVariable<cuFloatComplex> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gebrd_bufferSize.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Gebrd(Int32, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public void Gebrd(int m, int n, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<double> D, CudaDeviceVariable<double> E, CudaDeviceVariable<double> TAUQ, CudaDeviceVariable<double> TAUP, CudaDeviceVariable<double> Work, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> D

    array of dimension min(m,n). The diagonal elements of the bidiagonal matrix B: D(i) = A(i,i).

    CudaDeviceVariable<System.Double> E

    array of dimension min(m,n). The off-diagonal elements of the bidiagonal matrix B: if m>=n, E(i) = A(i,i+1) for i = 1,2,...,n-1; if m<n, E(i) = A(i+1,i) for i = 1,2,...,m-1.

    CudaDeviceVariable<System.Double> TAUQ

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix Q.

    CudaDeviceVariable<System.Double> TAUP

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix P.

    CudaDeviceVariable<System.Double> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gebrd_bufferSize.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Gebrd(Int32, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public void Gebrd(int m, int n, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<float> D, CudaDeviceVariable<float> E, CudaDeviceVariable<float> TAUQ, CudaDeviceVariable<float> TAUP, CudaDeviceVariable<float> Work, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> D

    array of dimension min(m,n). The diagonal elements of the bidiagonal matrix B: D(i) = A(i,i).

    CudaDeviceVariable<System.Single> E

    array of dimension min(m,n). The off-diagonal elements of the bidiagonal matrix B: if m>=n, E(i) = A(i,i+1) for i = 1,2,...,n-1; if m<n, E(i) = A(i+1,i) for i = 1,2,...,m-1.

    CudaDeviceVariable<System.Single> TAUQ

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix Q.

    CudaDeviceVariable<System.Single> TAUP

    array of dimension min(m,n). The scalar factors of the elementary reflectors which represent the orthogonal matrix P.

    CudaDeviceVariable<System.Single> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gebrd_bufferSize.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    GebrdBufferSizeDouble(Int32, Int32)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public int GebrdBufferSizeDouble(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GebrdBufferSizeDoubleComplex(Int32, Int32)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public int GebrdBufferSizeDoubleComplex(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GebrdBufferSizeFloat(Int32, Int32)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public int GebrdBufferSizeFloat(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GebrdBufferSizeFloatComplex(Int32, Int32)

    This function reduces a general real m×n matrix A to upper or lower bidiagonal form B by an orthogonal transformation: Q^HAP=B

    Declaration
    public int GebrdBufferSizeFloatComplex(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    Geqrf(Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Geqrf(int m, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<cuDoubleComplex> TAU, CudaDeviceVariable<cuDoubleComplex> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuDoubleComplex> TAU

    array of dimension at least min(m,n).

    CudaDeviceVariable<cuDoubleComplex> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of working array Workspace.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the LU factorization is successful. if info = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Geqrf(Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Geqrf(int m, int n, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<cuFloatComplex> TAU, CudaDeviceVariable<cuFloatComplex> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuFloatComplex> TAU

    array of dimension at least min(m,n).

    CudaDeviceVariable<cuFloatComplex> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of working array Workspace.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the LU factorization is successful. if info = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Geqrf(Int32, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Geqrf(int m, int n, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<double> TAU, CudaDeviceVariable<double> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> TAU

    array of dimension at least min(m,n).

    CudaDeviceVariable<System.Double> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of working array Workspace.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the LU factorization is successful. if info = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Geqrf(Int32, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Geqrf(int m, int n, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<float> TAU, CudaDeviceVariable<float> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> TAU

    array of dimension at least min(m,n).

    CudaDeviceVariable<System.Single> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of working array Workspace.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the LU factorization is successful. if info = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    GeqrfBufferSize(Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public int GeqrfBufferSize(int m, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GeqrfBufferSize(Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public int GeqrfBufferSize(int m, int n, CudaDeviceVariable<cuFloatComplex> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GeqrfBufferSize(Int32, Int32, CudaDeviceVariable<Double>, Int32)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public int GeqrfBufferSize(int m, int n, CudaDeviceVariable<double> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GeqrfBufferSize(Int32, Int32, CudaDeviceVariable<Single>, Int32)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public int GeqrfBufferSize(int m, int n, CudaDeviceVariable<float> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    Gesvd(Char, Char, Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Int32>)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public void Gesvd(char jobu, char jobvt, int m, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<double> S, CudaDeviceVariable<cuDoubleComplex> U, int ldu, CudaDeviceVariable<cuDoubleComplex> VT, int ldvt, CudaDeviceVariable<cuDoubleComplex> Work, int Lwork, CudaDeviceVariable<double> rwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Char jobu

    specifies options for computing all or part of the matrix U: = 'A': all m columns of U are returned in array U: = 'S': the first min(m,n) columns of U (the left singular vectors) are returned in the array U; = 'O': the first min(m,n) columns of U (the left singular vectors) are overwritten on the array A; = 'N': no columns of U (no left singular vectors) are computed.

    System.Char jobvt

    specifies options for computing all or part of the matrix VT: = 'A': all N rows of VT are returned in the array VT; = 'S': the first min(m,n) rows of VT (the right singular vectors) are returned in the array VT; = 'O': the first min(m,n) rows of VT (the right singular vectors) are overwritten on the array A; = 'N': no rows of V**T (no right singular vectors) are computed.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,m). On exit, the contents of A are destroyed.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> S

    array of dimension min(m,n). The singular values of A, sorted so that S(i)

    = S(i+1).

    CudaDeviceVariable<cuDoubleComplex> U

    array of dimension ldu * m with ldu is not less than max(1,m). U contains the m×m unitary matrix U.

    System.Int32 ldu

    leading dimension of two-dimensional array used to store matrix U.

    CudaDeviceVariable<cuDoubleComplex> VT

    array of dimension ldvt * n with ldvt is not less than max(1,n). VT contains the n×n unitary matrix V**T.

    System.Int32 ldvt

    leading dimension of two-dimensional array used to store matrix Vt.

    CudaDeviceVariable<cuDoubleComplex> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gesvd_bufferSize.

    CudaDeviceVariable<System.Double> rwork
    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the ith parameter is wrong. if devInfo > 0, devInfo indicates how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.

    | Improve this Doc View Source

    Gesvd(Char, Char, Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Int32>)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public void Gesvd(char jobu, char jobvt, int m, int n, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<float> S, CudaDeviceVariable<cuFloatComplex> U, int ldu, CudaDeviceVariable<cuFloatComplex> VT, int ldvt, CudaDeviceVariable<cuFloatComplex> Work, int Lwork, CudaDeviceVariable<float> rwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Char jobu

    specifies options for computing all or part of the matrix U: = 'A': all m columns of U are returned in array U: = 'S': the first min(m,n) columns of U (the left singular vectors) are returned in the array U; = 'O': the first min(m,n) columns of U (the left singular vectors) are overwritten on the array A; = 'N': no columns of U (no left singular vectors) are computed.

    System.Char jobvt

    specifies options for computing all or part of the matrix VT: = 'A': all N rows of VT are returned in the array VT; = 'S': the first min(m,n) rows of VT (the right singular vectors) are returned in the array VT; = 'O': the first min(m,n) rows of VT (the right singular vectors) are overwritten on the array A; = 'N': no rows of V**T (no right singular vectors) are computed.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,m). On exit, the contents of A are destroyed.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> S

    array of dimension min(m,n). The singular values of A, sorted so that S(i)

    = S(i+1).

    CudaDeviceVariable<cuFloatComplex> U

    array of dimension ldu * m with ldu is not less than max(1,m). U contains the m×m unitary matrix U.

    System.Int32 ldu

    leading dimension of two-dimensional array used to store matrix U.

    CudaDeviceVariable<cuFloatComplex> VT

    array of dimension ldvt * n with ldvt is not less than max(1,n). VT contains the n×n unitary matrix V**T.

    System.Int32 ldvt

    leading dimension of two-dimensional array used to store matrix Vt.

    CudaDeviceVariable<cuFloatComplex> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gesvd_bufferSize.

    CudaDeviceVariable<System.Single> rwork
    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the ith parameter is wrong. if devInfo > 0, devInfo indicates how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.

    | Improve this Doc View Source

    Gesvd(Char, Char, Int32, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Int32>)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public void Gesvd(char jobu, char jobvt, int m, int n, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<double> S, CudaDeviceVariable<double> U, int ldu, CudaDeviceVariable<double> VT, int ldvt, CudaDeviceVariable<double> Work, int Lwork, CudaDeviceVariable<double> rwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Char jobu

    specifies options for computing all or part of the matrix U: = 'A': all m columns of U are returned in array U: = 'S': the first min(m,n) columns of U (the left singular vectors) are returned in the array U; = 'O': the first min(m,n) columns of U (the left singular vectors) are overwritten on the array A; = 'N': no columns of U (no left singular vectors) are computed.

    System.Char jobvt

    specifies options for computing all or part of the matrix VT: = 'A': all N rows of VT are returned in the array VT; = 'S': the first min(m,n) rows of VT (the right singular vectors) are returned in the array VT; = 'O': the first min(m,n) rows of VT (the right singular vectors) are overwritten on the array A; = 'N': no rows of V**T (no right singular vectors) are computed.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,m). On exit, the contents of A are destroyed.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> S

    array of dimension min(m,n). The singular values of A, sorted so that S(i)

    = S(i+1).

    CudaDeviceVariable<System.Double> U

    array of dimension ldu * m with ldu is not less than max(1,m). U contains the m×m unitary matrix U.

    System.Int32 ldu

    leading dimension of two-dimensional array used to store matrix U.

    CudaDeviceVariable<System.Double> VT

    array of dimension ldvt * n with ldvt is not less than max(1,n). VT contains the n×n unitary matrix V**T.

    System.Int32 ldvt

    leading dimension of two-dimensional array used to store matrix Vt.

    CudaDeviceVariable<System.Double> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gesvd_bufferSize.

    CudaDeviceVariable<System.Double> rwork
    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the ith parameter is wrong. if devInfo > 0, devInfo indicates how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.

    | Improve this Doc View Source

    Gesvd(Char, Char, Int32, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Int32>)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public void Gesvd(char jobu, char jobvt, int m, int n, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<float> S, CudaDeviceVariable<float> U, int ldu, CudaDeviceVariable<float> VT, int ldvt, CudaDeviceVariable<float> Work, int Lwork, CudaDeviceVariable<float> rwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Char jobu

    specifies options for computing all or part of the matrix U: = 'A': all m columns of U are returned in array U: = 'S': the first min(m,n) columns of U (the left singular vectors) are returned in the array U; = 'O': the first min(m,n) columns of U (the left singular vectors) are overwritten on the array A; = 'N': no columns of U (no left singular vectors) are computed.

    System.Char jobvt

    specifies options for computing all or part of the matrix VT: = 'A': all N rows of VT are returned in the array VT; = 'S': the first min(m,n) rows of VT (the right singular vectors) are returned in the array VT; = 'O': the first min(m,n) rows of VT (the right singular vectors) are overwritten on the array A; = 'N': no rows of V**T (no right singular vectors) are computed.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,m). On exit, the contents of A are destroyed.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> S

    array of dimension min(m,n). The singular values of A, sorted so that S(i)

    = S(i+1).

    CudaDeviceVariable<System.Single> U

    array of dimension ldu * m with ldu is not less than max(1,m). U contains the m×m unitary matrix U.

    System.Int32 ldu

    leading dimension of two-dimensional array used to store matrix U.

    CudaDeviceVariable<System.Single> VT

    array of dimension ldvt * n with ldvt is not less than max(1,n). VT contains the n×n unitary matrix V**T.

    System.Int32 ldvt

    leading dimension of two-dimensional array used to store matrix Vt.

    CudaDeviceVariable<System.Single> Work

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Work, returned by gesvd_bufferSize.

    CudaDeviceVariable<System.Single> rwork
    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the ith parameter is wrong. if devInfo > 0, devInfo indicates how many superdiagonals of an intermediate bidiagonal form B did not converge to zero.

    | Improve this Doc View Source

    GesvdBufferSizeDouble(Int32, Int32)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public int GesvdBufferSizeDouble(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GesvdBufferSizeDoubleComplex(Int32, Int32)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public int GesvdBufferSizeDoubleComplex(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GesvdBufferSizeFloat(Int32, Int32)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public int GesvdBufferSizeFloat(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GesvdBufferSizeFloatComplex(Int32, Int32)

    This function computes the singular value decomposition (SVD) of a m×n matrix A and corresponding the left and/or right singular vectors.

    Declaration
    public int GesvdBufferSizeFloatComplex(int m, int n)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    Getrf(Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, CudaDeviceVariable<Int32>, CudaDeviceVariable<Int32>)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public void Getrf(int m, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<cuDoubleComplex> Workspace, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuDoubleComplex> Workspace

    working space, array of size Lwork.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least min(m,n), containing pivot indices.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the U(i,i) = 0.

    | Improve this Doc View Source

    Getrf(Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, CudaDeviceVariable<Int32>, CudaDeviceVariable<Int32>)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public void Getrf(int m, int n, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<cuFloatComplex> Workspace, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuFloatComplex> Workspace

    working space, array of size Lwork.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least min(m,n), containing pivot indices.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the U(i,i) = 0.

    | Improve this Doc View Source

    Getrf(Int32, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Int32>, CudaDeviceVariable<Int32>)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public void Getrf(int m, int n, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<double> Workspace, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> Workspace

    working space, array of size Lwork.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least min(m,n), containing pivot indices.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the U(i,i) = 0.

    | Improve this Doc View Source

    Getrf(Int32, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Int32>, CudaDeviceVariable<Int32>)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public void Getrf(int m, int n, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<float> Workspace, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> Workspace

    working space, array of size Lwork.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least min(m,n), containing pivot indices.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the U(i,i) = 0.

    | Improve this Doc View Source

    GetrfBufferSize(Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public int GetrfBufferSize(int m, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GetrfBufferSize(Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public int GetrfBufferSize(int m, int n, CudaDeviceVariable<cuFloatComplex> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GetrfBufferSize(Int32, Int32, CudaDeviceVariable<Double>, Int32)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public int GetrfBufferSize(int m, int n, CudaDeviceVariable<double> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    GetrfBufferSize(Int32, Int32, CudaDeviceVariable<Single>, Int32)

    This function computes the LU factorization of a m×n matrix PA=LU where A is a m×n matrix, P is a permutation matrix, L is a lower triangular matrix with unit diagonal, and U is an upper triangular matrix.

    Declaration
    public int GetrfBufferSize(int m, int n, CudaDeviceVariable<float> A, int lda)
    Parameters
    Type Name Description
    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    Getrs(Operation, Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>)

    This function solves a linear system of multiple right-hand sides op(A)*X=B.

    Declaration
    public void Getrs(Operation trans, int n, int nrhs, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<cuDoubleComplex> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    Operation trans

    operation op(A) that is non- or (conj.) transpose.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of right-hand sides.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<cuDoubleComplex> B

    array of dimension ldb * nrhs with ldb is not less than max(1,n).

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Getrs(Operation, Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>)

    This function solves a linear system of multiple right-hand sides op(A)*X=B.

    Declaration
    public void Getrs(Operation trans, int n, int nrhs, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<cuFloatComplex> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    Operation trans

    operation op(A) that is non- or (conj.) transpose.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of right-hand sides.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<cuFloatComplex> B

    array of dimension ldb * nrhs with ldb is not less than max(1,n).

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Getrs(Operation, Int32, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>)

    This function solves a linear system of multiple right-hand sides op(A)*X=B.

    Declaration
    public void Getrs(Operation trans, int n, int nrhs, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<double> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    Operation trans

    operation op(A) that is non- or (conj.) transpose.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of right-hand sides.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<System.Double> B

    array of dimension ldb * nrhs with ldb is not less than max(1,n).

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Getrs(Operation, Int32, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>)

    This function solves a linear system of multiple right-hand sides op(A)*X=B.

    Declaration
    public void Getrs(Operation trans, int n, int nrhs, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<int> devIpiv, CudaDeviceVariable<float> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    Operation trans

    operation op(A) that is non- or (conj.) transpose.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of right-hand sides.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> devIpiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<System.Single> B

    array of dimension ldb * nrhs with ldb is not less than max(1,n).

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the operation is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    GetStream()

    This function gets the stream to be used by the cuSolverDN library to execute its routines.

    Declaration
    public CudaStream GetStream()
    Returns
    Type Description
    CudaStream
    | Improve this Doc View Source

    Ormqr(SideMode, Operation, Int32, Int32, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Ormqr(SideMode side, Operation trans, int m, int n, int k, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<double> tau, CudaDeviceVariable<double> C, int ldc, CudaDeviceVariable<double> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    SideMode side

    indicates if matrix Q is on the left or right of C.

    Operation trans

    operation op(Q) that is non- or (conj.) transpose.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    System.Int32 k

    number of elementary relfections.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> tau

    array of dimension at least min(m,n). The vector tau is from geqrf, so tau(i) is the scalar of i-th elementary reflection vector.

    CudaDeviceVariable<System.Double> C

    array of size ldc * n. On exit, C is overwritten by op(Q)*C.

    System.Int32 ldc

    leading dimension of two-dimensional array of matrix C. ldc >= max(1,m).

    CudaDeviceVariable<System.Double> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working array work.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the ormqr is successful. if info = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Ormqr(SideMode, Operation, Int32, Int32, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Ormqr(SideMode side, Operation trans, int m, int n, int k, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<float> tau, CudaDeviceVariable<float> C, int ldc, CudaDeviceVariable<float> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    SideMode side

    indicates if matrix Q is on the left or right of C.

    Operation trans

    operation op(Q) that is non- or (conj.) transpose.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    System.Int32 k

    number of elementary relfections.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> tau

    array of dimension at least min(m,n). The vector tau is from geqrf, so tau(i) is the scalar of i-th elementary reflection vector.

    CudaDeviceVariable<System.Single> C

    array of size ldc * n. On exit, C is overwritten by op(Q)*C.

    System.Int32 ldc

    leading dimension of two-dimensional array of matrix C. ldc >= max(1,m).

    CudaDeviceVariable<System.Single> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working array work.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the ormqr is successful. if info = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Potrf(FillMode, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public void Potrf(FillMode uplo, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<cuDoubleComplex> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuDoubleComplex> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Workspace

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the leading minor of order i is not positive definite.

    | Improve this Doc View Source

    Potrf(FillMode, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public void Potrf(FillMode uplo, int n, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<cuFloatComplex> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuFloatComplex> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Workspace

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the leading minor of order i is not positive definite.

    | Improve this Doc View Source

    Potrf(FillMode, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public void Potrf(FillMode uplo, int n, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<double> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Workspace

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the leading minor of order i is not positive definite.

    | Improve this Doc View Source

    Potrf(FillMode, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public void Potrf(FillMode uplo, int n, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<float> Workspace, int Lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> Workspace

    working space, array of size Lwork.

    System.Int32 Lwork

    size of Workspace

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the leading minor of order i is not positive definite.

    | Improve this Doc View Source

    PotrfBufferSize(FillMode, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public int PotrfBufferSize(FillMode uplo, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    PotrfBufferSize(FillMode, Int32, CudaDeviceVariable<cuFloatComplex>, Int32)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public int PotrfBufferSize(FillMode uplo, int n, CudaDeviceVariable<cuFloatComplex> A, int lda)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    PotrfBufferSize(FillMode, Int32, CudaDeviceVariable<Double>, Int32)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public int PotrfBufferSize(FillMode uplo, int n, CudaDeviceVariable<double> A, int lda)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    PotrfBufferSize(FillMode, Int32, CudaDeviceVariable<Single>, Int32)

    This function computes the Cholesky factorization of a Hermitian positive-definite matrix.

    Declaration
    public int PotrfBufferSize(FillMode uplo, int n, CudaDeviceVariable<float> A, int lda)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    Potrs(FillMode, Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>)

    This function solves a system of linear equations A*X=B where A is a n×n Hermitian matrix, only lower or upper part is meaningful.

    Declaration
    public void Potrs(FillMode uplo, int n, int nrhs, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<cuDoubleComplex> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of columns of matrix X and B.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,n). A is either lower cholesky factor L or upper Cholesky factor U.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuDoubleComplex> B

    array of dimension ldb * nrhs. ldb is not less than max(1,n). As an input, B is right hand side matrix. As an output, B is the solution matrix.

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Potrs(FillMode, Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>)

    This function solves a system of linear equations A*X=B where A is a n×n Hermitian matrix, only lower or upper part is meaningful.

    Declaration
    public void Potrs(FillMode uplo, int n, int nrhs, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<cuFloatComplex> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of columns of matrix X and B.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,n). A is either lower cholesky factor L or upper Cholesky factor U.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuFloatComplex> B

    array of dimension ldb * nrhs. ldb is not less than max(1,n). As an input, B is right hand side matrix. As an output, B is the solution matrix.

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Potrs(FillMode, Int32, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>)

    This function solves a system of linear equations A*X=B where A is a n×n Hermitian matrix, only lower or upper part is meaningful.

    Declaration
    public void Potrs(FillMode uplo, int n, int nrhs, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<double> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of columns of matrix X and B.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,n). A is either lower cholesky factor L or upper Cholesky factor U.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Double> B

    array of dimension ldb * nrhs. ldb is not less than max(1,n). As an input, B is right hand side matrix. As an output, B is the solution matrix.

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Potrs(FillMode, Int32, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>)

    This function solves a system of linear equations A*X=B where A is a n×n Hermitian matrix, only lower or upper part is meaningful.

    Declaration
    public void Potrs(FillMode uplo, int n, int nrhs, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<float> B, int ldb, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    System.Int32 nrhs

    number of columns of matrix X and B.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,n). A is either lower cholesky factor L or upper Cholesky factor U.

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Single> B

    array of dimension ldb * nrhs. ldb is not less than max(1,n). As an input, B is right hand side matrix. As an output, B is the solution matrix.

    System.Int32 ldb

    leading dimension of two-dimensional array used to store matrix B.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the Cholesky factorization is successful. if devInfo = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    SetStream(CudaStream)

    This function sets the stream to be used by the cuSolverDN library to execute its routines.

    Declaration
    public void SetStream(CudaStream stream)
    Parameters
    Type Name Description
    CudaStream stream

    the stream to be used by the library.

    | Improve this Doc View Source

    Sytrf(FillMode, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public void Sytrf(FillMode uplo, int n, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<int> ipiv, CudaDeviceVariable<cuDoubleComplex> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> ipiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<cuDoubleComplex> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working space work.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the D(i,i) = 0.

    | Improve this Doc View Source

    Sytrf(FillMode, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public void Sytrf(FillMode uplo, int n, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<int> ipiv, CudaDeviceVariable<cuFloatComplex> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> ipiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<cuFloatComplex> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working space work.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the D(i,i) = 0.

    | Improve this Doc View Source

    Sytrf(FillMode, Int32, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<Double>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public void Sytrf(FillMode uplo, int n, CudaDeviceVariable<double> A, int lda, CudaDeviceVariable<int> ipiv, CudaDeviceVariable<double> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> ipiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<System.Double> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working space work.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the D(i,i) = 0.

    | Improve this Doc View Source

    Sytrf(FillMode, Int32, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>, CudaDeviceVariable<Single>, Int32, CudaDeviceVariable<Int32>)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public void Sytrf(FillMode uplo, int n, CudaDeviceVariable<float> A, int lda, CudaDeviceVariable<int> ipiv, CudaDeviceVariable<float> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    FillMode uplo

    indicates if matrix A lower or upper part is stored, the other part is not referenced.

    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<System.Int32> ipiv

    array of size at least n, containing pivot indices.

    CudaDeviceVariable<System.Single> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working space work.

    CudaDeviceVariable<System.Int32> devInfo

    if devInfo = 0, the LU factorization is successful. if devInfo = -i, the i-th parameter is wrong. if devInfo = i, the D(i,i) = 0.

    | Improve this Doc View Source

    SytrfBufferSize(Int32, CudaDeviceVariable<cuDoubleComplex>, Int32)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public int SytrfBufferSize(int n, CudaDeviceVariable<cuDoubleComplex> A, int lda)
    Parameters
    Type Name Description
    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    SytrfBufferSize(Int32, CudaDeviceVariable<cuFloatComplex>, Int32)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public int SytrfBufferSize(int n, CudaDeviceVariable<cuFloatComplex> A, int lda)
    Parameters
    Type Name Description
    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    SytrfBufferSize(Int32, CudaDeviceVariable<Double>, Int32)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public int SytrfBufferSize(int n, CudaDeviceVariable<double> A, int lda)
    Parameters
    Type Name Description
    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Double> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    SytrfBufferSize(Int32, CudaDeviceVariable<Single>, Int32)

    This function computes the Bunch-Kaufman factorization of a n×n symmetric indefinite matrix.

    Declaration
    public int SytrfBufferSize(int n, CudaDeviceVariable<float> A, int lda)
    Parameters
    Type Name Description
    System.Int32 n

    number of rows and columns of matrix A.

    CudaDeviceVariable<System.Single> A

    array of dimension lda * n with lda is not less than max(1,n).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    Returns
    Type Description
    System.Int32

    size of Workspace

    | Improve this Doc View Source

    Unmqr(SideMode, Operation, Int32, Int32, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<cuDoubleComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Unmqr(SideMode side, Operation trans, int m, int n, int k, CudaDeviceVariable<cuDoubleComplex> A, int lda, CudaDeviceVariable<cuDoubleComplex> tau, CudaDeviceVariable<cuDoubleComplex> C, int ldc, CudaDeviceVariable<cuDoubleComplex> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    SideMode side

    indicates if matrix Q is on the left or right of C.

    Operation trans

    operation op(Q) that is non- or (conj.) transpose.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    System.Int32 k

    number of elementary relfections.

    CudaDeviceVariable<cuDoubleComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuDoubleComplex> tau

    array of dimension at least min(m,n). The vector tau is from geqrf, so tau(i) is the scalar of i-th elementary reflection vector.

    CudaDeviceVariable<cuDoubleComplex> C

    array of size ldc * n. On exit, C is overwritten by op(Q)*C.

    System.Int32 ldc

    leading dimension of two-dimensional array of matrix C. ldc >= max(1,m).

    CudaDeviceVariable<cuDoubleComplex> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working array work.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the ormqr is successful. if info = -i, the i-th parameter is wrong.

    | Improve this Doc View Source

    Unmqr(SideMode, Operation, Int32, Int32, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<cuFloatComplex>, Int32, CudaDeviceVariable<Int32>)

    This function computes the QR factorization of a m×n matrix A=Q*R where A is a m×n matrix, Q is a m×n matrix, and R is a n×n upper triangular matrix.

    Declaration
    public void Unmqr(SideMode side, Operation trans, int m, int n, int k, CudaDeviceVariable<cuFloatComplex> A, int lda, CudaDeviceVariable<cuFloatComplex> tau, CudaDeviceVariable<cuFloatComplex> C, int ldc, CudaDeviceVariable<cuFloatComplex> work, int lwork, CudaDeviceVariable<int> devInfo)
    Parameters
    Type Name Description
    SideMode side

    indicates if matrix Q is on the left or right of C.

    Operation trans

    operation op(Q) that is non- or (conj.) transpose.

    System.Int32 m

    number of rows of matrix A.

    System.Int32 n

    number of columns of matrix A.

    System.Int32 k

    number of elementary relfections.

    CudaDeviceVariable<cuFloatComplex> A

    array of dimension lda * n with lda is not less than max(1,m).

    System.Int32 lda

    leading dimension of two-dimensional array used to store matrix A.

    CudaDeviceVariable<cuFloatComplex> tau

    array of dimension at least min(m,n). The vector tau is from geqrf, so tau(i) is the scalar of i-th elementary reflection vector.

    CudaDeviceVariable<cuFloatComplex> C

    array of size ldc * n. On exit, C is overwritten by op(Q)*C.

    System.Int32 ldc

    leading dimension of two-dimensional array of matrix C. ldc >= max(1,m).

    CudaDeviceVariable<cuFloatComplex> work

    working space, array of size lwork.

    System.Int32 lwork

    size of working array work.

    CudaDeviceVariable<System.Int32> devInfo

    if info = 0, the ormqr is successful. if info = -i, the i-th parameter is wrong.

    Implements

    System.IDisposable
    • Improve this Doc
    • View Source
    Back to top Generated by DocFX