Class for Matrices with few rows that consists of Vectors, together with a premultiplied Expansion matrix. More...
#include <IpExpandedMultiVectorMatrix.hpp>


Public Member Functions | |
| SmartPtr < ExpandedMultiVectorMatrix > | MakeNewExpandedMultiVectorMatrix () const |
| void | SetVector (Index i, SmartPtr< const Vector > vec) |
| Set a particular Vector at a given row position, replacing another vector if there has been one. | |
| SmartPtr< const Vector > | GetVector (Index i) const |
| Get a Vector in a particular row as a const Vector. | |
| SmartPtr< const VectorSpace > | RowVectorSpace () const |
| Vector space for the rows. | |
| SmartPtr< const ExpandedMultiVectorMatrixSpace > | ExpandedMultiVectorMatrixOwnerSpace () const |
| Return the ExpandedMultiVectorMatrixSpace. | |
| SmartPtr< const ExpansionMatrix > | GetExpansionMatrix () const |
| Return the Expansion matrix. | |
Constructors / Destructors | |
| ExpandedMultiVectorMatrix (const ExpandedMultiVectorMatrixSpace *owner_space) | |
| Constructor, taking the owner_space. | |
| virtual | ~ExpandedMultiVectorMatrix () |
| Destructor. | |
Protected Member Functions | |
Overloaded methods from Matrix base class | |
| virtual void | MultVectorImpl (Number alpha, const Vector &x, Number beta, Vector &y) const |
| Matrix-vector multiply. | |
| virtual void | TransMultVectorImpl (Number alpha, const Vector &x, Number beta, Vector &y) const |
| Matrix(transpose) vector multiply. | |
| virtual bool | HasValidNumbersImpl () const |
| Method for determining if all stored numbers are valid (i.e., no Inf or Nan). | |
| virtual void | ComputeRowAMaxImpl (Vector &rows_norms, bool init) const |
| Compute the max-norm of the rows in the matrix. | |
| virtual void | ComputeColAMaxImpl (Vector &cols_norms, bool init) const |
| Compute the max-norm of the columns in the matrix. | |
| virtual void | PrintImpl (const Journalist &jnlst, EJournalLevel level, EJournalCategory category, const std::string &name, Index indent, const std::string &prefix) const |
| Print detailed information about the matrix. | |
Private Member Functions | |
Default Compiler Generated Methods | |
| ExpandedMultiVectorMatrix () | |
| Default Constructor. | |
| ExpandedMultiVectorMatrix (const ExpandedMultiVectorMatrix &) | |
| Copy Constructor. | |
| void | operator= (const ExpandedMultiVectorMatrix &) |
| Overloaded Equals Operator. | |
Private Attributes | |
| const ExpandedMultiVectorMatrixSpace * | owner_space_ |
| std::vector< SmartPtr< const Vector > > | vecs_ |
| space for storing the const Vector's | |
Class for Matrices with few rows that consists of Vectors, together with a premultiplied Expansion matrix.
So, the matrix is V^T*P^T. If P is NULL, it is assumed to be the identity matrix. If a row vector of V is NULL, it is assumed to be all zero. This is used to construct the KKT system with low-rank Hessian approximation.
Definition at line 29 of file IpExpandedMultiVectorMatrix.hpp.
| Ipopt::ExpandedMultiVectorMatrix::ExpandedMultiVectorMatrix | ( | const ExpandedMultiVectorMatrixSpace * | owner_space | ) |
Constructor, taking the owner_space.
| virtual Ipopt::ExpandedMultiVectorMatrix::~ExpandedMultiVectorMatrix | ( | ) | [inline, virtual] |
Destructor.
Definition at line 41 of file IpExpandedMultiVectorMatrix.hpp.
| Ipopt::ExpandedMultiVectorMatrix::ExpandedMultiVectorMatrix | ( | ) | [private] |
Default Constructor.
| Ipopt::ExpandedMultiVectorMatrix::ExpandedMultiVectorMatrix | ( | const ExpandedMultiVectorMatrix & | ) | [private] |
Copy Constructor.
| SmartPtr< ExpandedMultiVectorMatrix > Ipopt::ExpandedMultiVectorMatrix::MakeNewExpandedMultiVectorMatrix | ( | ) | const [inline] |
Definition at line 170 of file IpExpandedMultiVectorMatrix.hpp.
Set a particular Vector at a given row position, replacing another vector if there has been one.
Get a Vector in a particular row as a const Vector.
Definition at line 52 of file IpExpandedMultiVectorMatrix.hpp.
| SmartPtr< const VectorSpace > Ipopt::ExpandedMultiVectorMatrix::RowVectorSpace | ( | ) | const [inline] |
Vector space for the rows.
Definition at line 176 of file IpExpandedMultiVectorMatrix.hpp.
| SmartPtr< const ExpandedMultiVectorMatrixSpace > Ipopt::ExpandedMultiVectorMatrix::ExpandedMultiVectorMatrixOwnerSpace | ( | ) | const [inline] |
Return the ExpandedMultiVectorMatrixSpace.
Definition at line 189 of file IpExpandedMultiVectorMatrix.hpp.
| SmartPtr< const ExpansionMatrix > Ipopt::ExpandedMultiVectorMatrix::GetExpansionMatrix | ( | ) | const [inline] |
Return the Expansion matrix.
If NULL, there is no expansion, the vector is used as is.
Definition at line 182 of file IpExpandedMultiVectorMatrix.hpp.
| virtual void Ipopt::ExpandedMultiVectorMatrix::TransMultVectorImpl | ( | Number | alpha, | |
| const Vector & | x, | |||
| Number | beta, | |||
| Vector & | y | |||
| ) | const [protected, virtual] |
Matrix(transpose) vector multiply.
Computes y = alpha * Matrix^T * x + beta * y
Implements Ipopt::Matrix.
| virtual bool Ipopt::ExpandedMultiVectorMatrix::HasValidNumbersImpl | ( | ) | const [protected, virtual] |
Method for determining if all stored numbers are valid (i.e., no Inf or Nan).
Reimplemented from Ipopt::Matrix.
| virtual void Ipopt::ExpandedMultiVectorMatrix::ComputeRowAMaxImpl | ( | Vector & | rows_norms, | |
| bool | init | |||
| ) | const [protected, virtual] |
Compute the max-norm of the rows in the matrix.
The result is stored in rows_norms. The vector is assumed to be initialized.
Implements Ipopt::Matrix.
| virtual void Ipopt::ExpandedMultiVectorMatrix::ComputeColAMaxImpl | ( | Vector & | cols_norms, | |
| bool | init | |||
| ) | const [protected, virtual] |
Compute the max-norm of the columns in the matrix.
The result is stored in cols_norms. The vector is assumed to be initialized.
Implements Ipopt::Matrix.
| virtual void Ipopt::ExpandedMultiVectorMatrix::PrintImpl | ( | const Journalist & | jnlst, | |
| EJournalLevel | level, | |||
| EJournalCategory | category, | |||
| const std::string & | name, | |||
| Index | indent, | |||
| const std::string & | prefix | |||
| ) | const [protected, virtual] |
Print detailed information about the matrix.
Implements Ipopt::Matrix.
| void Ipopt::ExpandedMultiVectorMatrix::operator= | ( | const ExpandedMultiVectorMatrix & | ) | [private] |
Overloaded Equals Operator.
Reimplemented from Ipopt::Matrix.
Reimplemented from Ipopt::Matrix.
Definition at line 114 of file IpExpandedMultiVectorMatrix.hpp.
std::vector<SmartPtr<const Vector> > Ipopt::ExpandedMultiVectorMatrix::vecs_ [private] |
space for storing the const Vector's
Definition at line 117 of file IpExpandedMultiVectorMatrix.hpp.
1.6.1