PeerJ Computer Science (Jan 2017)
SymPy: symbolic computing in Python
- Aaron Meurer,
- Christopher P. Smith,
- Mateusz Paprocki,
- Ondřej Čertík,
- Sergey B. Kirpichev,
- Matthew Rocklin,
- AMiT Kumar,
- Sergiu Ivanov,
- Jason K. Moore,
- Sartaj Singh,
- Thilina Rathnayake,
- Sean Vig,
- Brian E. Granger,
- Richard P. Muller,
- Francesco Bonazzi,
- Harsh Gupta,
- Shivam Vats,
- Fredrik Johansson,
- Fabian Pedregosa,
- Matthew J. Curry,
- Andy R. Terrel,
- Štěpán Roučka,
- Ashutosh Saboo,
- Isuru Fernando,
- Sumith Kulal,
- Robert Cimrman,
- Anthony Scopatz
Affiliations
- Aaron Meurer
- Department of Mechanical Engineering, University of South Carolina, Columbia, SC, United States
- Christopher P. Smith
- Polar Semiconductor, Inc., Bloomington, MN, United States
- Mateusz Paprocki
- Continuum Analytics, Inc., Austin, TX, United States
- Ondřej Čertík
- Los Alamos National Laboratory, Los Alamos, NM, United States
- Sergey B. Kirpichev
- Faculty of Physics, Moscow State University, Moscow, Russia
- Matthew Rocklin
- Continuum Analytics, Inc., Austin, TX, United States
- AMiT Kumar
- Department of Applied Mathematics, Delhi Technological University, New Delhi, India
- Sergiu Ivanov
- Université Paris Est Créteil, Créteil, France
- Jason K. Moore
- Mechanical and Aerospace Engineering, University of California, Davis, CA, United States
- Sartaj Singh
- Mathematical Sciences, Indian Institute of Technology (BHU), Varanasi, Uttar Pradesh, India
- Thilina Rathnayake
- Department of Computer Science and Engineering, University of Moratuwa, Katubedda, Moratuwa, Sri Lanka
- Sean Vig
- University of Illinois at Urbana-Champaign, Urbana, IL, United States
- Brian E. Granger
- California Polytechnic State University, San Luis Obispo, CA, United States
- Richard P. Muller
- Center for Computing Research, Sandia National Laboratories, Albuquerque, NM, United States
- Francesco Bonazzi
- Department of Theory and Bio-Systems, Max Planck Institute of Colloids and Interfaces, Potsdam, Germany
- Harsh Gupta
- Indian Institute of Technology Kharagpur, Kharagpur, West Bengal, India
- Shivam Vats
- Indian Institute of Technology Kharagpur, Kharagpur, West Bengal, India
- Fredrik Johansson
- INRIA Bordeaux-Sud-Ouest—LFANT project-team, Talence, France
- Fabian Pedregosa
- INRIA—SIERRA project-team, Paris, France
- Matthew J. Curry
- Department of Physics and Astronomy, University of New Mexico, Albuquerque, NM, United States
- Andy R. Terrel
- Fashion Metric, Inc, Austin, TX, United States
- Štěpán Roučka
- Department of Surface and Plasma Science, Faculty of Mathematics and Physics, Charles University in Prague, Praha, Czech Republic
- Ashutosh Saboo
- Department of Computer Science, Department of Mathematics, Birla Institute of Technology and Science, Goa, India
- Isuru Fernando
- Department of Computer Science and Engineering, University of Moratuwa, Katubedda, Moratuwa, Sri Lanka
- Sumith Kulal
- Indian Institute of Technology Bombay, Mumbai, Maharashtra, India
- Robert Cimrman
- New Technologies—Research Centre, University of West Bohemia, Plzeň, Czech Republic
- Anthony Scopatz
- Department of Mechanical Engineering, University of South Carolina, Columbia, SC, United States
- DOI
- https://doi.org/10.7717/peerj-cs.103
- Journal volume & issue
-
Vol. 3
p. e103
Abstract
SymPy is an open source computer algebra system written in pure Python. It is built with a focus on extensibility and ease of use, through both interactive and programmatic applications. These characteristics have led SymPy to become a popular symbolic library for the scientific Python ecosystem. This paper presents the architecture of SymPy, a description of its features, and a discussion of select submodules. The supplementary material provide additional examples and further outline details of the architecture and features of SymPy.
Keywords