cds2.sparse
Large-scale sparse linear algebra - iterative solvers (CG, GMRES, BiCGSTAB), Lanczos eigenpairs and truncated SVD.
Sparse linear algebra — thin wrapper with CDS-native preconditioners jacobi/ilu.
IterativeSolveResult
dataclass
Solution of an iterative linear solver.
Source code in src/cds2/sparse.py
40 41 42 43 44 45 46 47 | |
EigenpairsResult
dataclass
Eigenvalues and matching eigenvectors (columns).
Source code in src/cds2/sparse.py
50 51 52 53 54 55 | |
TruncatedSVDResult
dataclass
Truncated SVD A ~ U diag(s) Vt.
Source code in src/cds2/sparse.py
58 59 60 61 62 63 64 | |
solve_cg(A, b, rtol=1e-08, maxiter=None, M=None)
Conjugate-gradient solve for symmetric positive-definite systems.
Source code in src/cds2/sparse.py
84 85 86 87 88 89 90 91 92 93 94 | |
solve_gmres(A, b, rtol=1e-08, maxiter=None, restart=None, M=None)
Generalized minimal residual solve for general square systems.
Source code in src/cds2/sparse.py
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | |
solve_bicgstab(A, b, rtol=1e-08, maxiter=None, M=None)
Biconjugate gradient stabilized solve - often faster on nonsymmetric PDEs.
Source code in src/cds2/sparse.py
114 115 116 117 118 119 120 121 122 123 124 | |
largest_eigenpairs(A, k=6, seed=None)
Algebraically largest eigenpairs of a symmetric matrix (Lanczos).
Source code in src/cds2/sparse.py
127 128 129 130 131 132 133 | |
smallest_eigenpairs(A, k=6, seed=None)
Smallest algebraic eigenpairs of a symmetric matrix/operator.
Source code in src/cds2/sparse.py
136 137 138 139 140 141 142 | |
truncated_svd(A, k=6, seed=None)
Rank-k truncated singular value decomposition.
Source code in src/cds2/sparse.py
145 146 147 148 149 150 151 | |
sparse_eye(n)
Identity matrix in CSR form.
Source code in src/cds2/sparse.py
154 155 156 | |
sparse_diag(values, offsets=None)
Diagonal (or multi-offset band) matrix from values.
Source code in src/cds2/sparse.py
159 160 161 162 163 164 | |
sparse_kron(a, b)
Kronecker product of two sparse matrices.
Source code in src/cds2/sparse.py
167 168 169 | |
one_norm_est(A, seed=None)
Lower bound estimate of the 1-norm of a square sparse matrix.
Source code in src/cds2/sparse.py
172 173 174 175 176 177 | |
jacobi_preconditioner(A)
Diagonal (Jacobi) preconditioner M = diag(A)^{-1}.
Source code in src/cds2/sparse.py
180 181 182 183 184 185 186 187 188 189 190 | |
ilu_preconditioner(A, drop_tol=0.0001, fill_factor=10.0)
Incomplete-LU preconditioner via SuperLU's ILU factorization.
Source code in src/cds2/sparse.py
193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 | |