1
by josef
use np.power in rdist (test commit with bzr) |
1 |
================================================= |
2 |
Developing SciPy |
|
3 |
================================================= |
|
4 |
||
5 |
.. Contents:: |
|
6 |
||
7 |
||
8 |
What is SciPy? |
|
9 |
-------------- |
|
10 |
||
11 |
SciPy (pronounced "Sigh Pie") is open-source software for mathematics, |
|
12 |
science, and engineering. It includes modules for statistics, optimization, |
|
13 |
integration, linear algebra, Fourier transforms, signal and image processing, |
|
14 |
ODE solvers, and more. It is also the name of a very popular conference on |
|
15 |
scientific programming with Python. |
|
16 |
||
17 |
The SciPy library depends on NumPy, which provides convenient and fast |
|
18 |
N-dimensional array manipulation. The SciPy library is built to work with |
|
19 |
NumPy arrays, and provides many user-friendly and efficient numerical routines |
|
20 |
such as routines for numerical integration and optimization. Together, they |
|
21 |
run on all popular operating systems, are quick to install, and are free of |
|
22 |
charge. NumPy and SciPy are easy to use, but powerful enough to be depended |
|
23 |
upon by some of the world's leading scientists and engineers. If you need to |
|
24 |
manipulate numbers on a computer and display or publish the results, give |
|
25 |
SciPy a try! |
|
26 |
||
27 |
||
28 |
SciPy structure |
|
29 |
--------------- |
|
30 |
||
31 |
SciPy aims at being a robust and efficient "super-package" of a number |
|
32 |
of modules, each of a non-trivial size and complexity. In order for |
|
33 |
"SciPy integration" to work flawlessly, all SciPy modules must follow |
|
34 |
certain rules that are described in this document. Hopefully this |
|
35 |
document will be helpful for SciPy contributors and developers as a |
|
36 |
basic reference about the structure of the SciPy package. |
|
37 |
||
38 |
Currently SciPy consists of the following files and directories: |
|
39 |
||
40 |
INSTALL.txt |
|
41 |
SciPy prerequisites, installation, testing, and troubleshooting. |
|
42 |
||
43 |
THANKS.txt |
|
44 |
SciPy developers and contributors. Please keep it up to date!! |
|
45 |
||
46 |
README.txt |
|
47 |
SciPy structure (this document). |
|
48 |
||
49 |
setup.py |
|
50 |
Script for building and installing SciPy. |
|
51 |
||
52 |
MANIFEST.in |
|
53 |
Additions to distutils-generated SciPy tar-balls. Its usage is |
|
54 |
deprecated. |
|
55 |
||
56 |
scipy/ |
|
57 |
Contains SciPy __init__.py and the directories of SciPy modules. |
|
58 |
||
59 |
SciPy modules |
|
60 |
+++++++++++++ |
|
61 |
||
62 |
In the following, a *SciPy module* is defined as a Python package, say |
|
63 |
xxx, that is located in the scipy/ directory. All SciPy modules should |
|
64 |
follow the following conventions: |
|
65 |
||
66 |
* Ideally, each SciPy module should be as self-contained as possible. |
|
67 |
That is, it should have minimal dependencies on other packages or |
|
68 |
modules. Even dependencies on other SciPy modules should be kept to a |
|
69 |
minimum. A dependency on NumPy is of course assumed. |
|
70 |
||
71 |
* Directory ``xxx/`` must contain |
|
72 |
||
73 |
+ a file ``setup.py`` that defines |
|
74 |
``configuration(parent_package='',top_path=None)`` function. |
|
75 |
See below for more details. |
|
76 |
||
77 |
+ a file ``info.py``. See below more details. |
|
78 |
||
79 |
* Directory ``xxx/`` may contain |
|
80 |
||
81 |
+ a directory ``tests/`` that contains files ``test_<name>.py`` |
|
82 |
corresponding to modules ``xxx/<name>{.py,.so,/}``. See below for |
|
83 |
more details. |
|
84 |
||
85 |
+ a file ``MANIFEST.in`` that may contain only ``include setup.py`` line. |
|
86 |
DO NOT specify sources in MANIFEST.in, you must specify all sources |
|
87 |
in setup.py file. Otherwise released SciPy tarballs will miss these sources. |
|
88 |
||
89 |
+ a directory ``docs/`` for documentation. |
|
90 |
||
91 |
For details, read: |
|
92 |
||
93 |
http://projects.scipy.org/numpy/wiki/DistutilsDoc |
|
94 |
||
95 |
||
96 |
Documentation |
|
97 |
------------- |
|
98 |
||
99 |
The documentation site is here |
|
100 |
http://docs.scipy.org |
|
101 |
||
102 |
Web sites |
|
103 |
--------- |
|
104 |
||
105 |
The user's site is here |
|
106 |
http://www.scipy.org/ |
|
107 |
||
108 |
The developer's site is here |
|
109 |
http://projects.scipy.org/scipy/wiki |
|
110 |
||
111 |
||
112 |
Mailing Lists |
|
113 |
------------- |
|
114 |
||
115 |
Please see the developer's list here |
|
116 |
http://projects.scipy.org/mailman/listinfo/scipy-dev |
|
117 |
||
118 |
||
119 |
Bug reports |
|
120 |
----------- |
|
121 |
||
122 |
To search for bugs, please use the NIPY Bug Tracker at |
|
123 |
http://projects.scipy.org/scipy/query |
|
124 |
||
125 |
To report a bug, please use the NIPY Bug Tracker at |
|
126 |
http://projects.scipy.org/scipy/newticket |
|
127 |
||
128 |
||
129 |
License information |
|
130 |
------------------- |
|
131 |
||
132 |
See the file "LICENSE" for information on the history of this |
|
133 |
software, terms & conditions for usage, and a DISCLAIMER OF ALL |
|
134 |
WARRANTIES. |
|
135 |