Expression object for transpose dense matrix-sparse matrix multiplications.The TDMatSMatMultExpr class represents the compile time expression for multiplications between a column-major dense matrix and a row-major sparse matrix.
More...
#include <TDMatSMatMultExpr.h>
Inherits blaze::DenseMatrix< TDMatSMatMultExpr< MT1, MT2 >, true >, blaze::MatMatMultExpr, and blaze::Computation.
|
enum | : bool { simdEnabled = false
} |
| Compilation switch for the expression template evaluation strategy.
|
|
enum | : bool { smpAssignable
} |
| Compilation switch for the expression template assignment strategy.
|
|
typedef TDMatSMatMultExpr< MT1, MT2 > | This |
| Type of this TDMatSMatMultExpr instance.
|
|
typedef MultTrait_< RT1, RT2 > | ResultType |
| Result type for expression template evaluations.
|
|
typedef OppositeType_< ResultType > | OppositeType |
| Result type with opposite storage order for expression template evaluations.
|
|
typedef TransposeType_< ResultType > | TransposeType |
| Transpose type for expression template evaluations.
|
|
typedef ElementType_< ResultType > | ElementType |
| Resulting element type.
|
|
typedef const ElementType | ReturnType |
| Return type for expression template evaluations.
|
|
typedef const ResultType | CompositeType |
| Data type for composite expression templates.
|
|
typedef If_< IsExpression< MT1 >, const MT1, const MT1 & > | LeftOperand |
| Composite type of the left-hand side dense matrix expression.
|
|
typedef If_< IsExpression< MT2 >, const MT2, const MT2 & > | RightOperand |
| Composite type of the right-hand side sparse matrix expression.
|
|
typedef IfTrue_< evaluateLeft, const RT1, CT1 > | LT |
| Type for the assignment of the left-hand side dense matrix operand.
|
|
typedef IfTrue_< evaluateRight, const RT2, CT2 > | RT |
| Type for the assignment of the right-hand side sparse matrix operand.
|
|
typedef MT | MatrixType |
| Type of the matrix.
|
|
|
enum | : bool { evaluateLeft = IsComputation<MT1>::value || RequiresEvaluation<MT1>::value
} |
| Compilation switch for the composite type of the left-hand side dense matrix expression.
|
|
enum | : bool { evaluateRight = IsComputation<MT2>::value || RequiresEvaluation<MT2>::value
} |
| Compilation switch for the composite type of the right-hand side sparse matrix expression.
|
|
typedef ResultType_< MT1 > | RT1 |
| Result type of the left-hand side dense matrix expression.
|
|
typedef ResultType_< MT2 > | RT2 |
| Result type of the right-hand side sparse matrix expression.
|
|
typedef ElementType_< RT1 > | ET1 |
| Element type of the left-hand side dense matrix expression.
|
|
typedef ElementType_< RT2 > | ET2 |
| Element type of the right-hand side sparse matrix expression.
|
|
typedef CompositeType_< MT1 > | CT1 |
| Composite type of the left-hand side dense matrix expression.
|
|
typedef CompositeType_< MT2 > | CT2 |
| Composite type of the right-hand side sparse matrix expression.
|
|
|
LeftOperand | lhs_ |
| Left-hand side dense matrix of the multiplication expression.
|
|
RightOperand | rhs_ |
| Right-hand side sparse matrix of the multiplication expression.
|
|
template<typename MT1, typename MT2>
class blaze::TDMatSMatMultExpr< MT1, MT2 >
Expression object for transpose dense matrix-sparse matrix multiplications.
The TDMatSMatMultExpr class represents the compile time expression for multiplications between a column-major dense matrix and a row-major sparse matrix.
template<typename MT1 , typename MT2 >
Constructor for the TDMatSMatMultExpr class.
- Parameters
-
lhs | The left-hand side dense matrix operand of the multiplication expression. |
rhs | The right-hand side sparse matrix operand of the multiplication expression. |
template<typename MT1 , typename MT2 >
Checked access to the matrix elements.
- Parameters
-
i | Access index for the row. The index has to be in the range . |
j | Access index for the column. The index has to be in the range . |
- Returns
- The resulting value.
- Exceptions
-
std::out_of_range | Invalid matrix access index. |
template<typename MT1 , typename MT2 >
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.
template<typename MT1 , typename MT2 >
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.
template<typename MT1 , typename MT2 >
Returns the current number of columns of the matrix.
- Returns
- The number of columns of the matrix.
template<typename MT1 , typename MT2 >
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.
template<typename MT1 , typename MT2 >
Returns whether the operands of the expression are properly aligned in memory.
- Returns
- true in case the operands are aligned, false if not.
template<typename MT1 , typename MT2 >
Returns the left-hand side transpose dense matrix operand.
- Returns
- The left-hand side transpose dense matrix operand.
template<typename MT1 , typename MT2 >
2D-access to the matrix elements.
- Parameters
-
i | Access index for the row. The index has to be in the range . |
j | Access index for the column. The index has to be in the range . |
- Returns
- The resulting value.
template<typename MT, bool SO>
Conversion operator for non-constant matrices.
- Returns
- Reference of the actual type of the matrix.
template<typename MT, bool SO>
Conversion operator for constant matrices.
- Returns
- Constant reference of the actual type of the matrix.
template<typename MT1 , typename MT2 >
Returns the right-hand side sparse matrix operand.
- Returns
- The right-hand side sparse matrix operand.
template<typename MT1 , typename MT2 >
Returns the current number of rows of the matrix.
- Returns
- The number of rows of the matrix.
The documentation for this class was generated from the following files: