Expression object for dense vector-dense vector Kronecker product.The DVecDVecKronExpr class represents the compile time expression for Kronecker products between dense vectors.
More...
#include <DVecDVecKronExpr.h>
Inherits blaze::VecVecKronExpr< DenseVector< DVecDVecKronExpr< VT1, VT2, TF >, TF > >, and blaze::Computation.
|
using | This = DVecDVecKronExpr< VT1, VT2, TF > |
| Type of this DVecDVecKronExpr instance.
|
|
using | BaseType = DenseVector< This, TF > |
| Base type of this DVecDVecKronExpr instance.
|
|
using | ResultType = KronTrait_t< RT1, RT2 > |
| Result type for expression template evaluations.
|
|
using | TransposeType = TransposeType_t< ResultType > |
| Transpose type for expression template evaluations.
|
|
using | ElementType = ElementType_t< ResultType > |
| Resulting element type.
|
|
using | ReturnType = const If_t< returnExpr, ExprReturnType, ElementType > |
| Return type for expression template evaluations.
|
|
using | CompositeType = const ResultType |
| Data type for composite expression templates.
|
|
using | LeftOperand = If_t< IsExpression_v< VT1 >, const VT1, const VT1 & > |
| Composite type of the left-hand side dense vector expression.
|
|
using | RightOperand = If_t< IsExpression_v< VT2 >, const VT2, const VT2 & > |
| Composite type of the right-hand side dense vector expression.
|
|
using | VectorType = VT |
| Type of the vector.
|
|
|
static constexpr bool | simdEnabled = false |
| Compilation switch for the expression template evaluation strategy.
|
|
static constexpr bool | smpAssignable = false |
| Compilation switch for the expression template assignment strategy.
|
|
static constexpr bool | transposeFlag = TF |
| Transpose flag of the vector.
|
|
|
using | RT1 = ResultType_t< VT1 > |
| Result type of the left-hand side dense vector expression.
|
|
using | RT2 = ResultType_t< VT2 > |
| Result type of the right-hand side dense vector expression.
|
|
using | RN1 = ReturnType_t< VT1 > |
| Return type of the left-hand side dense vector expression.
|
|
using | RN2 = ReturnType_t< VT2 > |
| Return type of the right-hand side dense vector expression.
|
|
using | CT1 = CompositeType_t< VT1 > |
| Composite type of the left-hand side dense vector expression.
|
|
using | CT2 = CompositeType_t< VT2 > |
| Composite type of the right-hand side dense vector expression.
|
|
using | ET1 = ElementType_t< VT1 > |
| Element type of the left-hand side dense vector expression.
|
|
using | ET2 = ElementType_t< VT2 > |
| Element type of the right-hand side dense vector expression.
|
|
using | ExprReturnType = decltype(std::declval< RN1 >()+std::declval< RN2 >()) |
| Expression return type for the subscript operator.
|
|
|
LeftOperand | lhs_ |
| Left-hand side dense vector of the Kronecker product expression.
|
|
RightOperand | rhs_ |
| Right-hand side dense vector of the Kronecker product expression.
|
|
template<typename VT1, typename VT2, bool TF>
class blaze::DVecDVecKronExpr< VT1, VT2, TF >
Expression object for dense vector-dense vector Kronecker product.
The DVecDVecKronExpr class represents the compile time expression for Kronecker products between dense vectors.
◆ DVecDVecKronExpr()
template<typename VT1 , typename VT2 , bool TF>
Constructor for the DVecDVecKronExpr class.
- Parameters
-
lhs | The left-hand side operand of the Kronecker product expression. |
rhs | The right-hand side operand of the Kronecker product expression. |
◆ at()
template<typename VT1 , typename VT2 , bool TF>
Checked access to the vector elements.
- Parameters
-
index | Access index. The index has to be in the range . |
- Returns
- The resulting value.
- Exceptions
-
std::out_of_range | Invalid vector access index. |
◆ canAlias()
template<typename VT1 , typename VT2 , bool TF>
template<typename T >
Returns whether the expression can alias with the given address alias.
- Parameters
-
alias | The alias to be checked. |
- Returns
- true in case the expression can alias, false otherwise.
◆ canSMPAssign()
template<typename VT1 , typename VT2 , bool TF>
Returns whether the expression can be used in SMP assignments.
- Returns
- true in case the expression can be used in SMP assignments, false if not.
◆ isAliased()
template<typename VT1 , typename VT2 , bool TF>
template<typename T >
Returns whether the expression is aliased with the given address alias.
- Parameters
-
alias | The alias to be checked. |
- Returns
- true in case an alias effect is detected, false otherwise.
◆ isAligned()
template<typename VT1 , typename VT2 , bool TF>
Returns whether the operands of the expression are properly aligned in memory.
- Returns
- true in case the operands are aligned, false if not.
◆ leftOperand()
template<typename VT1 , typename VT2 , bool TF>
Returns the left-hand side dense vector operand.
- Returns
- The left-hand side dense vector operand.
◆ operator[]()
template<typename VT1 , typename VT2 , bool TF>
Subscript operator for the direct access to the vector elements.
- Parameters
-
index | Access index. The index has to be in the range . |
- Returns
- The resulting value.
◆ operator~() [1/2]
template<typename VT, bool TF>
Conversion operator for non-constant vectors.
- Returns
- Reference of the actual type of the vector.
◆ operator~() [2/2]
template<typename VT, bool TF>
Conversion operator for constant vectors.
- Returns
- Const reference of the actual type of the vector.
◆ rightOperand()
template<typename VT1 , typename VT2 , bool TF>
Returns the right-hand side dense vector operand.
- Returns
- The right-hand side dense vector operand.
◆ size()
template<typename VT1 , typename VT2 , bool TF>
Returns the current size/dimension of the vector.
- Returns
- The size of the vector.
◆ returnExpr
template<typename VT1 , typename VT2 , bool TF>
Compilation switch for the selection of the subscript operator return type.
The returnExpr compile time constant expression is a compilation switch for the selection of the ReturnType. If either vector operand returns a temporary vector or matrix, returnExpr will be set to 0 and the subscript operator will return it's result by value. Otherwise returnExpr will be set to 1 and the subscript operator may return it's result as an expression.
The documentation for this class was generated from the following file: