Projects / SymPy

SymPy

SymPy is a symbolic manipulation package, written in pure Python. Its aim is to become a full featured CAS in Python, while keeping the code as simple as possible in order to be comprehensible and easily extensible. Currently, Sympy has only around 1600 lines of code (including comments), and its capabilities include basic arithmetics, basic simplification, series expansion, functions (exp, ln, sin, cos, tan, etc.), differentiation, integration (currently it can do only very simple integrals), basic substitution, arbitrary precision integers and rationals, standard (Python) floats, basic complex numbers, and symbolic limits.

Tags Scientific/Engineering Mathematics Software Development Libraries
Operating Systems OS Independent
Implementation Python

Tweet this project Short link

Rss Recent releases

  • Rrelease-mid
  •  05 Apr 2009 10:50
  • Rrelease-after

    Changes: Robust and fast multivariate factorization was implemented. sympy now works with pickle protocol 2 (and thus works in ipython parallel). ./sympy test now uses the project's own testing suite and it tests both regular tests and doctests. The examples directory was tidied up. More trigonometric simplifications were made. Finding and factoring of polynomial roots were vastly improved. mpmath was updated. Many bugfixes were made.

    • Rrelease-mid
    •  20 Nov 2008 01:07
    • Rrelease-after

      Changes: Ported to Python2.6 (all tests pass) and Jython (all tests pass except those depending on the "ast" module). True division was fixed (all tests pass with the "-Qnew" Python option). buildbot.sympy.org was created; sympy is now regularly tested on Python 2.4, 2.5, and 2.6 on both i386 and amd64. py.bench: py.test-based benchmarking. bin/test: a simple py.test-like testing framework, without external dependencies and with nicely colored output. Most limits now work. Factorization over Z[x] was greatly improved. Piecewise function was added. nsimplify() was implemented. Symbols and var syntax were unified. C code printing.

      • Rrelease-mid
      •  10 Jul 2008 13:10
      • Rrelease-after

        Changes: All documentation wiki pages were moved to docs.sympy.org. mpmath was integrated in SymPy, and the numerics module was removed. mpmath can use gmpy optionally, thus calculating 1000000 digits of pi in 7.5s. Common subexpression elimination was implemented. Roots, RootsOf, and RootSum were implemented. lambdify() now accepts Matrices. Matrices were polished and sped up. The source command was implemented. Polys were made the default polynomials in SymPy. Add, Mul, Pow now accept an "evaluate=False" argument. A lot of bugs were fixed.

        • Rrelease-mid
        •  25 May 2008 06:06
        • Rrelease-after

          Changes: All SymPy functions now support vector arguments, e.g. sin([1, 2, 3]). lambdify can now use numpy, math, or mpmath. The order of lambdify arguments has changed. All SymPy objects can be pickled. The code was simplified, improved, and made more robust. The broken limit_series was removed, so there is just one limit implementation. Limits now use .nseries. .nseries() was improved a lot. Polys was improved. A basic kronecker delta and Levi-Civita implementation was added.

          • Rrelease-mid
          •  27 Apr 2008 05:57
          • Rrelease-after

            No changes have been submitted for this release.

            151654bb108420bae8bac4535699d24a_thumb

            Project Spotlight

            Chesley the Chess Engine!

            A chess engine.

            91f7895d882c9d49544c46c72481db35_thumb

            Project Spotlight

            wixi

            A personal multi-platform wiki application for the desktop.