Infobox_Software name=SymPy logo= genre=Computer algebra system license=New BSD license website=http://code.google.com/p/sympy/ latest release version=0.6.2 latest release date=August 17, 2008 programming language=Python operating system=Cross-platform developer=Independent group of people:"Not to be confused with SimPy, a Python discrete-event simulation language."
SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python and does not require any external libraries, except optionally for plotting support.
SymPy is free software. It is currently under active development, the lead developer is Ondřej Čertík.
Features
Currently, SymPy core has around 6300 lines of code (including extensive comments and docstrings) and its capabilities include:
Then there are SymPy modules (18200 lines including documentation) for these tasks:
* more functions (sin, cos, tan, atan, asin, acos, factorial, zeta, legendre) * limits (like limit(x*log(x), x, 0) -> 0) * integration using extended Risch-Norman heuristic * polynomials (division, gcd, square free decomposition, groebner bases, factorization) * solvers (algebraic, difference and differential equations, and systems of equations) * symbolic matrices (determinants, LU decomposition...) * Pauli and Dirac algebra * geometry module * plotting (2D and 3D)
There are extensive tests (6148 lines in 58 files) for every single feature in SymPy.
Related projects
* SAGE: an open source alternative to Mathematica, Maple, Matlab and Magma (SymPy is included in SAGE) * [http://code.google.com/p/mpmath/ mpmath] : a Python library for arbitrary-precision floating-point arithmetic (included in SymPy) * [http://code.google.com/p/sympycore/ sympycore] : a fork of SymPy * symbide: GUI for SymPy in PyGTK * symfe: Lightweight symbolic finite element calculations in Python
Usage examples
Differentiation:>>> from sympy import *>>> x,y = symbols('x', 'y')>>> f = x**2 / y + 2 * x - ln(y)>>> diff(f,x)2 + 2*x/y>>> diff(f,y)-1/y - x**2*y**(-2)>>> diff(diff(f,x),y)-2*x*y**(-2)
SymPy — Desarrollador Grupo independiente de personas [1] Información general Última versión estable 0.6.7 17 de marzo de … Wikipedia Español
Comparison of computer algebra systems — The following tables provide a comparison of computer algebra systems (CAS). Contents 1 General 1.1 Functionality 1.2 Operating system support 2 Hand held calculator CAS … Wikipedia
Sage — У этого термина существуют и другие значения, см. Sage (значения). Sage … Википедия
SAGE — Saltar a navegación, búsqueda Para otros usos de este término, véase Sage (desambiguación). SAGE El interface gráfico bajo Firefox … Wikipedia Español
Algorithme de Risch — L’algorithme de Risch, dû à Robert Risch (de), est un algorithme destiné aux systèmes de calcul formel, permettant de calculer des primitives, c est à dire de déterminer une fonction, connaissant sa dérivée. L’algorithme transforme ce… … Wikipédia en Français
MATLAB — For the region in Bangladesh, see Matlab Upazila. MATLAB MATLAB R2011a screenshot … Wikipedia
Mathematica — For other uses, see Mathematica (disambiguation). Mathematica Mathema … Wikipedia
Computer algebra system — A computer algebra system (CAS) is a software program that facilitates symbolic mathematics. The core functionality of a CAS is manipulation of mathematical expressions in symbolic form. Contents 1 Symbolic manipulations 2 Additional capabilities … Wikipedia
Maple (software) — Maple Maple interface Developer(s) Waterloo Maple (Maplesoft) Stable release 15.01 / June 21, 2011; 4 months ago (2011 06 21) … Wikipedia
Maxima (software) — For other uses, see Maxima (disambiguation). Maxima wxMaxima screenshot … Wikipedia