dedalus.libraries.matsolvers ============================ .. py:module:: dedalus.libraries.matsolvers .. autoapi-nested-parse:: Matrix solver wrappers. Module Contents --------------- .. py:class:: BandedQR(matrix, solver=None) pybanded QR solve. .. py:method:: solve(vector) .. py:attribute:: QR .. py:class:: BandedSolver(matrix, solver=None) Base class for banded solvers. .. py:method:: sparse_to_banded(matrix, u=None, l=None) :staticmethod: Convert sparse matrix to banded format. .. py:attribute:: banded :value: True .. py:attribute:: sparse :value: False .. py:class:: BlockInverse(matrix, solver) Block inversion solve. .. py:class:: DenseInverse(matrix, solver=None) Dense inversion solve. .. py:method:: solve(vector) .. py:attribute:: matrix_inverse .. py:class:: DenseSolver(matrix, solver=None) Base class for dense solvers. .. py:attribute:: banded :value: False .. py:attribute:: sparse :value: False .. py:class:: DummySolver(matrix, solver=None) Dummy solver that returns zeros for testing. .. py:method:: solve(vector) .. py:class:: SPQR_solve(matrix, solver=None) SuiteSparse QR solve. .. py:method:: solve(vector) .. py:attribute:: matrix .. py:class:: ScipyBanded(matrix, solver=None) Scipy banded solve. .. py:method:: solve(vector) .. py:class:: ScipyDenseLU(matrix, solver=None) Scipy dense LU factorized solve. .. py:method:: solve(vector) .. py:attribute:: LU .. py:class:: SolverBase(matrix, solver=None) Abstract base class for all solvers. .. py:method:: solve(vector) .. py:method:: solve_H(vector) :abstractmethod: .. py:attribute:: config .. py:class:: SparseInverse(matrix, solver=None) Sparse inversion solve. .. py:method:: solve(vector) .. py:attribute:: matrix_inverse .. py:class:: SparseSolver(matrix, solver=None) Base class for sparse solvers. .. py:attribute:: banded :value: False .. py:attribute:: sparse :value: True .. py:class:: SuperluColamdFactorized(matrix, solver=None) SuperLU factorized solve with 'COLAMD' column permutation. .. py:attribute:: permc_spec :value: 'COLAMD' .. py:class:: SuperluColamdFactorizedTranspose(matrix, solver=None) SuperLU factorized solve with 'COLAMD' row permutation. .. py:attribute:: permc_spec :value: 'COLAMD' .. py:attribute:: trans :value: 'T' .. py:class:: SuperluColamdSpsolve(matrix, solver=None) SuperLU spsolve with 'COLAMD' column permutation. .. py:attribute:: permc_spec :value: 'COLAMD' .. py:class:: SuperluNaturalFactorized(matrix, solver=None) SuperLU factorized solve with 'NATURAL' column permutation. .. py:attribute:: permc_spec :value: 'NATURAL' .. py:class:: SuperluNaturalFactorizedTranspose(matrix, solver=None) SuperLU factorized solve with 'NATURAL' row permutation. .. py:attribute:: permc_spec :value: 'NATURAL' .. py:attribute:: trans :value: 'T' .. py:class:: SuperluNaturalSpsolve(matrix, solver=None) SuperLU spsolve with 'NATURAL' column permutation. .. py:attribute:: permc_spec :value: 'NATURAL' .. py:class:: UmfpackFactorized(matrix, solver=None) UMFPACK LU factorized solve. .. py:method:: solve(vector) .. py:attribute:: LU .. py:class:: UmfpackSpsolve(matrix, solver=None) UMFPACK spsolve. .. py:method:: solve(vector) .. py:attribute:: matrix .. py:class:: Woodbury(matrix, subproblem, matsolver) Solve top & right bordered matrix using Woodbury formula. .. py:method:: solve(Y) .. py:attribute:: A .. py:attribute:: A_matsolver .. py:attribute:: Ainv .. py:attribute:: Ainv_U .. py:attribute:: Sinv .. py:attribute:: Sinv_ .. py:attribute:: config .. py:attribute:: matrix .. py:attribute:: matsolver .. py:function:: add_solver(solver) .. py:data:: cupy_available :value: True .. py:data:: matsolvers .. py:data:: woodbury_matsolvers