Skip to content
SymPy
EntityQ5971368· pop 14· linked from 96 articles

Also known as Symbolic Python

SymPy is an open-source Python library for symbolic computation. It provides computer algebra capabilities either as a standalone application, as a library to other applications, or live on the web as SymPy Live or SymPy Gamma. SymPy is simple to install and to inspect because it is written entirely in Python with few dependencies. This ease of access combined with a simple and extensible codebase in a well-known language make SymPy a computer algebra system with a relatively low barrier to entry.

Key facts

Software.name
SymPy
Software.logo
160px|Sympy logo.
Software.developer
SymPy Development Team
Software.latest release version
1.14.0
Software.programming language
Python
Software.operating system
Cross-platform
Software.genre
Computer algebra system
Software.license
3-clause BSD

via Wikipedia infobox

Source code

And many more people helped on the SymPy mailing list, reported bugs, helped organize SymPy's participation in the Google Summer of Code, the Google Highly Open Participation Contest, Google Code-In, wrote and blogged about SymPy... License: New BSD License (see the LICENSE file for details) covers all files in the sympy repository unless stated otherwise. For in-depth instructions on installation and building the documentation, see the SymPy Documentation Style Guide. SymPy also comes with a console that is a simple wrapper around the classic python console (or IPython when available) that loads the SymPy namespace and executes some common commands for you. We welcome contributions from anyone, even if you are new to open source. Please read our Contributor Guide page and the SymPy Documentation Style Guide. If you are new and looking for some way to contribute, a good place to start is to look at the issues tagged Easy to Fix. Please note that all participants in this project are expected to follow our Code of Conduct. By participating in this project you agree to abide by its terms. See CODE OF CONDUCT.md. For the more fine-grained running of tests or doctests, use bin/test or respectively bin/doctest . The master branch is automatically tested by GitHub Actions. The parser and lexer were generated with the ANTLR4 toolchain in sympy/parsing/latex/ antlr and checked into the repo. Presently, most users should not need to regenerate these files, but if you plan to work on this feature, you will need the antlr4 command-line tool (and you must ensure that it is in your PATH ). One way to get it is: Alternatively, follow the instructions on the ANTLR website and download the antlr-4.11.1-complete.jar . Then export the CLASSPATH as instructed and instead of creating antlr4 as an alias, make it an executable file with the following contents: to clear all untracked files. You can revert the most recent changes in git with: WARNING: The above commands will all clear changes you may have made, and you will lose them forever. Be sure to check things with git status , git diff , git clean -Xn , and git clean -n before doing any of those. Our issue tracker is at . Please report any bugs that you find. Or, even better, fork the repository on GitHub and create a pull request. We welcome all changes, big or small, and we will help you make the pull request if you are new to git (just ask on our mailing list or Gitter Channel). If you further have any queries, you can find answers on Stack Overflow using the sympy tag. SymPy was started by Ondřej Čertík in 2005, he wrote some code during the summer, then he wrote some more code during summer 2006. In February 2007, Fabian Pedregosa joined the project and helped fix many things, contributed documentation, and made it alive again. 5 students (Mateusz Paprocki, Brian Jorgensen, Jason Gedge, Robert Schwarz, and Chris Wu) improved SymPy incredibly during summer 2007 as part of the Google Summer of Code. Pearu Peterson joined the development during the summer 2007 and he has made SymPy much more competitive by rewriting the core from scratch, which has made it from 10x to 100x faster. Jurjen N.E. Bos has contributed pretty-printing and other patches. Fredrik Johansson has written mpmath and contributed a lot of patches. SymPy has participated in every Google Summer of Code since 2007. You can see for full details. Each year has improved SymPy by bounds. Most of SymPy's development has come from Google Summer of Code students. In 2011, Ondřej Čertík stepped down as lead developer, with Aaron Meurer, who also started as a Google Summer of Code student, taking his place. Ondřej Čertík is still active in the community but is too busy with work and family to play a lead development role. Since then, a lot more people have joined the development and some people have also left. You can see the full list in AUTHORS. The git history goes back to 2007 when development moved from svn to hg.

Excerpt from the source-code README · 11,182 chars · not written by Vinony

Wikidata facts

Official website
www.sympy.org
Show 8 more facts
software version identifier
1.14.0
source code repository URL
github.com/sympy/sympy
inception
2007-00-00
social media followers
3190
Commons category
SymPy
Sources (5)

via Wikidata · CC0

~5 min read

Article

18 sections
Contents
  • Features
  • Core capabilities
  • Polynomials
  • Calculus
  • Solving equations
  • Discrete math
  • Matrices
  • Geometry
  • Plotting
  • Physics
  • Statistics
  • Combinatorics
  • Printing
  • Related projects
  • Dependencies
  • See also
  • References
  • External links

SymPy is an open-source Python library for symbolic computation. It provides computer algebra capabilities either as a standalone application, as a library to other applications, or live on the web as SymPy Live or SymPy Gamma. SymPy is simple to install and to inspect because it is written entirely in Python with few dependencies. This ease of access combined with a simple and extensible codebase in a well-known language make SymPy a computer algebra system with a relatively low barrier to entry.

SymPy includes features ranging from basic symbolic arithmetic to calculus, algebra, discrete mathematics, and quantum physics. It is capable of formatting the result of the computations as LaTeX code.

Connections

Categories