3#ifndef pRC_TENSOR_TRAIN_TENSOR_TENSOR_H
4#define pRC_TENSOR_TRAIN_TENSOR_TENSOR_H
19 template<
class T,
class N,
class Ranks,
class F>
51 using Value =
typename T::Value;
52 template<
class V, If<IsValue<V>> = 0>
61 using Width =
typename T::Width;
70 template<
class E =
typename N::IsLinearizable, If<E> = 0>
71 static constexpr auto n()
81 template<
class E =
typename Sizes::IsLinearizable, If<E> = 0>
82 static constexpr auto size()
99 template<
class X, If<IsConstructible<T, X>> = 0>
100 static inline constexpr auto Single(
X &&value,
142 constexpr decltype(
auto)
core() &&
148 constexpr decltype(
auto)
core()
const &&
154 constexpr decltype(
auto)
core() &
160 constexpr decltype(
auto)
core()
const &
177 template<
class X, If<IsInvocable<Add, Tensor &, X>> = 0>
183 template<
class X, If<IsInvocable<Sub, Tensor &, X>> = 0>
189 template<
class X, If<IsInvocable<Mul, X, Tensor &>> = 0>
196 template<
class X, If<IsInvocable<Mul, Tensor &, X>> = 0>
203 template<
class X, If<IsInvocable<Mul, Tensor &, X>> = 0>
210 template<
class X, If<IsInvocable<Div, Tensor &, X>> = 0>
241 template<
class T,
Size...
Ns,
class R>
Definition sequence.hpp:56
static constexpr auto size()
Definition sequence.hpp:88
Constant< Size, sizeof...(Ns)> Dimension
Definition sequence.hpp:74
Constant< Bool, linearizable()> IsLinearizable
Definition sequence.hpp:75
Definition sequence.hpp:34
Definition subscripts.hpp:20
Definition enumerate.hpp:19
Definition type_traits.hpp:37
typename N::Dimension Dimension
Definition tensor.hpp:36
static constexpr auto size(Index const dimension)
Definition tensor.hpp:87
static constexpr auto n(Index const dimension)
Definition tensor.hpp:76
constexpr auto & operator*=(X &&rhs) &
Definition tensor.hpp:204
typename T::IsComplexified IsComplexified
Definition tensor.hpp:66
constexpr auto & operator/=(X &&rhs) &
Definition tensor.hpp:211
typename T::Value Value
Definition tensor.hpp:51
constexpr auto & operator-=(X &&rhs) &
Definition tensor.hpp:184
typename T::Signed Signed
Definition tensor.hpp:56
constexpr decltype(auto) core() const &&
Definition tensor.hpp:148
static constexpr auto Single(X &&value, Is const ... indices)
Definition tensor.hpp:94
constexpr auto & operator+=(X &&rhs) &
Definition tensor.hpp:178
constexpr Tensor & operator=(Tensor &&) &=default
constexpr decltype(auto) core() const &
Definition tensor.hpp:160
typename T::Width Width
Definition tensor.hpp:61
constexpr decltype(auto) core() &&
Definition tensor.hpp:142
constexpr Tensor(Tensor &&)=default
constexpr decltype(auto) core() &
Definition tensor.hpp:154
constexpr Tensor(X &&other)
Definition tensor.hpp:128
T Type
Definition tensor.hpp:47
constexpr auto & applyOnTheLeft(X &&lhs) &
Definition tensor.hpp:190
constexpr Tensor(Tensor const &)=default
constexpr Tensor()=default
constexpr Tensor & operator=(Tensor const &) &=default
static constexpr auto Single(X &&value, Subscripts const &subscripts)
Definition tensor.hpp:100
constexpr decltype(auto) operator()(Is const ... indices) const
Definition tensor.hpp:167
constexpr auto & operator=(X &&rhs) &
Definition tensor.hpp:135
constexpr auto & applyOnTheRight(X &&rhs) &
Definition tensor.hpp:197
static constexpr auto size()
Definition tensor.hpp:82
static constexpr auto n()
Definition tensor.hpp:71
Definition type_traits.hpp:17
Class storing tensors.
Definition tensor.hpp:44
static constexpr auto size()
Returns the number of entries of the Tensor class.
Definition tensor.hpp:84
Definition from_cores.hpp:11
Definition cholesky.hpp:18
std::conjunction< Bs... > All
Definition type_traits.hpp:77
static constexpr X view(X &&a)
Returns a TensorView obtained from a TensorView.
Definition view.hpp:22
std::enable_if_t< B{}, int > If
Definition type_traits.hpp:68
std::size_t Size
Definition type_traits.hpp:20
static constexpr auto makeSeries()
Definition sequence.hpp:361
Constant< Bool, B > IsSatisfied
Definition type_traits.hpp:71
static constexpr Conditional< IsSatisfied< C >, RemoveConstReference< X >, X > copy(X &&a)
Definition copy.hpp:13
std::disjunction< Bs... > Any
Definition type_traits.hpp:80
RemoveConst< RemoveReference< T > > RemoveConstReference
Definition type_traits.hpp:62
Size Index
Definition type_traits.hpp:21
Definition type_traits.hpp:15