MyraMath
|
Represents a mutable LowerMatrixRange. More...
#include <LowerMatrixRange.h>
Public Member Functions | |
LowerMatrixRange () | |
Default constructs a size 0x0 range. | |
LowerMatrixRange (Number *in_begin, int N) | |
Constructs on top of underlying contiguous storage of size N*(N+1)/2. | |
void | write (OutputStream &out) const |
Writes to OutputStream. Layout compatible with LowerMatrix's InputStream constructor. | |
int | size () const |
Size inspector. | |
uint64_t | n_words () const |
Storage requirements. | |
std::pair< int, int > | blocking () const |
Returns [N1,N2], the partition sizes of [A11 0; A21 A22']. | |
CLowerMatrixRange< Number > | add_const () const |
Adds "const" (C) qualifier, explicit conversion to CLowerMatrixRange<Number> | |
operator CLowerMatrixRange< Number > () const | |
Implicit conversion operator to CLowerMatrixRange<Number> | |
MatrixRange< Number > | rectangle () const |
Returns a MatrixRange over all contents of *this, viewed as a rectangle. | |
Number & | operator() (int i, int j) const |
Random accessor. | |
Number & | at (int i, int j) const |
Bounds checked random accessor. | |
template<class Functor > | |
void | transform (const Functor &f) const |
Overwrites every A(i,j) in this LowerMatrixRange with f(A(i,j)). | |
void | operator*= (Number alpha) const |
Scales this *= alpha. | |
void | operator/= (Number alpha) const |
Scales this /= alpha. | |
void | zero () const |
Assigns zero to every entry. | |
Matrix< Number > | make_Matrix (char op='N') const |
Accumulates *this onto the lower triangle of a Matrix<Number> | |
void | make_Matrix (const MatrixRange< Number > &A, char op='N') const |
Accumulates *this onto the lower triangle of a Matrix<Number> | |
MatrixRange< Number > | range11 () const |
Returns MatrixRange's over various subblocks, viewed as rectangles. | |
MatrixRange< Number > | range21 () const |
Returns MatrixRange's over various subblocks, viewed as rectangles. | |
MatrixRange< Number > | range22t () const |
Returns MatrixRange's over various subblocks, viewed as rectangles. | |
void | assign (const CLowerMatrixRange< Number > &that) const |
Assigns this = that. | |
void | assign (const Expression< 2, Number > &that) const |
Assigns this = that. | |
void | assign (const CMatrixRange< Number > &that) const |
Assigns this = that. | |
void | operator+= (const CLowerMatrixRange< Number > &that) const |
Adds this += that. | |
void | operator+= (const Expression< 2, Number > &that) const |
Adds this += that. | |
void | operator-= (const CLowerMatrixRange< Number > &that) const |
Subtracts this -= that. | |
void | operator-= (const Expression< 2, Number > &that) const |
Subtracts this -= that. | |
Public Attributes | |
Number * | begin |
---------— Data members, all public ----------------— | |
int | N1 |
---------— Data members, all public ----------------— | |
int | N2 |
---------— Data members, all public ----------------— | |
int | LD |
---------— Data members, all public ----------------— | |
Represents a mutable LowerMatrixRange.