Added a warning when constructing a Matrix without bracket + test modified
[sympy.git] / README
blob750012c92ca5aacce6e0dec8f6235373efa6f45c
1 SymPy
2 =====
4 A Python library for symbolic mathematics.
6 http://code.google.com/p/sympy/
8 All people who contributed to SymPy by sending at least a patch or more (in
9 the order of the date of their first contribution):
10     Ondrej Certik <ondrej@certik.cz>
11     Fabian Seoane <fabian@fseoane.net>
12     Jurjen N.E. Bos <jnebos@gmail.com>
13     Mateusz Paprocki <mattpap@gmail.com>
14     Marc-Etienne M.Leveille <protonyc@gmail.com>
15     Brian Jorgensen <brian.jorgensen@gmail.com>
16     Jason Gedge <inferno1386@gmail.com>
17     Robert Schwarz <lethargo@googlemail.com>
18     Pearu Peterson <pearu.peterson@gmail.com>
19     Fredrik Johansson <fredrik.johansson@gmail.com>
20     Chris Wu <chris.wu@gmail.com>
21     Kirill Smelkov <kirr@landau.phys.spbu.ru>
22     Ulrich Hecht <ulrich.hecht@gmail.com>
23     Goutham Lakshminarayan <dl.goutham@gmail.com>
24     David Lawrence <dmlawrence@gmail.com>
25     Jaroslaw Tworek <dev.jrx@gmail.com>
26     David Marek <h4wk.cz@gmail.com>
27     Bernhard R. Link <brlink@debian.org>
28     Andrej Tokarčík <androsis@gmail.com>
29     Or Dvory <gidesa@gmail.com>
30     Saroj Adhikari <adh.saroj@gmail.com>
31     Pauli Virtanen <pav@iki.fi>
32     Robert Kern <robert.kern@gmail.com>
33     James Aspnes <aspnes@cs.yale.edu>
34     Nimish Telang <ntelang@gmail.com>
35     Abderrahim Kitouni <a.kitouni@gmail.com>
36     Pan Peng <pengpanster@gmail.com>
37     Friedrich Hagedorn <friedrich_h@gmx.de>
38     Elrond der Elbenfuerst <elrond+sympy.org@samba-tng.org>
39     Rizgar Mella <rizgar.mella@gmail.com>
40     Felix Kaiser <whatfxkr@gmail.com>
41     Roberto Nobrega <rwnobrega@gmail.com>
42     David Roberts <dvdr18@gmail.com>
43     Sebastian Krämer <basti.kr@gmail.com>
44     Vinzent Steinberg <vinzent.steinberg@gmail.com>
45     Riccardo Gori <goriccardo@gmail.com>
46     Case Van Horsen <casevh@gmail.com>
47     Stepan Roucka <stepan@roucka.eu>
48     Ali Raza Syed <arsyed@gmail.com>
49     Stefano Maggiolo <s.maggiolo@gmail.com>
50     Robert Cimrman <cimrman3@ntc.zcu.cz>
51     Bastian Weber <bastian.weber@gmx-topmail.de>
52     Sebastian Krause <sebastian.krause@gmx.de>
53     Sebastian Kreft <skreft@gmail.com>
54     Dan (coolg49964)
55     Alan Bromborsky <abrombo@verizon.net>
57 And many more people helped on the SymPy mailinglist, reported bugs, helped
58 organize SymPy's participation in the Google Summer of Code, the Google Highly
59 Open Participation Contest, wrote and blogged about SymPy...
61 License: New BSD License (see the LICENSE file for details)
62 covers all files in the sympy repository unless stated otherwise.
64 0. Download
65 -----------
67 $ hg clone http://hg.sympy.org/sympy/
69 For other options (tarballs, debs, etc.), see the web page of SymPy.
72 1. Documentation and usage
73 --------------------------
75 Everything is at:
77 http://docs.sympy.org/
79 You can generate everything at the above site in your local copy of SymPy by:
81 $ cd doc
82 $ make html
83 $ epiphany _build/html/index.html
85 If you don't want to read that, here is a short usage:
87 From this directory, start python and:
88 >>> from sympy import Symbol, cos
89 >>> x = Symbol('x')
90 >>> e = 1/cos(x)
91 >>> print e.series(x, 0, 10)
92 1 + (1/2)*x**2 + (5/24)*x**4 + (61/720)*x**6 + (277/8064)*x**8 + O(x**10)
94 SymPy also comes with a console that is a simple wrapper around the
95 classic python console (or ipython when available) that loads the
96 sympy namespace and executes some common commands for you.
98 To start it, issue:
100 $ bin/isympy
102 from this directory if SymPy is not installed or simply
104 $ isympy
106 if SymPy is installed somewhere in your PATH.
109 3. Tests
110 --------
112 to execute tests, run
114 ./setup.py test
116 in the current directory.  You need to have py.test installed.
119 4. How to install py.test
120 -------------------------
122 If you use Debian, just install the python-codespeak-lib. Otherwise:
124 Execute in your home directory:
126 svn co http://codespeak.net/svn/py/dist py-dist
128 This will create a "py-dist" directory in you home dir. Add this line to
129 your .bashrc:
131 eval `python ~/py-dist/py/env.py`
133 Now you can call "py.test" from anywhere.
135 5. Clean
136 --------
138 To clean everything (thus getting the same tree as in the svn):
140 ./setup.py clean
143 6. Brief History
144 ----------------
146 SymPy was started by Ondrej Certik in 2005, he wrote some code during the
147 summer, then he wrote some more code during the summer 2006. In February 2007,
148 Fabian Seoane joined the project and helped fixed many things, contributed
149 documentation and made it alive again. 5 students (Mateusz Paprocki, Brian
150 Jorgensen, Jason Gedge, Robert Schwarz and Chris Wu) improved SymPy incredibly
151 during the summer 2007 as part of the Google Summer of Code. Pearu Peterson
152 joined the development during the summer 2007 and he has made SymPy much more
153 competitive by rewriting the core from scratch, that has made it from 10x to
154 100x faster. Jurjen N.E. Bos has contributed pretty printing and other patches.
155 Fredrik Johansson has wrote mpmath and contributed a lot of patches. Kirill
156 Smelkov has joined the development in autumn 2007 and has improved the overall
157 quality of SymPy a lot and is currently one of the most active developers.
160 7. Citation
161 -----------
163 To cite SymPy in publications use::
165   SymPy Development Team (2008). SymPy: Python library for symbolic mathematics
166   URL http://www.sympy.org.
168 A BibTeX entry for LaTeX users is::
170   @Manual{,
171     title = {SymPy: Python library for symbolic mathematics},
172     author = {{SymPy Development Team}},
173     year = {2008},
174     url = {http://www.sympy.org},
175   }
177 SymPy is BSD licensed, so you are free to use it whatever you like, be it
178 academic, commercial, creating forks or derivatives, as long as you copy the BSD
179 statement if you redistribute it (see the LICENSE file for details).
180 That said, although not required by the SymPy license, if it is convenient for
181 you, please cite SymPy when using it in your work and also consider
182 contributing all your changes back, so that we can incorporate it and all of us
183 will benefit in the end.