1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
.. Copyright (c) 2016, Johan Mabille, Sylvain Corlay and Wolf Vollprecht
Distributed under the terms of the BSD 3-Clause License.
The full license is in the file LICENSE, distributed with this software.
.. image:: xtensor.svg
:alt: xtensor
Multi-dimensional arrays with broadcasting and lazy computing.
Introduction
------------
*xtensor* is a C++ library meant for numerical analysis with multi-dimensional
array expressions.
*xtensor* provides
- an extensible expression system enabling **lazy broadcasting**.
- an API following the idioms of the **C++ standard library**.
- tools to manipulate array expressions and build upon *xtensor*.
Containers of *xtensor* are inspired by `NumPy`_, the Python array programming
library. **Adaptors** for existing data structures to be plugged into the
expression system can easily be written.
In fact, *xtensor* can be used to **process NumPy data structures in-place**
using Python's `buffer protocol`_. For more details on the NumPy bindings,
check out the xtensor-python_ project. Language bindings for R and Julia are
also available.
*xtensor* requires a modern C++ compiler supporting C++14. The following C++
compilers are supported:
- On Windows platforms, Visual C++ 2015 Update 2, or more recent
- On Unix platforms, gcc 4.9 or a recent version of Clang
Licensing
---------
We use a shared copyright model that enables all contributors to maintain the
copyright on their contributions.
This software is licensed under the BSD-3-Clause license. See the LICENSE file
for details.
.. toctree::
:caption: INSTALLATION
:maxdepth: 1
installation
changelog
.. toctree::
:caption: USAGE
:maxdepth: 2
getting_started
expression
container
scalar
adaptor
operator
view
indices
builder
missing
histogram
random
rank
file_loading
build-options
pitfall
.. toctree::
:caption: QUICK REFERENCE
:maxdepth: 2
quickref/basic
quickref/builder
quickref/operator
quickref/math
quickref/reducer
view
quickref/iterator
quickref/manipulation
quickref/chunked_arrays
.. toctree::
:caption: API REFERENCE
:maxdepth: 2
api/expression_index
api/container_index
api/iterator_index
api/function_index
api/io_index
api/xmath
api/shape
.. toctree::
:caption: DEVELOPER ZONE
:maxdepth: 2
compilers
dev-build-options
developer/xtensor_internals
external-structures
releasing
.. toctree::
:caption: MISCELLANEOUS
numpy
numpy-differences
closure-semantics
related
bindings
.. _NumPy: http://www.numpy.org
.. _Buffer Protocol: https://docs.python.org/3/c-api/buffer.html
.. _libdynd: http://libdynd.org
.. _xtensor-python: https://github.com/xtensor-stack/xtensor-python
|