-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the SymPy wiki!
We encourage everyone to participate in this wiki. To edit it, you need to create an account (top right corner). Just fill in your name and password and that's it (no email confirmation, or other annoying things). Feel free to play/test something in the Sandbox.
Note, there are a bunch of pages in this wiki that are not linked to from here. See them all here.
Project Main Page | Planet SymPy (blogs) | Mailing list | Download current version | Documentation | Issues tracker | Release Notes
SymPy is a computer algebra system (CAS) written in the Python programming language. SymPy is easy to use and install (see the download instructions and tutorial for more information), and works everywhere where Python 2.5 or newer is installed (Linux, Windows, Mac OS X, ...). SymPy's features include:
- Arbitrary precision integers, rationals and floats, as well as symbolic expressions
- Simplification (e.g. ( abb + 2bab ) → (3ab^2)), expansion (e.g. ((a+b)^2) → (a^2 + 2ab + b^2)), and other methods of rewriting expressions
- Functions (exp, log, sin, ...)
- Complex numbers (like
exp(I*x).expand(complex=True)
→cos(x)+I*sin(x)
) - Taylor (Laurent) series and limits
- Differentiation and integration
The main SymPy documentation is maintained at http://docs.sympy.org (where you can see both the development and the latest stable versions docs). The full change log can be viewed here.
The issue tracker is located at http://code.google.com/p/sympy/issues/list.
The best place to begin is the Tutorial. A lot of useful information can also be found in the following:
- FAQ -- Frequently Asked Questions about SymPy
- Quick examples -- This page shows example commands for doing common calculations in SymPy
- Cookbook -- Various recipes
- Presentations -- Slides, tutorials and posters from conferences
- Comparison to popular CAS's -- Axiom, Magma, Maple, Mathematica, Matlab, Maxima, Sage, Yacas
- Roadmap -- Our roadmap to SymPy 1.0
- Ideas -- Random ideas, not necessarily related to SymPy, but that could be useful for SymPy in the future
- Generic interface -- SymPy/SymPyCore design notes
- Technical References -- Related mathematical literature and websites
- Test automation -- Wishlist scratchpad for streamlining the test suite
- Unit systems -- Some ideas to improve unit systems.
- GSoC 2013 Ideas -- Ideas for Google Summer of Code projects
- GSoC 2013 Organization Application -- Our application to be an organization for Google Summer of Code 2013
- GSoC 2013 Application Template -- The template for student applications for Google Summer of Code
- GSoC 2013 Current Applications -- A list of active proposals. Link your GSoC 2013 Project Proposal here
- GSoC 2013 Report -- Report for the GSoC 2013
- GSoC 2012 Ideas -- Ideas for Google Summer of Code projects
- GSoC 2012 Organization Application -- Our application to be an organization for Google Summer of Code 2012
- GSoC 2012 Application Template -- The template for student applications for Google Summer of Code
- GSoC 2012 Current Applications -- A list of active proposals. Link your GSoC 2012 Project Proposal here
- GSoC 2012 Report -- Report for the GSoC 2012
- GSoC 2011 Ideas -- Ideas for Google Summer of Code projects
- GSoC 2011 Organization Application -- Our application to be an organization for Google Summer of Code 2011
- GSoC 2011 Application Template -- The template for student applications for Google Summer of Code
- GSoC 2011 Current Applications -- A list of active proposals. Link your GSoC 2011 Project Proposal here
- GSoC 2011 Report -- Report for the GSoC 2011
- GSoC Previous Applications -- Some examples of successful Google Summer of Code applications from 2009 and 2010
- GSoC 2010 Report -- Report for the GSoC 2010
- GSoC 2009 Report -- Report for the GSoC 2009
- GSoC 2008 Report -- Report for the GSoC 2008
- GSoC 2007 Report -- Report for the GSoC 2007
- GCI 2012 Landing -- Landing page for students who participated in Google Code-In 2012 with SymPy
- GCI 2012 Organization Application -- Our application to be an organization for Google Code-In 2012
- GCI 2011 Landing -- Landing page for students who participated in Google Code-In 2011 with SymPy
- GCI 2011 Mentors -- Mentors for the Google Code In 2011
- GCI 2011 Organization Application -- Our application to be an organization for Google Code In 2011
- CGI 2011 Task list (spreadsheet) -- Our task list for Google Code In 2011
- GCI 2011 Task list (wiki)
- GHOP 2007 -- Landing page for students who participated in Google Highly Open Participation contest 2007 with SymPy
- Getting The Bleeding Edge -- how to get the latest development version of sympy
- Development workflow -- how to send a patch
- Writing documentation -- how to write docstrings, tutorials etc.
- Running tests -- how to test the code and examples in documentation
- git hg rosetta stone -- direct translation of hg commands to git
- Pushing patches -- Guide for people who get push access to the official git repo
- SymPy in the news -- SymPy in the News and Blogs
- Contributors -- list of all contributors and sponsors of SymPy
- Related software -- projects related to SymPy
- Sage Symbench -- Symbolic benchmarks
- buildbot -- SymPy buildbot
- Windows development using git -- SymPy on Windows
- Debugging -- useful when debugging more complex parts of SymPy
There are many pages copied here from the old Google code wiki. These should be updated and reformatted for github. They can be found by going here. and looking for the pages starting with "old wiki". When these are updated, the header should be changed and the file moved to remove the "old wiki" designation.
Unless stated otherwise, everything on this wiki is licensed under the same terms as SymPy, i.e. [[modified BSD|http://www.opensource.org/licenses/bsd-license.php]] license. This is so that we can take anything from here and add it to the SymPy tarball as a documentation. See License choice for the motivation and discussion behind that choice.
If you have some interesting material, that you don't want to (or cannot) make BSD licensed, please put there a notice, that it has some other license.