Access proxy for strictly lower triangular matrices.The StrictlyLowerProxy provides controlled access to the elements of a non-const strictly lower triangular matrix. It guarantees that the strictly lower matrix invariant is not violated, i.e. that elements on the diagonal and in the upper part of the matrix remain 0. The following example illustrates this by means of a
dense strictly lower triangular matrix:
More...
#include <StrictlyLowerProxy.h>
Inherits blaze::Proxy< StrictlyLowerProxy< MT >, MT::ElementType >.
|
typedef AddConst< typename MT::Reference >::Type | ReferenceType |
| Reference type of the underlying matrix type.
|
|
template<typename MT>
class blaze::StrictlyLowerProxy< MT >
Access proxy for strictly lower triangular matrices.
The StrictlyLowerProxy provides controlled access to the elements of a non-const strictly lower triangular matrix. It guarantees that the strictly lower matrix invariant is not violated, i.e. that elements on the diagonal and in the upper part of the matrix remain 0. The following example illustrates this by means of a
dense strictly lower triangular matrix:
A(0,1) = -2;
A(2,1) = 3;
A(2,2) = 5;
A(1,1) = 4;
A(0,2) = 7;
Initialization constructor for an StrictlyLowerProxy.
- Parameters
-
matrix | Reference to the adapted matrix. |
row | The row-index of the accessed matrix element. |
column | The column-index of the accessed matrix element. |
Returning the value of the accessed matrix element.
- Returns
- Direct/raw reference to the accessed matrix element.
Returns whether the proxy represents a restricted matrix element..
- Returns
- true in case access to the matrix element is restricted, false if not.
Conversion to the accessed matrix element.
- Returns
- Reference-to-const to the accessed matrix element.
template<typename MT>
template<typename T >
Multiplication assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value for the multiplication. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal or upper matrix element. |
In case the proxy represents an element on the diagonal or in the upper part of the matrix, a std::invalid_argument exception is thrown.
template<typename MT>
template<typename T >
Addition assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value to be added to the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal or upper matrix element. |
In case the proxy represents an element on the diagonal or in the upper part of the matrix, a std::invalid_argument exception is thrown.
template<typename MT>
template<typename T >
Subtraction assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value to be subtracted from the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal or upper matrix element. |
In case the proxy represents an element on the diagonal or in the upper part of the matrix, a std::invalid_argument exception is thrown.
template<typename MT>
template<typename T >
Division assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value for the division. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal or upper matrix element. |
In case the proxy represents an element on the diagonal or in the upper part of the matrix, a std::invalid_argument exception is thrown.
Copy assignment operator for StrictlyLowerProxy.
- Parameters
-
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal or upper matrix element. |
In case the proxy represents an element on the diagonal or in the upper part of the matrix, a std::invalid_argument exception is thrown.
template<typename MT>
template<typename T >
Assignment to the accessed matrix element.
- Parameters
-
value | The new value of the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal or upper matrix element. |
In case the proxy represents an element on the diagonal or in the upper part of the matrix, a std::invalid_argument exception is thrown.
Access flag for the accessed matrix element.
The flag indicates if access to the matrix element is restricted. It is true in case the proxy represents an element on the diagonal or in the upper part of the matrix.
The documentation for this class was generated from the following file: