xc
Public Types | Public Member Functions | Protected Member Functions | List of all members
MatrixByBoxes< TBOX > Class Template Reference

Matrix made of boxes. More...

#include <matrix_by_boxes.h>

Inheritance diagram for MatrixByBoxes< TBOX >:
Inheritance graph
[legend]
Collaboration diagram for MatrixByBoxes< TBOX >:
Collaboration graph
[legend]

Public Types

typedef ZMatrix< TBOX > box_matrix
 
typedef box_matrix::size_type size_type
 
typedef TBOX::value_type value_type
 
typedef box_matrix::iterator iterator
 
typedef box_matrix::const_iterator const_iterator
 
- Public Types inherited from ZMatrix< TBOX >
typedef vectorZ< TBOX > vectorZ_numero
 
typedef TMatrix< TBOX, vectorZ< TBOX > > mT_numero
 
typedef vectorZ_numero::reference reference
 
typedef vectorZ_numero::const_reference const_reference
 
typedef vectorZ_numero::value_type value_type
 
typedef vectorZ_numero::size_type size_type
 
typedef mT_numero::lst_T lst_numero
 
- Public Types inherited from TMatrix< TBOX, vectorZ< TBOX > >
typedef std::list< TBOX > lst_T
 
typedef vectorZ< TBOX > ::iterator iterator
 
typedef vectorZ< TBOX > ::const_iterator const_iterator
 
typedef vectorZ< TBOX > ::value_type value_type
 
typedef vectorZ< TBOX > ::reference reference
 
typedef vectorZ< TBOX > ::const_reference const_reference
 
typedef BoxConstRef< TMatrix< TBOX, vectorZ< TBOX > > > box_const_ref
 
typedef RowConstRef< TMatrix< TBOX, vectorZ< TBOX > > > row_const_ref
 
typedef ColumnConstRef< TMatrix< TBOX, vectorZ< TBOX > > > const_ref_col
 
- Public Types inherited from vectorZ< TBOX >
typedef std::vector< TBOX >::size_type size_type
 
typedef std::list< TBOX > lst_numero
 

Public Member Functions

 MatrixByBoxes (void)
 Constructor.
 
 MatrixByBoxes (size_type n_rows, size_type n_columns)
 Constructor.
 
 MatrixByBoxes (size_type n_rows, size_type n_columns, const TBOX &val)
 Constructor.
 
 MatrixByBoxes (const std::vector< size_t > &)
 Constructor. More...
 
 MatrixByBoxes (const std::vector< size_t > &, const std::vector< size_t > &)
 Constructor. More...
 
 MatrixByBoxes (const MatrixByBoxes &)
 Constructor de copia.
 
MatrixByBoxesoperator= (const MatrixByBoxes &m)
 Assignment operator.
 
size_t getTotalNumberOfRows (void) const
 Return the sum of the rows of boxes.
 
size_t getTotalNumberOfColumns (void) const
 Return the sum of the columns of boxes.
 
void Con (const value_type &d)
 Assigns the argument to all the boxes.
 
MatrixByBoxes< TBOX > & Trn (void)
 Transpose the matrix.
 
MatrixByBoxes< TBOX > GetTrn (void) const
 Return transposed.
 
TBOX QuitaBloques (void)
 Return the matrix that has the same number of boxes that this has blocks. More...
 
MatrixByBoxes< TBOX > & operator*= (const TBOX &m)
 Operador *=.
 
MatrixByBoxes< TBOX > & operator*= (const value_type &d)
 Operador *=.
 
MatrixByBoxes< TBOX > & operator*= (const MatrixByBoxes< TBOX > &m)
 Operador *=.
 
- Public Member Functions inherited from ZMatrix< TBOX >
 ZMatrix (size_type n_rows, size_type n_columns)
 
 ZMatrix (size_type n_rows, size_type n_columns, TBOX val)
 
 ZMatrix (size_type n_rows, size_type n_columns, const lst_numero &ln)
 
 ZMatrix (const ZMatrix< TBOX > &other)
 
 ZMatrix (const size_t &n_rows, const size_t &n_columns, InputIterator b, InputIterator e)
 
ZMatrix< TBOX > & operator= (const ZMatrix< TBOX > &m)
 
ZMatrix< TBOX > & operator= (const TBOX &n)
 
ZMatrix< TBOX > & operator+= (const ZMatrix< TBOX > &m)
 
ZMatrix< TBOX > & operator-= (const ZMatrix< TBOX > &m)
 
ZMatrix< TBOX > & operator*= (const TBOX &n)
 
ZMatrix< TBOX > & operator*= (const ZMatrix< TBOX > &m)
 
TBOX row_maximum (size_type i) const
 
TBOX column_maximum (size_type j) const
 
void PutSuma (size_type i, size_type j, const TBOX &n)
 
void PutResta (size_type i, size_type j, const TBOX &n)
 
void PutProd (size_type i, size_type j, const TBOX &n)
 
void swap (size_type f1, size_type c1, size_type f2, size_type c2)
 
ZMatrix< TBOX > & Trn (void)
 
ZMatrix< TBOX > GetTrn (void) const
 
ZMatrix< TBOX > getBox (size_t f1, size_t c1, size_t f2, size_t c2) const
 Return the box between the indices being passed as parameter.
 
ZMatrix< TBOX > getRow (size_type iRow) const
 
ZMatrix< TBOX > getColumn (size_type col) const
 
ZMatrix< TBOX > GetMenor (size_t f, size_t c) const
 
void Idn (void)
 
void sumBox (size_t f, size_t c, const ZMatrix< TBOX > &box)
 
TBOX GetDetLento (void) const
 Return el determinante. More...
 
TBOX GetDet (const TBOX &eps=1e-10) const
 Return el determinante.
 
TBOX Traza (void) const
 Return the trace of the matrix.
 
bool Nulo (const TBOX &tol=TBOX()) const
 
TBOX getRowNorm (void) const
 Return el valor máximo de los elementos del vector que resulta de sumar los rows elements. More...
 
TBOX getColumnNorm (void) const
 Return the maximum value of the components of the vector obtained by adding the components of the columns. More...
 
void Neg (void)
 
virtual void Input (std::istream &)
 Lectura desde istream.
 
virtual void Input (const std::string &)
 Lectura desde string.
 
TBOX dot (const ZMatrix< TBOX > &v2) const
 
TBOX Abs2 (void) const
 Return the squared norm (euclidean norm) of the matrix.
 
TBOX Abs (void) const
 Return the norm (euclidean norm) of the matrix.
 
- Public Member Functions inherited from TMatrix< TBOX, vectorZ< TBOX > >
 TMatrix (size_t rows=1, size_t n_columns=1)
 Constructor por defecto.
 
 TMatrix (size_t n_rows, size_t n_columns, TBOX val)
 Constructor.
 
 TMatrix (const size_t &n_rows, const size_t &n_columns, InputIterator b, InputIterator e)
 Constructor con lista inicialización.
 
 TMatrix (const TMatrix< TBOX, vectorZ< TBOX > > &)
 Constructor de copia.
 
TMatrix< TBOX, vectorZ< TBOX > > & operator= (const TMatrix< TBOX, vectorZ< TBOX > > &m)
 Assignment operator.
 
TMatrix< TBOX, vectorZ< TBOX > > & operator= (const TBOX &n)
 
virtual bool operator== (const TMatrix< TBOX, vectorZ< TBOX > > &) const
 Comparison operator.
 
void resize (size_t n_rows, size_t n_columns, TBOX val)
 Assignment operator.
 
size_t size (void) const
 
const vectorZ< TBOX > & getVector (void) const
 
const_reference front () const
 
reference front ()
 
const_reference back () const
 
reference back ()
 
const_iterator begin () const
 
iterator begin ()
 
const_iterator end () const
 
iterator end ()
 
TMatrix< TBOX, vectorZ< TBOX > > & Con (const TBOX &t)
 
virtual reference operator() (size_t iRow=1, size_t col=1)
 
virtual const_reference operator() (size_t iRow=1, size_t col=1) const
 
virtual reference at (size_t iRow=1, size_t col=1)
 
virtual const_reference at (size_t iRow=1, size_t col=1) const
 
void assign (size_t row, size_t col, const TBOX &value)
 Put the box int the position (f,c) of this matrix.
 
void swap (size_t f1, size_t c1, size_t f2, size_t c2)
 
TMatrix< TBOX, vectorZ< TBOX > > & Trn (void)
 
TMatrix< TBOX, vectorZ< TBOX > > GetTrn (void) const
 
TMatrix< TBOX, vectorZ< TBOX > > getBox (size_t f1, size_t c1, size_t f2, size_t c2) const
 
box_const_ref GetBoxConstRef (size_t f1, size_t c1, size_t f2, size_t c2) const
 
box_const_ref GetBoxConstRef (const RangoIndice &row_range, const RangoIndice &column_range) const
 
box_const_ref GetBoxConstRef (size_t f=1, size_t c=1) const
 
TMatrix< TBOX, vectorZ< TBOX > > getRow (size_t iRow) const
 
row_const_ref getRowConstRef (size_t f, size_t c1, size_t c2) const
 
row_const_ref getRowConstRef (size_t f, const RangoIndice &column_range) const
 
row_const_ref getRowConstRef (size_t f=1, size_t c=1) const
 
const_ref_col getColumnConstRef (size_t c, size_t f1, size_t f2) const
 
const_ref_col getColumnConstRef (const RangoIndice &row_range, size_t c) const
 
const_ref_col getColumnConstRef (size_t c=1, size_t f=1) const
 
TMatrix< TBOX, vectorZ< TBOX > > getColumn (size_t col) const
 
TMatrix< TBOX, vectorZ< TBOX > > GetMenor (size_t f, size_t c) const
 Return the minor of the matrix that corresponds to the row and the column arguments. More...
 
void putBox (size_t f, size_t c, const TMatrix< TBOX, vectorZ< TBOX > > &)
 Put the box int the position (f,c) of this matrix.
 
void putRow (size_t iRow, const TMatrix< TBOX, vectorZ< TBOX > > &f)
 
void PutCol (size_t col, const TMatrix< TBOX, vectorZ< TBOX > > &c)
 
void OrlaCol (const TMatrix< TBOX, vectorZ< TBOX > > &c)
 
void decorateRow (const TMatrix< TBOX, vectorZ< TBOX > > &f)
 
void swapRows (size_t f1, size_t f2)
 
void swapColumns (size_t c1, size_t c2)
 
virtual void Print (std::ostream &) const
 
- Public Member Functions inherited from ProtoMatrix
 ProtoMatrix (size_t n_rows=1, size_t n_columns=1)
 
 ProtoMatrix (const ProtoMatrix &other)
 
ProtoMatrixoperator= (const ProtoMatrix &m)
 
virtual bool operator== (const ProtoMatrix &other) const
 
virtual void resize (size_t n_rows, size_t n_columns)
 
virtual size_t Tam (void)
 
size_t getNumberOfRows (void) const
 
size_t getNumberOfColumns (void) const
 
bool CheckIndices (const size_t &f, const size_t &c) const
 
bool interior (const size_t &i, const size_t &j) const
 Return true if the indices correspond to a component.
 
int Cuadrada (void) const
 
bool isRow (void) const
 
bool isColumn (void) const
 
- Public Member Functions inherited from vectorZ< TBOX >
 vectorZ (size_type n, const TBOX &value=TBOX())
 
 vectorZ (const lst_numero &ln)
 
 vectorZ (const vectorZ< TBOX > &otro)
 
 vectorZ (const size_t &sz, const TBOX arr[])
 
 vectorZ (InputIterator b, InputIterator e)
 Constructor con lista inicialización.
 
vectorZ< TBOX > & operator= (const vectorZ< TBOX > &otro)
 
vectorZ< TBOX > & operator+= (const vectorZ< TBOX > &otro)
 
vectorZ< TBOX > & operator-= (const vectorZ< TBOX > &otro)
 
vectorZ< TBOX > & operator*= (const TBOX &n)
 
void Suma (const vectorZ< TBOX > &v)
 
void Suma (const vectorZ< TBOX > &v1, const vectorZ< TBOX > &v2)
 
void Resta (const vectorZ< TBOX > &v)
 
void Resta (const vectorZ< TBOX > &v1, const vectorZ< TBOX > &v2)
 
void Prod (const TBOX &n)
 
void PutSuma (size_type i, const TBOX &n)
 
void PutResta (size_type i, const TBOX &n)
 
void PutProd (size_type i, const TBOX &n)
 
void swap (size_type n1, size_type n2)
 
long Busca (const TBOX &n) const
 
void Neg (void)
 
bool Nulos (const TBOX &tol=TBOX())
 
void Con (size_type n1, size_type n2, const TBOX &n)
 
void Con (size_type n1, const TBOX &n)
 
void Con (const TBOX &n)
 
TBOX Sumatorio (size_type i, size_type j) const
 
TBOX Productorio (size_type i, size_type j) const
 
vectorZ< TBOX > Left (size_t j) const
 
vectorZ< TBOX > Right (size_t j) const
 
vectorZ< TBOX > Mid (size_t i, size_t j) const
 
vectorZ< TBOX > GetMenor (size_t j) const
 
vectorZ< TBOX > Sustituye (size_t j, const vectorZ< TBOX > &v) const
 
unsigned long Distintos (const vectorZ< TBOX > &v) const
 

Protected Member Functions

size_t get_rows_row (const size_t &f) const
 Return el number of rows of the iRow-th row matrices.
 
size_t get_columns_column (const size_t f) const
 Return el number of columns de las matrices de the column c.
 
std::vector< size_t > get_dim_rows (void) const
 Return el number of rows of each row.
 
std::vector< size_t > get_dim_columns (void) const
 Return el number of rows of each column.
 
- Protected Member Functions inherited from ZMatrix< TBOX >
TBOX row_sum (size_type i) const
 
TBOX column_sum (size_type j) const
 
- Protected Member Functions inherited from TMatrix< TBOX, vectorZ< TBOX > >
virtual size_t Indice (const size_t &iRow, const size_t &iCol) const
 
bool equal_to (const TMatrix< TBOX, vectorZ< TBOX > > &m2) const
 
 TMatrix (const TMatrix< TBOX, vectorZ< TBOX > > &orig, size_t f1, size_t c1, size_t f2, size_t c2)
 
- Protected Member Functions inherited from ProtoMatrix
void PutDim (size_t nRows, size_t nCols)
 
void inic (size_t n_rows, size_t n_columns)
 
virtual bool check_range (const size_t &iRow, const size_t &col) const
 
void check_put_box (size_t f, size_t c, const ProtoMatrix &box) const
 
void check_get_box (size_t f1, size_t c1, size_t f2, size_t c2) const
 
void check_sto_sum (const ProtoMatrix &m) const
 
void check_sto_dif (const ProtoMatrix &m) const
 
void check_traza (void) const
 

Additional Inherited Members

- Protected Types inherited from vectorZ< TBOX >
typedef std::vector< TBOX > vector_numero
 
typedef vectorZ< TBOX > vectorZ_numero
 
- Protected Attributes inherited from ProtoMatrix
size_t n_rows
 
size_t n_columns
 

Detailed Description

template<class TBOX>
class MatrixByBoxes< TBOX >

Matrix made of boxes.

E is the template class for the boxes.

Constructor & Destructor Documentation

◆ MatrixByBoxes() [1/2]

template<class TBOX >
MatrixByBoxes< TBOX >::MatrixByBoxes ( const std::vector< size_t > &  dim)

Constructor.

Parameters
dimDimensiones de rows and columns (square matrix).

◆ MatrixByBoxes() [2/2]

template<class TBOX >
MatrixByBoxes< TBOX >::MatrixByBoxes ( const std::vector< size_t > &  dim_rows,
const std::vector< size_t > &  dim_columns 
)

Constructor.

Parameters
dim_rowsrow dimension.
dim_columnscolumn dimension.

Member Function Documentation

◆ QuitaBloques()

template<class TBOX >
TBOX MatrixByBoxes< TBOX >::QuitaBloques ( void  )

Return the matrix that has the same number of boxes that this has blocks.

We suppose that the number of rows of the blocks of a row is the same and that the number of columns of the blocks are also the same.


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