pRC
multi-purpose Tensor Train library for C++
Loading...
Searching...
No Matches
apply.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: BSD-2-Clause
2
3#ifndef pRC_TENSOR_TRAIN_OPERATOR_FUNCTIONS_APPLY_H
4#define pRC_TENSOR_TRAIN_OPERATOR_FUNCTIONS_APPLY_H
5
14
15namespace pRC
16{
22 If<Any<TensorTrain::IsOperatorish<RB>, TensorTrain::IsTensorish<RB>>> =
23 0,
26 XB>> = 0>
27 static inline constexpr auto apply(XA &&a, XB &&b)
28 {
30 }
31
37 If<Any<TensorTrain::IsOperatorish<RB>, TensorTrain::IsTensorish<RB>>> =
38 0,
41 static inline constexpr auto apply(XA &&a, XB &&b)
42 {
43 return eval(apply<OT, OR, OH>(a, b));
44 }
45}
46#endif // pRC_TENSOR_TRAIN_OPERATOR_FUNCTIONS_APPLY_H
Restrict
This enum's elements denote a restriction of an operator.
Definition restrict.hpp:27
Hint
This enum's elements denote a hint regarding an operator.
Definition hint.hpp:30
Transform
This enum's elements denote a transformation done to an operator.
Definition transform.hpp:23
Definition cholesky.hpp:18
static constexpr X eval(X &&a)
Definition eval.hpp:11
static constexpr decltype(auto) apply(JacobiRotation< T > const &r, X &&m, Index const p, Index const q)
Definition jacobi_rotation.hpp:334
static constexpr Conditional< IsSatisfied< C >, RemoveConstReference< X >, X > copy(X &&a)
Definition copy.hpp:13