5 research outputs found
PyClaw: Accessible, Extensible, Scalable Tools for Wave Propagation Problems
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 scalable
solvers via the PETSc library. The package is further augmented by use of
PyWENO for generation of efficient high-order weighted essentially
non-oscillatory reconstruction code. The simplicity, capability, and
performance of this approach are demonstrated through application to example
problems in shallow water flow, compressible flow and elasticity
High Performance Computing and High-Level Programming Concepts for Hyperbolic PDE Codes
<p>Successful proposal requesting funding from KAUST for the second [HPC]^3 meeting, which was held in early 2012.</p
Clawpack: building an open source ecosystem for solving hyperbolic PDEs
Clawpack is a software package designed to solve nonlinear hyperbolic partial differential equations using high-resolution finite volume methods based on Riemann solvers and limiters. The package includes a number of variants aimed at different applications and user communities. Clawpack has been actively developed as an open source project for over 20 years. The latest major release, Clawpack 5, introduces a number of new features and changes to the code base and a new development model based on GitHub and Git submodules. This article provides a summary of the most significant changes, the rationale behind some of these changes, and a description of our current development model
erdc/proteus: 1.4.1
new tests for level set methods, entropy viscosity, richards equation, and plasticity
updates to stack
support for coverage checkin