dedalus.libraries.matsolvers

Matrix solver wrappers.

Module Contents

class BandedQR(matrix, array_namespace=np, solver=None)

pybanded QR solve.

solve(vector)
QR
array_namespace
solver = None
class BandedSolver(matrix, array_namespace=np, solver=None)

Base class for banded solvers.

static sparse_to_banded(matrix, u=None, l=None)

Convert sparse matrix to banded format.

banded = True
sparse = False
class BlockInverse(matrix, array_namespace=np, solver=None)

Block inversion solve.

array_namespace
solver = None
class DenseInverse(matrix, array_namespace=np, solver=None)

Dense inversion solve.

solve(vector)
matrix_inverse
solver = None
class DenseSolver(matrix, array_namespace=np, solver=None)

Base class for dense solvers.

banded = False
sparse = False
class DummySolver(matrix, array_namespace=np, solver=None)

Dummy solver that returns zeros for testing.

solve(vector)
class SPQR_solve(matrix, array_namespace=np, solver=None)

SuiteSparse QR solve.

solve(vector)
array_namespace
matrix
solver = None
class ScipyBanded(matrix, array_namespace=np, solver=None)

Scipy banded solve.

solve(vector)
array_namespace
solver = None
class ScipyDenseLU(matrix, array_namespace=np, solver=None)

Scipy dense LU factorized solve.

solve(vector)
LU
array_namespace
solver = None
class SolverBase(matrix, array_namespace=np, solver=None)

Abstract base class for all solvers.

solve(vector)
abstractmethod solve_H(vector)
config
class SparseInverse(matrix, array_namespace=np, solver=None)

Sparse inversion solve.

solve(vector)
array_namespace
solver = None
class SparseSolver(matrix, array_namespace=np, solver=None)

Base class for sparse solvers.

banded = False
sparse = True
class SuperluColamdFactorized(matrix, array_namespace=np, solver=None)

SuperLU factorized solve with ‘COLAMD’ column permutation.

permc_spec = 'COLAMD'
class SuperluColamdFactorizedTranspose(matrix, array_namespace=np, solver=None)

SuperLU factorized solve with ‘COLAMD’ row permutation.

permc_spec = 'COLAMD'
trans = 'T'
class SuperluColamdSpsolve(matrix, array_namespace=np, solver=None)

SuperLU spsolve with ‘COLAMD’ column permutation.

permc_spec = 'COLAMD'
class SuperluNaturalFactorized(matrix, array_namespace=np, solver=None)

SuperLU factorized solve with ‘NATURAL’ column permutation.

permc_spec = 'NATURAL'
class SuperluNaturalFactorizedTranspose(matrix, array_namespace=np, solver=None)

SuperLU factorized solve with ‘NATURAL’ row permutation.

permc_spec = 'NATURAL'
trans = 'T'
class SuperluNaturalSpsolve(matrix, array_namespace=np, solver=None)

SuperLU spsolve with ‘NATURAL’ column permutation.

permc_spec = 'NATURAL'
class UmfpackFactorized(matrix, array_namespace=np, solver=None)

UMFPACK LU factorized solve.

solve(vector)
LU
array_namespace
solver = None
class UmfpackSpsolve(matrix, array_namespace=np, solver=None)

UMFPACK spsolve.

solve(vector)
array_namespace
matrix
solver = None
class Woodbury(matrix, subproblem, matsolver)

Solve top & right bordered matrix using Woodbury formula.

solve(Y)
A
A_matsolver
Ainv
Ainv_U
Sinv
Sinv_
config
matrix
matsolver
add_solver(solver)
cupy_available = True
matsolvers
woodbury_matsolvers