请输入您要查询的百科知识:

 

词条 Portable, Extensible Toolkit for Scientific Computation
释义

  1. Components

  2. Features and modules

  3. Notes

  4. Bibliography

  5. See also

  6. External links

{{Infobox software
| name = PETSc
| latest_release_version = 3.10
| latest release date = {{Start date and age|2018|09|12|df=yes/no}}
| operating_system = Linux, Unix, Mac OS X, Windows
| license = BSD 2-clause license
| language = C, Python
| genre = Scientific simulation software
| website = {{URL|http://www.mcs.anl.gov/petsc/}}
}}

The Portable, Extensible Toolkit for Scientific Computation (PETSc, pronounced PET-see; the S is silent), is a suite of data structures and routines developed by Argonne National Laboratory for the scalable (parallel) solution of scientific applications modeled by partial differential equations. It employs the Message Passing Interface (MPI) standard for all message-passing communication. PETSc is the world’s most widely used parallel numerical software library for partial differential equations and sparse matrix computations. PETSc received an R&D 100 Award in 2009.[1][2][3] The PETSc Core Development Group won the SIAM/ACM Prize in Computational Science and Engineering for 2015.[4]

PETSc is intended for use in large-scale application projects, many ongoing computational science projects are built around the PETSc libraries. Its careful design allows advanced users to have detailed control over the solution process. PETSc includes a large suite of parallel linear and nonlinear equation solvers that are easily used in application codes written in C, C++, Fortran and now Python. PETSc provides many of the mechanisms needed within parallel application code, such as simple parallel matrix and vector assembly routines that allow the overlap of communication and computation. In addition, PETSc includes support for parallel distributed arrays useful for finite difference methods.[5]

Components

PETSc consists of a variety of components consisting of major classes and supporting infrastructure. Users typically interact with objects of the highest level classes relevant to their application, essential lower level objects such as vectors, and may customize or extend any others. All major components of PETSc have an extensible plugin architecture.

Features and modules

PETSc provides many features for parallel computation, broken into several modules:

  • Index sets, including permutations, for indexing into vectors, renumbering, etc.
  • Parallel vectors; and matrices (generally sparse)
  • Scatters (handles communicating ghost point information) and gathers (the opposite of scatters)
  • Data management for parallel structured and unstructured meshes
  • Several sparse storage formats
  • Scalable parallel preconditioners, including multigrid and sparse direct solvers
  • Krylov subspace methods
  • Parallel nonlinear solvers, such as Newton's method and nonlinear GMRES
  • Parallel time-stepping (ODE and DAE) solvers
  • Automatic profiling of floating point and memory usage
  • Consistent interface
  • Intensive error checking
  • Portable to UNIX, Mac OS X, and Windows

Notes

1. ^http://www.anl.gov/sites/anl.gov/files/Argonne_strategic_plan_0.pdf
2. ^{{cite web|url=https://www.alcf.anl.gov/articles/petsc-wins-2009-rd-100-award |title=PETSc Wins 2009 R&D 100 Award | Argonne Leadership Computing Facility |publisher=Alcf.anl.gov |date=2009-07-21 |accessdate=2013-05-01}}
3. ^{{cite web|author=Thu, 07/30/2009 - 5:23am |url=http://www.rdmag.com/award-winners/2009/07/petsc-release-30-expands-capabilities |title=PETSc Release 3.0 expands capabilities |publisher=Rdmag.com |date=2009-07-30 |accessdate=2013-05-01}}
4. ^{{cite web|url=http://www.siam.org/prizes/sponsored/cse.php|title=SIAM/ACM Prize in Computational Science and Engineering|publisher=siam.org|date=2015-03-18|accessdate=2015-04-19}}
5. ^http://www.mcs.anl.gov/petsc/petsc-dev/docs/manual.pdf

Bibliography

  • PETSc Users Manual, Satish Balay, Shrirang Abhyankar, Mark F. Adams, Jed Brown, Peter Brune, Kris Buschelman, Victor Eijkhout, William D. Gropp, Dinesh Kaushik, Matthew G. Knepley, Lois Curfman McInnes, Karl Rupp, Barry F. Smith, and Hong Zhang, ANL-95/11 Revision 3.5, Argonne National Laboratory, June, 2014.
  • Efficient Management of Parallelism in Object Oriented Numerical Software Libraries, Satish Balay, William D. Gropp, Lois Curfman McInnes, Barry F. Smith, Modern Software Tools in Scientific Computing, ed. Bruaset et al., pp. 163–202, 1997.
  • [https://dx.doi.org/10.1016/j.pepi.2007.04.016 Numerical simulation of geodynamic processes with the Portable Extensible Toolkit for Scientific Computation, R.F. Katz, M.G. Knepley, B. Smith, M. Spiegelman, and E.T. Coon, Physics of The Earth and Planetary Interiors, 163, pp. 52-68, 2007.]

See also

  • list of numerical libraries

External links

  • The Official PETSc web site
  • Jack Dongarra's Linear Algebra Software Page

4 : Numerical libraries|Numerical linear algebra|Scientific simulation software|C++ numerical libraries

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/11 15:02:04