Public Member Functions | Protected Attributes
DenseMatrix Class Reference

Interfaces matrix-vector operations tailored to general dense matrices. More...

#include <Matrices.hpp>

Inheritance diagram for DenseMatrix:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual returnValue addToDiag (real_t alpha)
 DenseMatrix ()
 DenseMatrix (int m, int n, int lD, real_t *v)
virtual real_t diag (int i) const
virtual Matrixduplicate () const
virtual void free ()
virtual returnValue getCol (int cNum, const Indexlist *const irows, real_t alpha, real_t *col) const
virtual returnValue getRow (int rNum, const Indexlist *const icols, real_t alpha, real_t *row) const
virtual BooleanType isDiag () const
virtual returnValue print () const
returnValue times (int xN, real_t alpha, const real_t *x, int xLD, real_t beta, real_t *y, int yLD) const
virtual returnValue times (const Indexlist *const irows, const Indexlist *const icols, int xN, real_t alpha, const real_t *x, int xLD, real_t beta, real_t *y, int yLD, BooleanType yCompr=BT_TRUE) const
returnValue transTimes (int xN, real_t alpha, const real_t *x, int xLD, real_t beta, real_t *y, int yLD) const
virtual returnValue transTimes (const Indexlist *const irows, const Indexlist *const icols, int xN, real_t alpha, const real_t *x, int xLD, real_t beta, real_t *y, int yLD) const
virtual ~DenseMatrix ()

Protected Attributes

int leaDim
int nCols
int nRows
real_tval

Detailed Description

Interfaces matrix-vector operations tailored to general dense matrices.

Dense matrix class (row major format).

Author:
Andreas Potschka, Christian Kirches, Hans Joachim Ferreau
Version:
3.0beta
Date:
2011

Definition at line 273 of file Matrices.hpp.


Constructor & Destructor Documentation

Default constructor.

Definition at line 277 of file Matrices.hpp.

DenseMatrix::DenseMatrix ( int  m,
int  n,
int  lD,
real_t v 
) [inline]

Constructor from vector of values. Caution: Data pointer must be valid throughout lifetime

Parameters:
mNumber of rows.
nNumber of columns.
lDLeading dimension.
vValues.

Definition at line 282 of file Matrices.hpp.

Destructor.

Definition at line 51 of file Matrices.cpp.


Member Function Documentation

Adds given offset to diagonal of matrix.

Returns:
SUCCESSFUL_RETURN
RET_NO_DIAGONAL_AVAILABLE
Parameters:
alphaDiagonal offset.

Implements Matrix.

Definition at line 406 of file Matrices.cpp.

real_t DenseMatrix::diag ( int  i) const [virtual]

Returns i-th diagonal entry.

Returns:
i-th diagonal entry
Parameters:
iIndex.

Implements Matrix.

Definition at line 83 of file Matrices.cpp.

Matrix * DenseMatrix::duplicate ( ) const [virtual]

Returns a deep-copy of the Matrix object.

Returns:
Deep-copy of Matrix object

Implements Matrix.

Reimplemented in SymDenseMat.

Definition at line 64 of file Matrices.cpp.

void DenseMatrix::free ( ) [virtual]

Frees all internal memory.

Implements Matrix.

Definition at line 57 of file Matrices.cpp.

returnValue DenseMatrix::getCol ( int  cNum,
const Indexlist *const  irows,
real_t  alpha,
real_t col 
) const [virtual]

Retrieve indexed entries of matrix column multiplied by alpha.

Returns:
SUCCESSFUL_RETURN
Parameters:
cNumColumn number.
irowsIndex list specifying rows.
alphaScalar factor.
colOutput column vector.

Implements Matrix.

Definition at line 134 of file Matrices.cpp.

returnValue DenseMatrix::getRow ( int  rNum,
const Indexlist *const  icols,
real_t  alpha,
real_t row 
) const [virtual]

Retrieve indexed entries of matrix row multiplied by alpha.

Returns:
SUCCESSFUL_RETURN
Parameters:
rNumRow number.
icolsIndex list specifying columns.
alphaScalar factor.
rowOutput row vector.

Implements Matrix.

Definition at line 104 of file Matrices.cpp.

BooleanType DenseMatrix::isDiag ( ) const [virtual]

Checks whether matrix is square and diagonal.

Returns:
BT_TRUE iff matrix is square and diagonal;
BT_FALSE otherwise.

Implements Matrix.

Definition at line 89 of file Matrices.cpp.

returnValue DenseMatrix::print ( ) const [virtual]

Prints matrix to screen.

Returns:
SUCCESSFUL_RETURN

Implements Matrix.

Definition at line 416 of file Matrices.cpp.

returnValue DenseMatrix::times ( int  xN,
real_t  alpha,
const real_t x,
int  xLD,
real_t  beta,
real_t y,
int  yLD 
) const [virtual]

Evaluate Y=alpha*A*X + beta*Y.

Returns:
SUCCESSFUL_RETURN.
Parameters:
xNNumber of vectors to multiply.
alphaScalar factor for matrix vector product.
xInput vector to be multiplied.
xLDLeading dimension of input x.
betaScalar factor for y.
yOutput vector of results.
yLDLeading dimension of output y.

Implements Matrix.

Definition at line 151 of file Matrices.cpp.

returnValue DenseMatrix::times ( const Indexlist *const  irows,
const Indexlist *const  icols,
int  xN,
real_t  alpha,
const real_t x,
int  xLD,
real_t  beta,
real_t y,
int  yLD,
BooleanType  yCompr = BT_TRUE 
) const [virtual]

Evaluate matrix vector product with submatrix given by Indexlist.

Returns:
SUCCESSFUL_RETURN
Parameters:
irowsIndex list specifying rows.
icolsIndex list specifying columns.
xNNumber of vectors to multiply.
alphaScalar factor for matrix vector product.
xInput vector to be multiplied.
xLDLeading dimension of input x.
betaScalar factor for y.
yOutput vector of results.
yLDLeading dimension of output y.
yComprCompressed storage for y.

Implements Matrix.

Definition at line 167 of file Matrices.cpp.

returnValue DenseMatrix::transTimes ( int  xN,
real_t  alpha,
const real_t x,
int  xLD,
real_t  beta,
real_t y,
int  yLD 
) const [virtual]

Evaluate Y=alpha*A'*X + beta*Y.

Returns:
SUCCESSFUL_RETURN.
Parameters:
xNNumber of vectors to multiply.
alphaScalar factor for matrix vector product.
xInput vector to be multiplied.
xLDLeading dimension of input x.
betaScalar factor for y.
yOutput vector of results.
yLDLeading dimension of output y.

Implements Matrix.

Definition at line 159 of file Matrices.cpp.

returnValue DenseMatrix::transTimes ( const Indexlist *const  irows,
const Indexlist *const  icols,
int  xN,
real_t  alpha,
const real_t x,
int  xLD,
real_t  beta,
real_t y,
int  yLD 
) const [virtual]

Evaluate matrix transpose vector product.

Returns:
SUCCESSFUL_RETURN
Parameters:
irowsIndex list specifying rows.
icolsIndex list specifying columns.
xNNumber of vectors to multiply.
alphaScalar factor for matrix vector product.
xInput vector to be multiplied.
xLDLeading dimension of input x.
betaScalar factor for y.
yOutput vector of results.
yLDLeading dimension of output y.

Implements Matrix.

Definition at line 351 of file Matrices.cpp.


Member Data Documentation

int DenseMatrix::leaDim [protected]

Leading dimension.

Definition at line 390 of file Matrices.hpp.

int DenseMatrix::nCols [protected]

Number of columns.

Definition at line 389 of file Matrices.hpp.

int DenseMatrix::nRows [protected]

Number of rows.

Definition at line 388 of file Matrices.hpp.

real_t* DenseMatrix::val [protected]

Vector of entries.

Definition at line 391 of file Matrices.hpp.


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


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:40:23