28 #include <queso/Environment.h>
29 #include <queso/Vector.h>
95 virtual unsigned int numCols ()
const = 0;
100 virtual int chol () = 0;
107 virtual void zeroLower (
bool includeDiagonal =
false) = 0;
111 virtual void zeroUpper (
bool includeDiagonal =
false) = 0;
116 virtual void print (std::ostream& os)
const = 0;
139 #ifdef QUESO_CLASSES_INSTANTIATE_NEW_MAPS
160 #endif // UQ_MATRIX_H
virtual unsigned int numRowsGlobal() const =0
Returns the number of rows global of the matrix.
A class for partitioning vectors and matrices.
const BaseEnvironment & env() const
Matrix & operator*=(double a)
Operator for multiplication of the matrix by a scalar.
virtual unsigned int numCols() const =0
Returns the number of columns local of the matrix.
Matrix & operator-=(const Matrix &rhs)
Operator for subtraction (element-wise) of two matrices.
virtual void print(std::ostream &os) const =0
Print this matrix.
Matrix()
Default constructor.
virtual void copy(const Matrix &src)
Copies matrix src to this matrix.
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
Class for matrix operations (virtual).
virtual void zeroUpper(bool includeDiagonal=false)=0
Sets to zero all the elements above (including or not) the diagonal of the matrix.
virtual unsigned int numRowsLocal() const =0
Returns the number of rows local of the matrix.
bool m_inDebugMode
Flag for either or not QUESO is in debug mode.
Matrix & operator=(const Matrix &rhs)
Operator for copying a matrix.
virtual int chol()=0
Performs Cholesky factorization of the matrix.
virtual ~Matrix()
Virtual Destructor.
virtual void zeroLower(bool includeDiagonal=false)=0
Sets to zero all the elements bellow (including or not) the diagonal of the matrix.
const Map & m_map
Mapping variable.
bool getInDebugMode() const
Checks if QUESO will run through this class in debug mode.
bool m_printHorizontally
Flag for either or not print this matrix.
const BaseEnvironment & m_env
QUESO environment variable.
bool getPrintHorizontally() const
Checks if matrix will be is printed horizontally.
Matrix & operator+=(const Matrix &rhs)
Operator for addition (element-wise) of two matrices.
void setInDebugMode(bool value) const
Determines whether QUESO will run through this class in debug mode.
unsigned int numOfProcsForStorage() const
void setPrintHorizontally(bool value) const
Determines whether the matrix should be printed horizontally.