File: index.rst

package info (click to toggle)
xtensor 0.25.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 6,476 kB
  • sloc: cpp: 65,302; makefile: 202; python: 171; javascript: 8
file content (125 lines) | stat: -rw-r--r-- 2,787 bytes parent folder | download
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