Ipopt 3.12.10

- Main Page
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Ipopt::CompoundSymMatrixSpace Class Reference

This is the matrix space for CompoundSymMatrix. More...

`#include <IpCompoundSymMatrix.hpp>`

Inheritance diagram for Ipopt::CompoundSymMatrixSpace:
[legend]

## Public Member Functions
SmartPtr< const MatrixSpace > | GetCompSpace (Index irow, Index jcol) const
| Obtain the component MatrixSpace in block row irow and block column jcol. More...
CompoundSymMatrix * | MakeNewCompoundSymMatrix () const
| Method for creating a new matrix of this specific type. More...
virtual SymMatrix * | MakeNewSymMatrix () const
| Overloaded MakeNew method for the SymMatrixSpace base class. More...
Constructors / Destructors
| CompoundSymMatrixSpace (Index ncomp_spaces, Index total_dim)
| Constructor, given the number of blocks (same for rows and columns), as well as the total dimension of the matrix. More...
| ~CompoundSymMatrixSpace ()
| Destructor. More...
Methods for setting information about the components.
void | SetBlockDim (Index irow_jcol, Index dim)
| Set the dimension dim for block row (or column) irow_jcol. More...
Index | GetBlockDim (Index irow_jcol) const
| Get the dimension dim for block row (or column) irow_jcol. More...
void | SetCompSpace (Index irow, Index jcol, const MatrixSpace &mat_space, bool auto_allocate=false)
| Set the component SymMatrixSpace. More...
Accessor methods
Index | NComps_Dim () const
Public Member Functions inherited from Ipopt::SymMatrixSpace
virtual Matrix * | MakeNew () const
| Overloaded MakeNew method for the MatrixSpace base class. More...
Index | Dim () const
| Accessor method for the dimension of the matrices in this matrix space. More...
| SymMatrixSpace (Index dim)
| Constructor, given the dimension (identical to the number of rows and columns). More...
virtual | ~SymMatrixSpace ()
| Destructor. More...
Public Member Functions inherited from Ipopt::MatrixSpace
Index | NRows () const
| Accessor function for the number of rows. More...
Index | NCols () const
| Accessor function for the number of columns. More...
bool | IsMatrixFromSpace (const Matrix &matrix) const
| Method to test if a given matrix belongs to a particular matrix space. More...
| MatrixSpace (Index nRows, Index nCols)
| Constructor, given the number rows and columns of all matrices generated by this MatrixSpace. More...
virtual | ~MatrixSpace ()
| Destructor. More...
Public Member Functions inherited from Ipopt::ReferencedObject
| ReferencedObject ()
virtual | ~ReferencedObject ()
Index | ReferenceCount () const
void | AddRef (const Referencer *referencer) const
void | ReleaseRef (const Referencer *referencer) const

## Private Member Functions
bool | DimensionsSet () const
| Method to check whether or not the spaces are valid. More...
Default Compiler Generated Methods
(Hidden to avoid implicit creation/calling). These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called.
| CompoundSymMatrixSpace ()
| Default constructor. More...
| CompoundSymMatrixSpace (const CompoundSymMatrix &)
| Copy Constructor. More...
CompoundSymMatrixSpace & | operator= (const CompoundSymMatrixSpace &)
| Overloaded Equals Operator. More...

## Private Attributes
Index | ncomp_spaces_
| Number of components per row and column. More...
std::vector< Index > | block_dim_
| Vector of the number of rows in each comp column, Since this is symmetric, this is also the number of columns in each row, hence, it is the dimension each of the diagonals. More...
std::vector< std::vector < SmartPtr< const MatrixSpace > > > | comp_spaces_
| 2-dim std::vector of matrix spaces for the components. More...
std::vector< std::vector< bool > > | allocate_block_
| 2-dim std::vector of booleans deciding whether to allocate a new matrix for the blocks automagically More...
bool | dimensions_set_
| boolean indicating if the compound matrix space is in a "valid" state More...

## Detailed Description

This is the matrix space for CompoundSymMatrix.

Before a CompoundSymMatrix can be created, at least one SymMatrixSpace has to be set per block row and column. Individual component SymMatrixSpace's can be set with the SetComp method.

Definition at line 171 of file IpCompoundSymMatrix.hpp.

## Constructor & Destructor Documentation

Ipopt::CompoundSymMatrixSpace::CompoundSymMatrixSpace | ( | Index | ncomp_spaces,
|  | Index | total_dim
| ) |  |

Constructor, given the number of blocks (same for rows and columns), as well as the total dimension of the matrix.

Ipopt::CompoundSymMatrixSpace::~CompoundSymMatrixSpace | ( |  | ) |
| inline

Destructor.

Definition at line 182 of file IpCompoundSymMatrix.hpp.

Ipopt::CompoundSymMatrixSpace::CompoundSymMatrixSpace | ( |  | ) |
| private

Default constructor.

Ipopt::CompoundSymMatrixSpace::CompoundSymMatrixSpace | ( | const CompoundSymMatrix & |  | ) |
| private

Copy Constructor.

## Member Function Documentation

void Ipopt::CompoundSymMatrixSpace::SetBlockDim | ( | Index | irow_jcol,
|  | Index | dim
| ) |  |

Set the dimension dim for block row (or column) irow_jcol.

Index Ipopt::CompoundSymMatrixSpace::GetBlockDim | ( | Index | irow_jcol | ) | const

Get the dimension dim for block row (or column) irow_jcol.

void Ipopt::CompoundSymMatrixSpace::SetCompSpace | ( | Index | irow,
|  | Index | jcol,
|  | const MatrixSpace & | mat_space,
|  | bool | auto_allocate = `false`
| ) |  |

Set the component SymMatrixSpace.

If auto_allocate is true, then a new CompoundSymMatrix created later with MakeNew will have this component automatically created with the SymMatrix's MakeNew. Otherwise, the corresponding component will be NULL and has to be set with the SetComp methods of the CompoundSymMatrix.

SmartPtr<const MatrixSpace> Ipopt::CompoundSymMatrixSpace::GetCompSpace | ( | Index | irow,
|  | Index | jcol
| ) |  | const
| inline

Obtain the component MatrixSpace in block row irow and block column jcol.

Definition at line 208 of file IpCompoundSymMatrix.hpp.

Index Ipopt::CompoundSymMatrixSpace::NComps_Dim | ( |  | ) | const
| inline

Definition at line 217 of file IpCompoundSymMatrix.hpp.

CompoundSymMatrix* Ipopt::CompoundSymMatrixSpace::MakeNewCompoundSymMatrix | ( |  | ) | const

Method for creating a new matrix of this specific type.

virtual SymMatrix* Ipopt::CompoundSymMatrixSpace::MakeNewSymMatrix | ( |  | ) | const
| inline virtual

Overloaded MakeNew method for the SymMatrixSpace base class.

Implements Ipopt::SymMatrixSpace.

Definition at line 228 of file IpCompoundSymMatrix.hpp.

CompoundSymMatrixSpace& Ipopt::CompoundSymMatrixSpace::operator= | ( | const CompoundSymMatrixSpace & |  | ) |
| private

Overloaded Equals Operator.

bool Ipopt::CompoundSymMatrixSpace::DimensionsSet | ( |  | ) | const
| private

Method to check whether or not the spaces are valid.

## Member Data Documentation

Index Ipopt::CompoundSymMatrixSpace::ncomp_spaces_
| private

Number of components per row and column.

Definition at line 253 of file IpCompoundSymMatrix.hpp.

std::vector<Index> Ipopt::CompoundSymMatrixSpace::block_dim_
| private

Vector of the number of rows in each comp column, Since this is symmetric, this is also the number of columns in each row, hence, it is the dimension each of the diagonals.

Definition at line 259 of file IpCompoundSymMatrix.hpp.

std::vector<std::vector<SmartPtr<const MatrixSpace> > > Ipopt::CompoundSymMatrixSpace::comp_spaces_
| private

2-dim std::vector of matrix spaces for the components.

Only the lower right part is stored.

Definition at line 263 of file IpCompoundSymMatrix.hpp.

std::vector<std::vector< bool > > Ipopt::CompoundSymMatrixSpace::allocate_block_
| private

2-dim std::vector of booleans deciding whether to allocate a new matrix for the blocks automagically

Definition at line 267 of file IpCompoundSymMatrix.hpp.

bool Ipopt::CompoundSymMatrixSpace::dimensions_set_
| mutable private

boolean indicating if the compound matrix space is in a "valid" state

Definition at line 270 of file IpCompoundSymMatrix.hpp.

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

- src/LinAlg/IpCompoundSymMatrix.hpp