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 supe...

Full description

Saved in:
Bibliographic Details
Published inSIAM journal on scientific computing Vol. 34; no. 4; pp. C210 - C231
Main Authors Ketcheson, David I, Mandli, Kyle, Ahmadia, Aron J, Alghamdi, Amal, de Luna, Manuel Quezada, Parsani, Matteo, Knepley, Matthew G, Emmett, Matthew
Format Journal Article
LanguageEnglish
Published Philadelphia Society for Industrial and Applied Mathematics 01.01.2012
Subjects
Online AccessGet full text
ISSN1064-8275
1095-7197
DOI10.1137/110856976

Cover

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 [K. T. Mandli et al.,PyClaw Software , Version 1.0, http://numerics.kaust.edu.sa/pyclaw/ (2011)]. 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 nonoscillatory 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.
AbstractList 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 [K. T. Mandli et al.,PyClaw Software , Version 1.0, http://numerics.kaust.edu.sa/pyclaw/ (2011)]. 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 nonoscillatory 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.
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 [K. T. Mandli et al., PyClaw Software, Version 1.0, http://numerics.kaust.edu.sa/pyclaw/ (2011)]. 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 nonoscillatory 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. [PUBLICATION ABSTRACT]
Author Emmett, Matthew
Ahmadia, Aron J
Alghamdi, Amal
de Luna, Manuel Quezada
Ketcheson, David I
Knepley, Matthew G
Parsani, Matteo
Mandli, Kyle
Author_xml – sequence: 1
  givenname: David
  surname: Ketcheson
  middlename: I
  fullname: Ketcheson, David I
– sequence: 2
  givenname: Kyle
  surname: Mandli
  fullname: Mandli, Kyle
– sequence: 3
  givenname: Aron
  surname: Ahmadia
  middlename: J
  fullname: Ahmadia, Aron J
– sequence: 4
  givenname: Amal
  surname: Alghamdi
  fullname: Alghamdi, Amal
– sequence: 5
  givenname: Manuel
  surname: de Luna
  middlename: Quezada
  fullname: de Luna, Manuel Quezada
– sequence: 6
  givenname: Matteo
  surname: Parsani
  fullname: Parsani, Matteo
– sequence: 7
  givenname: Matthew
  surname: Knepley
  middlename: G
  fullname: Knepley, Matthew G
– sequence: 8
  givenname: Matthew
  surname: Emmett
  fullname: Emmett, Matthew
BookMark eNqNkEtLw0AUhQepYFtd-A8CblwYnZvMnYe7UuoDChasuCyT5EZSppmYSa3-e1PtypWr8y0-DpwzYoPa18TYOfBrgFTdAHCN0ih5xIbADcYKjBrsWYpYJwpP2CiENecghUmGbL74mjq7u40meU4hVJmjq2j22VF94OfcOttTtPTehaj0bfRqPyhatL6xb7arfL3n3tiEU3ZcWhfo7JBj9nI3W04f4vnT_eN0Mo8bUKaLIQGQuoDcikxz1HkpFYoSSKhEEqIqsEAqNOeWuJRpWYI0SaYzoRVJjumYXf72Nq1_31LoVpsq5OScrclvw6p_QgoABf9UuYCf1os_6tpv27ofsgKepogGQaff4blp0A
ContentType Journal Article
Copyright 2012, Society for Industrial and Applied Mathematics
Copyright_xml – notice: 2012, Society for Industrial and Applied Mathematics
DBID 3V.
7WY
7WZ
7X2
7XB
87Z
88A
88F
88I
88K
8AL
8FE
8FG
8FH
8FK
8FL
8G5
ABJCF
ABUWG
AFKRA
ARAPS
ATCPS
AZQEC
BBNVY
BENPR
BEZIV
BGLVJ
BHPHI
CCPQU
D1I
DWQXO
FRNLG
F~G
GNUQQ
GUQSH
HCIFZ
JQ2
K60
K6~
K7-
KB.
L.-
L6V
LK8
M0C
M0K
M0N
M1Q
M2O
M2P
M2T
M7P
M7S
MBDVC
P5Z
P62
PATMY
PDBOC
PHGZM
PHGZT
PKEHL
PQBIZ
PQBZA
PQEST
PQGLB
PQQKQ
PQUKI
PRINS
PTHSS
PYCSY
Q9U
7SC
7TB
8FD
FR3
H8D
KR7
L7M
L~C
L~D
DOI 10.1137/110856976
DatabaseName ProQuest Central (Corporate)
ABI/INFORM Collection
ABI/INFORM Global (PDF only)
Agricultural Science Collection
ProQuest Central (purchase pre-March 2016)
ABI/INFORM Collection
Biology Database (Alumni Edition)
Military Database (Alumni Edition)
Science Database (Alumni Edition)
Telecommunications (Alumni Edition)
Computing Database (Alumni Edition)
ProQuest SciTech Collection
ProQuest Technology Collection
ProQuest Natural Science Journals
ProQuest Central (Alumni) (purchase pre-March 2016)
ABI/INFORM Collection (Alumni Edition)
Research Library
Materials Science & Engineering Collection
ProQuest Central (Alumni)
ProQuest Central
Advanced Technologies & Computer Science Collection
Agricultural & Environmental Science Collection (ProQuest)
ProQuest Central Essentials
Biological Science Collection
ProQuest Central
Business Premium Collection
Technology collection
Natural Science Collection
ProQuest One
ProQuest Materials Science Collection
ProQuest Central Korea
Business Premium Collection (Alumni)
ABI/INFORM Global (Corporate)
ProQuest Central Student
Research Library Prep
SciTech Premium Collection
ProQuest Computer Science Collection
ProQuest Business Collection (Alumni Edition)
ProQuest Business Collection
Computer Science Database
Materials Science Database (ProQuest)
ABI/INFORM Professional Advanced
ProQuest Engineering Collection
Biological Sciences
ABI/INFORM Global (OCUL)
Agriculture Science Database
Computing Database
ProQuest Military Database (NC LIVE)
ProQuest Research Library
ProQuest Science Database
Telecommunications Database
Biological Science Database
Engineering Database (ProQuest)
Research Library (Corporate)
Advanced Technologies & Aerospace Database
ProQuest Advanced Technologies & Aerospace Collection
Environmental Science Database (ProQuest)
Materials Science Collection
ProQuest Central Premium
ProQuest One Academic
ProQuest One Academic Middle East (New)
ProQuest One Business (OCUL)
ProQuest One Business (Alumni)
ProQuest One Academic Eastern Edition (DO NOT USE)
ProQuest One Applied & Life Sciences
ProQuest One Academic
ProQuest One Academic UKI Edition
ProQuest Central China
Engineering Collection
Environmental Science Collection
ProQuest Central Basic
Computer and Information Systems Abstracts
Mechanical & Transportation Engineering Abstracts
Technology Research Database
Engineering Research Database
Aerospace Database
Civil Engineering Abstracts
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
DatabaseTitle Agricultural Science Database
ProQuest Business Collection (Alumni Edition)
Research Library Prep
Computer Science Database
ProQuest Central Student
ProQuest Advanced Technologies & Aerospace Collection
ProQuest Central Essentials
ProQuest Computer Science Collection
SciTech Premium Collection
ProQuest Military Collection
ProQuest Central China
ABI/INFORM Complete
ProQuest Telecommunications
ProQuest One Applied & Life Sciences
Natural Science Collection
Biological Science Collection
ProQuest Central (New)
Engineering Collection
Advanced Technologies & Aerospace Collection
Business Premium Collection
ABI/INFORM Global
Engineering Database
ProQuest Science Journals (Alumni Edition)
ProQuest Biological Science Collection
ProQuest One Academic Eastern Edition
Agricultural Science Collection
ProQuest Technology Collection
ProQuest Telecommunications (Alumni Edition)
Biological Science Database
ProQuest Business Collection
Environmental Science Collection
ProQuest One Academic UKI Edition
Environmental Science Database
ProQuest One Academic
ProQuest One Academic (New)
ABI/INFORM Global (Corporate)
ProQuest One Business
Technology Collection
ProQuest One Academic Middle East (New)
Materials Science Collection
ProQuest Central (Alumni Edition)
ProQuest One Community College
Research Library (Alumni Edition)
ProQuest Natural Science Collection
ProQuest Biology Journals (Alumni Edition)
ProQuest Central
ABI/INFORM Professional Advanced
ProQuest Engineering Collection
ProQuest Central Korea
Agricultural & Environmental Science Collection
Materials Science Database
ProQuest Research Library
ABI/INFORM Complete (Alumni Edition)
ProQuest Materials Science Collection
ProQuest Computing
ABI/INFORM Global (Alumni Edition)
ProQuest Central Basic
ProQuest Science Journals
ProQuest Computing (Alumni Edition)
ProQuest Military Collection (Alumni Edition)
ProQuest SciTech Collection
Advanced Technologies & Aerospace Database
Materials Science & Engineering Collection
ProQuest One Business (Alumni)
ProQuest Central (Alumni)
Business Premium Collection (Alumni)
Aerospace Database
Civil Engineering Abstracts
Technology Research Database
Computer and Information Systems Abstracts – Academic
Mechanical & Transportation Engineering Abstracts
Computer and Information Systems Abstracts
Engineering Research Database
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts Professional
DatabaseTitleList Aerospace Database
Aerospace Database
Agricultural Science Database
Database_xml – sequence: 1
  dbid: 8FG
  name: ProQuest Technology Collection
  url: https://search.proquest.com/technologycollection1
  sourceTypes: Aggregation Database
DeliveryMethod fulltext_linktorsrc
Discipline Applied Sciences
Mathematics
EISSN 1095-7197
EndPage C231
ExternalDocumentID 2736798531
GroupedDBID -~X
123
3V.
4.4
7WY
7X2
7XB
7XC
88A
88I
88K
8AL
8CJ
8FE
8FG
8FH
8FK
8FL
8G5
AALVN
ABJCF
ABKAD
ABMZU
ABUWG
ACBEA
ACGFO
ACGOD
ACIWK
ACPRK
ADBBV
ADXHL
AENEX
AFFNX
AFKRA
AFRAH
ALMA_UNASSIGNED_HOLDINGS
ANXRF
ARAPS
ATCPS
AZQEC
BBNVY
BENPR
BEZIV
BGLVJ
BHPHI
BPHCQ
CCPQU
CS3
CZ9
D0L
D1I
D1J
D1K
DU5
DWQXO
EBS
EDO
EJD
EST
ESX
F5P
FRNLG
GNUQQ
GUQSH
H13
HCIFZ
H~9
JQ2
K6-
K60
K6V
K6~
K7-
KB.
KC.
L.-
L6V
LK5
LK8
M0C
M0K
M0N
M1Q
M2O
M2P
M2T
M7P
M7R
M7S
MBDVC
P1Q
P62
PATMY
PDBOC
PHGZM
PHGZT
PKEHL
PQBIZ
PQBZA
PQEST
PQGLB
PQQKQ
PQUKI
PRINS
PROAC
PTHSS
PYCSY
Q9U
RJG
RSI
TAE
TN5
YNT
.4S
7SC
7TB
8FD
FR3
H8D
KR7
L7M
L~C
L~D
PUEGO
ID FETCH-LOGICAL-p179t-121168d1ca4b8058cf6754f1e4726e557d5d5ed800ae0663ff1692b8b487e6053
IEDL.DBID BENPR
ISSN 1064-8275
IngestDate Wed Oct 01 15:07:51 EDT 2025
Thu Oct 02 12:05:48 EDT 2025
Fri Jul 25 10:37:58 EDT 2025
IsPeerReviewed true
IsScholarly true
Issue 4
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-p179t-121168d1ca4b8058cf6754f1e4726e557d5d5ed800ae0663ff1692b8b487e6053
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ObjectType-Article-2
ObjectType-Feature-1
content type line 23
PQID 1033559518
PQPubID 23500
ParticipantIDs proquest_miscellaneous_1136411715
proquest_miscellaneous_1136404105
proquest_journals_1033559518
PublicationCentury 2000
PublicationDate 2012-01-01
PublicationDateYYYYMMDD 2012-01-01
PublicationDate_xml – month: 01
  year: 2012
  text: 2012-01-01
  day: 01
PublicationDecade 2010
PublicationPlace Philadelphia
PublicationPlace_xml – name: Philadelphia
PublicationTitle SIAM journal on scientific computing
PublicationYear 2012
Publisher Society for Industrial and Applied Mathematics
Publisher_xml – name: Society for Industrial and Applied Mathematics
SSID ssj0016492
Score 2.2174077
Snippet Development of scientific software involves tradeoffs between ease of use, generality, and performance. We describe the design of a general hyperbolic PDE...
SourceID proquest
SourceType Aggregation Database
StartPage C210
SubjectTerms Algorithms
Computation
Computer programs
FORTRAN
Libraries
Matlab
Packages
Partial differential equations
Propagation
Python
Software
Solvers
Supercomputers
Title PyClaw: Accessible, Extensible, Scalable Tools for Wave Propagation Problems
URI https://www.proquest.com/docview/1033559518
https://www.proquest.com/docview/1136404105
https://www.proquest.com/docview/1136411715
Volume 34
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVPQU
  databaseName: ProQuest Central
  customDbUrl: http://www.proquest.com/pqcentral?accountid=15518
  eissn: 1095-7197
  dateEnd: 20131231
  omitProxy: true
  ssIdentifier: ssj0016492
  issn: 1064-8275
  databaseCode: BENPR
  dateStart: 19800301
  isFulltext: true
  titleUrlDefault: https://www.proquest.com/central
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: ProQuest Central
  customDbUrl: http://www.proquest.com/pqcentral?accountid=15518
  eissn: 1095-7197
  dateEnd: 20140531
  omitProxy: true
  ssIdentifier: ssj0016492
  issn: 1064-8275
  databaseCode: BENPR
  dateStart: 19930101
  isFulltext: true
  titleUrlDefault: https://www.proquest.com/central
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: ProQuest Technology Collection
  customDbUrl:
  eissn: 1095-7197
  dateEnd: 20140531
  omitProxy: true
  ssIdentifier: ssj0016492
  issn: 1064-8275
  databaseCode: 8FG
  dateStart: 19930101
  isFulltext: true
  titleUrlDefault: https://search.proquest.com/technologycollection1
  providerName: ProQuest
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwhV1LS8NAEB7aetGDb7FaywoeDXaT7EsQqaW1iJaiFb2VTbIRoSS1aX38e2fTtB4EvS1kIbCzM_PNzuMDOFFGhFQI6ghmYsdHl-wE0sOo1SgRqlD7rra9w3c93n30b57Zcwl6i14YW1a5sIm5oY7S0L6Ro3Z76BoRD8jL8ZtjWaNsdnVBoaELaoXoIh8xVoYV107GqsDKVbvXv1_mFbiv5vlP7jvSFayYNUQ9cWbr4RlXgv-yyrmr6WzCeoERSXMu1C0omWQbNgq8SAptzLZh7W45czXbgdv-V2ukP85JM-dAfA1G5pS0P_MK9Xz9gOKwjVJkkKajjCBaJU_63ZD-BAPnl1xCdm35ZbJdeOy0B62uU3AlOGNUqaljJ7VxGVE83UA2mAxjjAT8mBpfuNwwJiIWMRMhPNTGoow4ply5gQwwYDEY0nh7UEnSxOwDoSLGoJHb2XIG4ZySOlJaRZLHLAgaMatCbXE-w-LCZ8Mf8VThePkZr6rNP-jEpDPcQz3uN2xd6T97KBWUHfz9m0NYRezizl9DalCZTmbmCPHBNKhDWXau64XovwEoq7lf
linkProvider ProQuest
linkToHtml http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Lb9NAEB6V5gA9tKWA-maR4IZF1t4nUlSlbaKEJlEEiegtrO11VSmK2zol7Z_rb-usswkHJDjltpJXtrU7s_N9Oy-Aj9rKhEpJA8ltFjA0yUGsImStVstEJ4aFxuUOd3uiNWTfLvnlGjwtcmFcWOXiTCwP6jRP3B05aneEphHxgDq5uQ1c1yjnXV200DC-tUJaK0uM-cSOC_s4QwpX1NrnuN-fwrDZGJy1At9lILhBYZwGrsaZUCnF_4pVlaskQwzNMmqZDIXlXKY85TZFYGWss89ZRoUOYxUj1LdIBiJ87wuosIhpJH-V00av_33pxxBMz_2tggUqlNzXNqKR_OLi77nQUvxlBUrT1tyGTY9JSX0uRK9hzU52YMvjU-K1v9iBje6yxmvxBjr9x7OxmX0l9bLn4nU8tp9J46GMiC_HP3D7XWIWGeT5uCCIjslP89uS_h0S9atSItzY9bMp3sJwJav2DtYn-cTuAqEyQ5IqXC07i_BRK5Nqo1MlMh7H1YzvweFifUZewYrRH3HYgw_Lx6gazt9hJja_xzk0Eqzq4lj_M4dSSfn-vz_zHl62Bt3OqNPuXRzAK8RN4fwm5hDWp3f39gixyTQ-9gJA4NeqZe4Z9Zrz8Q
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=PyClaw%3A+Accessible%2C+Extensible%2C+Scalable+Tools+for+Wave+Propagation+Problems&rft.jtitle=SIAM+journal+on+scientific+computing&rft.au=Ketcheson%2C+David+I&rft.au=Mandli%2C+Kyle&rft.au=Ahmadia%2C+Aron+J&rft.au=Alghamdi%2C+Amal&rft.date=2012-01-01&rft.issn=1064-8275&rft.eissn=1095-7197&rft.volume=34&rft.issue=4&rft.spage=C210&rft.epage=C231&rft_id=info:doi/10.1137%2F110856976&rft.externalDBID=NO_FULL_TEXT
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1064-8275&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1064-8275&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1064-8275&client=summon