Tensor
A C++ expression template library for computations on N dimensional tensors
Main Page
Namespaces
Classes
Files
File List
Libraries
C++
tensor
tensor
tensor_expression_interface.hpp
Go to the documentation of this file.
1
// ----------------------------------------------------------------------------------------------------------
2
/// @file Header file for tensor expression interface for tensor library.
3
// ----------------------------------------------------------------------------------------------------------
4
5
/*
6
* ----------------------------------------------------------------------------------------------------------
7
* Tensor is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published
9
* by the Free Software Foundation; either version 2 of the License, or
10
* (at your option) any later version.
11
*
12
* Tensor is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License along
18
* with tensor; if not, write to the Free Software Foundation,
19
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20
* ----------------------------------------------------------------------------------------------------------
21
*/
22
23
#ifndef FTL_TENSOR_EXPRESSION_INTERFACE_HPP
24
#define FTL_TENSOR_EXPRESSION_INTERFACE_HPP
25
26
#include "
tensor_traits.hpp
"
27
28
namespace
ftl
{
29
30
// NOTE : All specializations are defined in their own files as:
31
// - tensor_expressions_<container_type>_<device_type>,hpp
32
//
33
// : where
34
// - container_type = type of container (static_or dynamic)
35
// - device_type = type of device (cpu gpu, any)
36
//
37
// any = not yet implemented for a specific device, or can operate on both
38
39
40
// ----------------------------------------------------------------------------------------------------------
41
/// @class TensorExpression
42
/// @brief Defines a general tensor expression so that opertions on tensor expressions can be defined
43
/// the syntax of the operations to look as they would mathematically.
44
/// @tparam Expression The expression
45
/// @tparam Traits The traits which define the expression, for example specifying that the
46
/// expression uses static containers and GPU implemenations
47
// ----------------------------------------------------------------------------------------------------------
48
template
<
typename
Expression,
typename
Traits>
49
class
TensorExpression
;
50
51
}
// End namespace ftl
52
#endif // FTL_TENSOR_EXPRESSION_INTERFACE_HPP
ftl
Definition:
mapper.hpp:37
ftl::TensorExpression
Defines a general tensor expression so that opertions on tensor expressions can be defined the syntax...
Definition:
tensor_expression_interface.hpp:49
tensor_traits.hpp
Generated on Wed Sep 23 2015 14:44:13 for Tensor by
1.8.9.1