Sparse linear algebra (cupyx.scipy.sparse.linalg)#

Abstract linear operators#

LinearOperator(shape, matvec[, rmatvec, ...])

Common interface for performing matrix vector products


Return A as a LinearOperator.

Matrix norms#

norm(x[, ord, axis])

Norm of a cupy.scipy.spmatrix

Solving linear problems#

Direct methods for linear equation systems:

spsolve(A, b)

Solves a sparse linear system A x = b

spsolve_triangular(A, b[, lower, ...])

Solves a sparse triangular system A x = b.


Return a function for solving a sparse linear system, with A pre-factorized.

Iterative methods for linear equation systems:

cg(A, b[, x0, tol, maxiter, M, callback, atol])

Uses Conjugate Gradient iteration to solve Ax = b.

gmres(A, b[, x0, tol, restart, maxiter, M, ...])

Uses Generalized Minimal RESidual iteration to solve Ax = b.

cgs(A, b[, x0, tol, maxiter, M, callback, atol])

Use Conjugate Gradient Squared iteration to solve Ax = b.

minres(A, b[, x0, shift, tol, maxiter, M, ...])

Uses MINimum RESidual iteration to solve Ax = b.

Iterative methods for least-squares problems:

lsqr(A, b)

Solves linear system with QR decomposition.

lsmr(A, b[, x0, damp, atol, btol, conlim, ...])

Iterative solver for least-squares problems.

Matrix factorizations#

Eigenvalue problems:

eigsh(a[, k, which, ncv, maxiter, tol, ...])

Find k eigenvalues and eigenvectors of the real symmetric square matrix or complex Hermitian matrix A.

lobpcg(A, X[, B, M, Y, tol, maxiter, ...])

Locally Optimal Block Preconditioned Conjugate Gradient Method (LOBPCG)

Singular values problems:

svds(a[, k, ncv, tol, which, maxiter, ...])

Finds the largest k singular values/vectors for a sparse matrix.

Complete or incomplete LU factorizations:

splu(A[, permc_spec, diag_pivot_thresh, ...])

Computes the LU decomposition of a sparse square matrix.

spilu(A[, drop_tol, fill_factor, drop_rule, ...])

Computes the incomplete LU decomposition of a sparse square matrix.