PyClaw: Accessible, Extensible, Scalable Tools for Wave Propagation Problems
David I. Ketcheson, Kyle T. Mandli, Aron Ahmadia, Amal Alghamdi,, Manuel Quezada, Matteo Parsani, Matthew G. Knepley, Matthew Emmett

TL;DR
PyClaw is a Python-based hyperbolic PDE solver that combines ease of use, extensibility, and high performance, enabling scalable simulations on supercomputers while maintaining a user-friendly interface.
Contribution
The paper introduces PyClaw, a flexible and efficient Python framework for hyperbolic PDEs that integrates existing Fortran kernels and scalable parallel computing capabilities.
Findings
Achieves near Fortran performance with Python ease of use
Provides scalable solutions on large supercomputers
Demonstrates effectiveness on fluid and elasticity problems
Abstract
Development of scientific software involves tradeoffs between ease of use, generality, and performance. We describe the design of a general hyperbolic PDE solver that can be operated with the convenience of MATLAB yet achieves efficiency near that of hand-coded Fortran and scales to the largest supercomputers. This is achieved by using Python for most of the code while employing automatically-wrapped Fortran kernels for computationally intensive routines, and using Python bindings to interface with a parallel computing library and other numerical packages. The software described here is PyClaw, a Python-based structured grid solver for general systems of hyperbolic PDEs \cite{pyclaw}. PyClaw provides a powerful and intuitive interface to the algorithms of the existing Fortran codes Clawpack and SharpClaw, simplifying code development and use while providing massive parallelism and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
