Access proxy for Hermitian matrices.The HermitianProxy provides controlled access to the elements of a non-const Hermitian matrix. It guarantees that a modification of element
of the accessed matrix is also applied to element
. The following example illustrates this by means of a
dense Hermitian matrix:
More...
#include <HermitianProxy.h>
Inherits blaze::Proxy< HermitianProxy< MT > >.
template<typename MT>
class blaze::HermitianProxy< MT >
Access proxy for Hermitian matrices.
The HermitianProxy provides controlled access to the elements of a non-const Hermitian matrix. It guarantees that a modification of element
of the accessed matrix is also applied to element
. The following example illustrates this by means of a
dense Hermitian matrix:
A(0,2) = -2;
A(1,1) = 3;
A(1,2) = 5;
Initialization constructor for a HermitianProxy.
- 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. |
The copy constructor for HermitianProxy.
- Parameters
-
hp | Numeric proxy to be copied. |
Clearing the represented element.
- Returns
- void
This function clears the element represented by the proxy to its default initial state.
Returning the value of the accessed matrix element.
- Returns
- Direct/raw reference to the accessed matrix element.
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 represented element.
- Returns
- void
Conversion to the accessed matrix element.
- Returns
- Direct/raw reference 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 matrix element. |
In case the proxy represents a diagonal element and the assigned value does not represent a real number, 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 matrix element. |
In case the proxy represents a diagonal element and the assigned value does not represent a real number, 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 matrix element. |
In case the proxy represents a diagonal element and the assigned value does not represent a real number, a std::invalid_argument exception is thrown.
Direct access to the represented matrix element.
- Returns
- Pointer to the represented matrix element.
Direct access to the represented matrix element.
- Returns
- Pointer to the represented matrix element.
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 matrix element. |
In case the proxy represents a diagonal element and the assigned value does not represent a real number, a std::invalid_argument exception is thrown.
Copy assignment operator for HermitianProxy.
- Parameters
-
hp | Numeric proxy to be copied. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to diagonal matrix element. |
In case the proxy represents a diagonal element and the assigned value does not represent a real number, 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 matrix element. |
In case the proxy represents a diagonal element and the assigned value does not represent a real number, a std::invalid_argument exception is thrown.
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
In case the proxy represents a complex number, this function sets a new value to its real part.
Reset the represented element to its default initial value.
- Returns
- void
This function resets the element represented by the proxy to its default initial value.
Flag for the accessed matrix element.
The flag indicates if the accessed element is a diagonal element. It is true in case the proxy represents an element on the diagonal.
The documentation for this class was generated from the following file: