MyraMath
Public Member Functions | List of all members
myra::LowerMatrixRange< Number > Class Template Reference

Represents a mutable LowerMatrixRange. More...

#include <LowerMatrixRange.h>

Collaboration diagram for myra::LowerMatrixRange< Number >:
[legend]

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 ----------------—
 

Detailed Description

template<class Number>
class myra::LowerMatrixRange< Number >

Represents a mutable LowerMatrixRange.


The documentation for this class was generated from the following files: