3#ifndef pRC_TENSOR_TRAIN_OPERATOR_UNIT_H
4#define pRC_TENSOR_TRAIN_OPERATOR_UNIT_H
13 template<TensorTrain::IsOperator T>
18 auto const f = []<
Index C>()
20 using Core =
typename T::template Cores<C>;
21 constexpr auto CRL = Core::size(0);
22 constexpr auto CM = Core::size(1);
23 constexpr auto CN = Core::size(2);
24 constexpr auto CRR = Core::size(3);
27 unit<
typename Core::template ChangeSizes<1, CM, CN, 1>>(),
28 zero<
typename Core::template ChangeSizes<CRL - 1, CM, CN,
33 using M =
typename T::M;
34 using N =
typename T::N;
35 using Ranks =
typename T::Ranks;
48 using Core =
typename T::template Cores<C>;
49 constexpr auto CRL = Core::size(0);
50 constexpr auto CM = Core::size(1);
51 constexpr auto CN = Core::size(2);
52 constexpr auto CRR = Core::size(3);
57 unit<
typename Core::template ChangeSizes<1, CM, CN, 1>>(
59 zero<
typename Core::template ChangeSizes<CRL - 1, CM,
65 unit<
typename Core::template ChangeSizes<1, CM, CN,
67 zero<
typename Core::template ChangeSizes<CRL - 1, CM,
73 using M =
typename T::M;
74 using N =
typename T::N;
75 using Ranks =
typename T::Ranks;
82 template<TensorTrain::IsOperatorView T>
83 struct Unit<
T> : Unit<ResultOf<Eval, T>>
Definition enumerate.hpp:20
Definition concepts.hpp:37
int value
Definition gmock-actions_test.cc:1714
Definition cholesky.hpp:10
static constexpr auto unit()
Definition unit.hpp:13
Size Index
Definition basics.hpp:32
RemoveConst< RemoveReference< T > > RemoveConstReference
Definition basics.hpp:47
static constexpr auto permute(Sequence< T, Is... > const)
Definition sequence.hpp:487
static constexpr auto exclude(F &&f, Xs &&...args)
Definition exclude.hpp:20
static constexpr auto zero()
Definition zero.hpp:12
constexpr auto operator()() const
Definition unit.hpp:16
constexpr auto operator()(X &&value) const
Definition unit.hpp:43