# NumPy - N-dimensional Array manipulations

The fundamental library needed for scientific computing with Python is called NumPy. This Open Source library contains:

- a powerful N-dimensional array object
- advanced array slicing methods (to select array elements)
- convenient array reshaping methods

and it even contains 3 libraries with numerical routines:

- basic linear algebra functions
- basic Fourier transforms
- sophisticated random number capabilities

NumPy can be extended with C-code for functions where performance is highly time critical. In addition, tools are provided for integrating existing Fortran code. NumPy is a hybrid of the older *NumArray* and *Numeric* packages, and is meant to replace them both. More background information about the relation between these different multi-dimensional array packages can be found in History_of_SciPy.

For more information, see the NumPy page.

# SciPy - Scientific tools for Python

SciPy is an Open Source library of scientific tools for Python. It depends on the NumPy library, and it gathers a variety of high level science and engineering modules together as a single package. SciPy provides modules for

- statistics
- optimization
- numerical integration
- linear algebra
- Fourier transforms
- signal processing
- image processing
- ODE solvers
- special functions

and more.

SciPy is developed concurrently on both Linux and Windows. It should also compile and run successfully on Mac, Solaris, FreeBSD, and most other platforms where Python is available.

SciPy is a community project sponsored and supported by Enthought, inc.