|
numerics
|
Krylov subspace matrix exponential-vector product: compute exp(t*A)*v. More...
#include "core/types.hpp"#include "core/vector.hpp"#include "linalg/sparse/sparse.hpp"#include "linalg/solvers/cg.hpp"#include <functional>Go to the source code of this file.
Namespaces | |
| namespace | num |
Functions | |
| Vector | num::expv (real t, const MatVecFn &matvec, idx n, const Vector &v, int m_max=30, real tol=1e-8) |
| Compute exp(t*A)*v via Krylov-Padé approximation (matrix-free) | |
| Vector | num::expv (real t, const SparseMatrix &A, const Vector &v, int m_max=30, real tol=1e-8) |
| Compute exp(t*A)*v via Krylov-Padé approximation (sparse matrix) | |
Krylov subspace matrix exponential-vector product: compute exp(t*A)*v.
Uses the Arnoldi process to build a Krylov basis, then applies a dense Padé [6/6] matrix exponential on the projected (small) problem.
Definition in file expv.hpp.