Representation of a value within a sparse upper unitriangular matrix.The UniUpperValue class represents a single value within a sparse upper unitriangular matrix. It guarantees that the uniupper matrix invariant is not violated, i.e. that elements in the upper part of the matrix remain 0 and the diagonal elements remain 1. The following example illustrates this by means of a
sparse upper unitriangular matrix:
More...
#include <UniUpperValue.h>
Inherits blaze::Proxy< UniUpperValue< MT > >.
template<typename MT>
class blaze::UniUpperValue< MT >
Representation of a value within a sparse upper unitriangular matrix.
The UniUpperValue class represents a single value within a sparse upper unitriangular matrix. It guarantees that the uniupper matrix invariant is not violated, i.e. that elements in the upper part of the matrix remain 0 and the diagonal elements remain 1. The following example illustrates this by means of a
sparse upper unitriangular matrix:
UniUpper A( 3UL );
A(0,1) = -2;
A(0,2) = 3;
A(1,2) = 5;
it->value() = 9;
++it;
it->value() = 4;
Constructor for the UniUpperValue class.
- Parameters
-
value | Reference to the represented value. |
diagonal | true in case the element is on the diagonal, false if not. |
Clearing the uniupper value.
- Returns
- void
This function clears the uniupper value to its default initial state.
Access to the represented value.
- Returns
- Copy of the represented value.
Returns the imaginary part of the represented complex number.
- Returns
- The current imaginary part of the represented complex number.
In case the proxy represents a complex number, this function returns the current value of its imaginary part.
Setting the imaginary part of the represented complex number.
- Parameters
-
value | The new value for the imaginary part. |
- Returns
- void
- Exceptions
-
std::invalid_argument | Invalid setting for diagonal matrix element. |
In case the proxy represents a complex number, this function sets a new value to its imaginary part. In case the proxy represents a diagonal element and the given value is not zero, a std::invalid_argument exception is thrown.
In-place inversion of the uniupper value.
- Returns
- void
Returns whether the value represents a restricted matrix element..
- Returns
- true in case access to the matrix element is restricted, false if not.
Conversion to the represented value.
- Returns
- Copy of the represented value.
template<typename MT>
template<typename T >
Multiplication assignment to the uniupper value.
- Parameters
-
value | The right-hand side value for the multiplication. |
- Returns
- Reference to the assigned uniupper value.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal matrix element. |
template<typename MT>
template<typename T >
Addition assignment to the uniupper value.
- Parameters
-
value | The right-hand side value to be added to the uniupper value. |
- Returns
- Reference to the assigned uniupper value.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal matrix element. |
template<typename MT>
template<typename T >
Subtraction assignment to the uniupper value.
- Parameters
-
value | The right-hand side value to be subtracted from the uniupper value. |
- Returns
- Reference to the assigned uniupper value.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal matrix element. |
template<typename MT>
template<typename T >
Division assignment to the uniupper value.
- Parameters
-
value | The right-hand side value for the division. |
- Returns
- Reference to the assigned uniupper value.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal matrix element. |
Copy assignment operator for UniUpperValue.
- Parameters
-
uuv | The uniupper value to be copied. |
- Returns
- Reference to the assigned uniupper value.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal matrix element. |
template<typename MT>
template<typename T >
Assignment to the uniupper value.
- Parameters
-
value | The new value of the uniupper value. |
- Returns
- Reference to the assigned uniupper value.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal matrix element. |
Returns the real part of the represented complex number.
- Returns
- The current real part of the represented complex number.
In case the proxy represents a complex number, this function returns the current value of its real part.
Setting the real part of the represented complex number.
- Parameters
-
value | The new value for the real part. |
- Returns
- void
- Exceptions
-
std::invalid_argument | Invalid setting for diagonal matrix element. |
In case the proxy represents a complex number, this function sets a new value to its real part.
Reset the uniupper value to its default initial value.
- Returns
- void
This function resets the uniupper value to its default initial value.
The documentation for this class was generated from the following file: