New answers tagged

5

You could define a linear opearator and pass it to the function eigsh. Ideally, your matrices $L$ and $X$ are sparse so you can take advantage of the matrix-vector product. In your case, you would have something like the following. import numpy as np from scipy.sparse.linalg import LinearOperator, eigsh def mv(v): a = 2.3 return L@(L@v) + a*X@(X.T@v)...


5

For a single (maybe a few) $b$'s, I have found Conjugate Gradient can beat an $LL^T$ Cholesky factorization . To do this, I use MKL's Inspector-Executor sparse matrix-vector product mkl_sparse_d_mv with the following: a good re-ordering (COLAMD and METIS worked for me). This speeds up each matrix-vector product. To avoid a permutation operation each time, I ...


5

For problems this small, sparse direct solvers are faster than most iterative solvers even if you include the cost of factorization. As a result, I don't believe that you will be able to find a preconditioner for an iterative solver that can work in less than twice the cost of the forward-backward solve. You either have to pay the memory cost of a sparse ...


1

You can use Krylov iterative solvers with preconditioners. Since you mentioned that your problem of interest is linear elasticity, you end up with symmetric positive definite matrices, assuming that you use standard techniques. For this case, you can use the Conjugate Gradient method with the ILU preconditioner. These solvers are available in many languages. ...


2

Either I am not understanding the issue, or you're making it out to be more difficult than it really is. You have a thing $A$ that should ideally be equal to $I$. The norm $\|I-A\|_2$ measures its distance from $I$; that's what norms do.


1

I assume you solve the linear ODE $y'=\lambda y$, with $\lambda \in \mathbb{C},~\mathrm{Re}(\lambda)<0$. Otherwise if $\mathrm{Re}(\lambda)>0$, the true solution diverges and, if $\mathrm{Re}(\lambda)=0$, forward Euler cannot be stable as the eigenvalue $\lambda$ will always be outside of its stability domain. If you have taken a time step such that ...


Top 50 recent answers are included