pRC
multi-purpose Tensor Train library for C++
Loading...
Searching...
No Matches
prc
core
functors
kronecker_product.hpp
Go to the documentation of this file.
1
// SPDX-License-Identifier: BSD-2-Clause
2
3
#ifndef pRC_CORE_FUNCTORS_KRONECKER_PRODUCT_H
4
#define pRC_CORE_FUNCTORS_KRONECKER_PRODUCT_H
5
6
#include <
prc/core/basic/type_traits.hpp
>
7
8
namespace
pRC
9
{
10
struct
KroneckerProduct
11
{
12
template
<
class
XA
,
class
XB
,
13
If<True<decltype(kroneckerProduct(declval<XA>
(),
declval<XB>
()))>> =
14
0>
15
constexpr
decltype
(
auto
)
operator
()(
XA
&&a,
XB
&&b)
const
16
{
17
return
kroneckerProduct
(
forward<XA>
(a),
forward<XB>
(b));
18
}
19
};
20
}
21
#endif
// pRC_CORE_FUNCTORS_KRONECKER_PRODUCT_H
type_traits.hpp
pRC
Definition
cholesky.hpp:18
pRC::kroneckerProduct
static constexpr auto kroneckerProduct(XA &&a, XB &&b)
Calculates the Kronecker product of two Tensors.
Definition
kronecker_product.hpp:35
pRC::copy
static constexpr Conditional< IsSatisfied< C >, RemoveConstReference< X >, X > copy(X &&a)
Definition
copy.hpp:13
pRC::KroneckerProduct
Definition
kronecker_product.hpp:11
Generated by
1.9.8