Abstract base class for interfacing matrix-vector operations tailored to symmetric matrices. More...
#include <Matrices.hpp>
Public Member Functions | |
virtual returnValue | bilinear (const Indexlist *const icols, int xN, const real_t *x, int xLD, real_t *y, int yLD) const =0 |
virtual returnValue | bilinear (const Indexlist *const icols, int_t xN, const real_t *x, int_t xLD, real_t *y, int_t yLD) const =0 |
virtual SymmetricMatrix * | duplicateSym () const =0 |
SymmetricMatrix () | |
virtual | ~SymmetricMatrix () |
Public Member Functions inherited from Matrix | |
virtual returnValue | addToDiag (real_t alpha)=0 |
virtual returnValue | addToDiag (real_t alpha)=0 |
virtual real_t | diag (int i) const =0 |
virtual real_t | diag (int_t i) const =0 |
void | doFreeMemory () |
void | doFreeMemory () |
void | doNotFreeMemory () |
void | doNotFreeMemory () |
virtual Matrix * | duplicate () const =0 |
virtual Matrix * | duplicate () const =0 |
virtual void | free ()=0 |
virtual void | free ()=0 |
virtual real_t * | full () const =0 |
virtual returnValue | getCol (int cNum, const Indexlist *const irows, real_t alpha, real_t *col) const =0 |
virtual returnValue | getCol (int_t cNum, const Indexlist *const irows, real_t alpha, real_t *col) const =0 |
virtual real_t | getNorm (int_t type=2) const =0 |
virtual returnValue | getRow (int rNum, const Indexlist *const icols, real_t alpha, real_t *row) const =0 |
virtual returnValue | getRow (int_t rNum, const Indexlist *const icols, real_t alpha, real_t *row) const =0 |
virtual real_t | getRowNorm (int_t rNum, int_t type=2) const =0 |
virtual returnValue | getSparseSubmatrix (const Indexlist *const irows, const Indexlist *const icols, int_t rowoffset, int_t coloffset, int_t &numNonzeros, int_t *irn, int_t *jcn, real_t *avals, BooleanType only_lower_triangular=BT_FALSE) const |
virtual returnValue | getSparseSubmatrix (const Indexlist *const irows, int_t idx_icol, int_t rowoffset, int_t coloffset, int_t &numNonzeros, int_t *irn, int_t *jcn, real_t *avals, BooleanType only_lower_triangular=BT_FALSE) const |
virtual returnValue | getSparseSubmatrix (int_t idx_row, const Indexlist *const icols, int_t rowoffset, int_t coloffset, int_t &numNonzeros, int_t *irn, int_t *jcn, real_t *avals, BooleanType only_lower_triangular=BT_FALSE) const |
virtual returnValue | getSparseSubmatrix (int_t irowsLength, const int_t *const irowsNumber, int_t icolsLength, const int_t *const icolsNumber, int_t rowoffset, int_t coloffset, int_t &numNonzeros, int_t *irn, int_t *jcn, real_t *avals, BooleanType only_lower_triangular=BT_FALSE) const =0 |
virtual BooleanType | isDiag () const =0 |
virtual BooleanType | isDiag () const =0 |
Matrix () | |
Matrix () | |
BooleanType | needToFreeMemory () const |
BooleanType | needToFreeMemory () const |
virtual returnValue | print () const =0 |
virtual returnValue | print (const char *name=0) const =0 |
virtual returnValue | times (int xN, real_t alpha, const real_t *x, int xLD, real_t beta, real_t *y, int yLD) const =0 |
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 =0 |
virtual returnValue | times (int_t xN, real_t alpha, const real_t *x, int_t xLD, real_t beta, real_t *y, int_t yLD) const =0 |
virtual returnValue | times (const Indexlist *const irows, const Indexlist *const icols, int_t xN, real_t alpha, const real_t *x, int_t xLD, real_t beta, real_t *y, int_t yLD, BooleanType yCompr=BT_TRUE) const =0 |
virtual returnValue | transTimes (int xN, real_t alpha, const real_t *x, int xLD, real_t beta, real_t *y, int yLD) const =0 |
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 =0 |
virtual returnValue | transTimes (int_t xN, real_t alpha, const real_t *x, int_t xLD, real_t beta, real_t *y, int_t yLD) const =0 |
virtual returnValue | transTimes (const Indexlist *const irows, const Indexlist *const icols, int_t xN, real_t alpha, const real_t *x, int_t xLD, real_t beta, real_t *y, int_t yLD) const =0 |
virtual returnValue | writeToFile (FILE *output_file, const char *prefix) const =0 |
virtual | ~Matrix () |
virtual | ~Matrix () |
Additional Inherited Members | |
Protected Attributes inherited from Matrix | |
BooleanType | freeMemory |
Abstract base class for interfacing matrix-vector operations tailored to symmetric matrices.
Abstract base class for symmetric matrices. Extends Matrix interface with bilinear form evaluation.
\author Andreas Potschka, Christian Kirches, Hans Joachim Ferreau \version 3.0beta \date 2011
Abstract base class for symmetric matrices. Extends Matrix interface with bilinear form evaluation.
\author Andreas Potschka, Christian Kirches, Hans Joachim Ferreau \version 3.2 \date 2011-2015
Definition at line 246 of file qpOASES-3.0beta/include/qpOASES/Matrices.hpp.
|
inline |
Default constructor.
Definition at line 347 of file qpOASES-3.2.0/include/qpOASES/Matrices.hpp.
|
inlinevirtual |
Destructor.
Definition at line 350 of file qpOASES-3.2.0/include/qpOASES/Matrices.hpp.
|
pure virtual |
Compute bilinear form y = x'*H*x using submatrix given by index list.
icols | Index list specifying columns of x. |
xN | Number of vectors to multiply. |
x | Input vector to be multiplied (uncompressed). |
xLD | Leading dimension of input x. |
y | Output vector of results (compressed). |
yLD | Leading dimension of output y. |
Implemented in SymSparseMat, SymSparseMat, SymDenseMat, and SymDenseMat.
|
pure virtual |
Compute bilinear form y = x'*H*x using submatrix given by index list.
icols | Index list specifying columns of x. |
xN | Number of vectors to multiply. |
x | Input vector to be multiplied (uncompressed). |
xLD | Leading dimension of input x. |
y | Output vector of results (compressed). |
yLD | Leading dimension of output y. |
Implemented in SymSparseMat, SymSparseMat, SymDenseMat, and SymDenseMat.
|
pure virtual |
Returns a deep-copy of the SymmetricMatrix object.
Implemented in SymSparseMat, and SymDenseMat.