Abstract
The overarching goals of PyAMG include both readability and performance. This includes readable implementations of many popular variations of AMG (see the Methods section), the ability to reproduce results in the literature, and a user-friendly interface to AMG allowing straightforward access to the variety of AMG parameters in the method(s). Additionally, pure Python implementations are not efficient for many sparse matrix operations not already available in scipy.sparse — e.g., the sparse matrix graph coarsening algorithms needed by AMG. For such cases in PyAMG, the compute (or memory) intensive kernels are typically expressed in C++ and wrapped through PyBind11, while the method interface and error handling is implemented directly in Python.
Cite
CITATION STYLE
Bell, N., Olson, L. N., Schroder, J., & Southworth, B. (2023). PyAMG: Algebraic Multigrid Solvers in Python. Journal of Open Source Software, 8(87), 5495. https://doi.org/10.21105/joss.05495
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.