# Ipopt::CompoundVectorSpace Class Reference

This vectors space is the vector space for CompoundVector. More...

`#include <IpCompoundVector.hpp>`

Inheritance diagram for Ipopt::CompoundVectorSpace:
[legend]

List of all members.

## Public Member Functions
virtual void | SetCompSpace (Index icomp, const VectorSpace &vec_space)
| Method for setting the individual component VectorSpaces.
SmartPtr< const VectorSpace > | GetCompSpace (Index icomp) const
| Method for obtaining an individual component VectorSpace.
Index | NCompSpaces () const
| Accessor method to obtain the number of components.
virtual CompoundVector * | MakeNewCompoundVector (bool create_new=true) const
| Method for creating a new vector of this specific type.
virtual Vector * | MakeNew () const
| Overloaded MakeNew method for the VectorSpace base class.
Constructors/Destructors.
| CompoundVectorSpace (Index ncomp_spaces, Index total_dim)
| Constructor, has to be given the number of components and the total dimension of all components combined.
| ~CompoundVectorSpace ()
| Destructor.
## Private Member Functions
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.
| CompoundVectorSpace ()
| Default constructor.
| CompoundVectorSpace (const CompoundVectorSpace &)
| Copy Constructor.
CompoundVectorSpace & | operator= (const CompoundVectorSpace &)
| Overloaded Equals Operator.
## Private Attributes
const Index | ncomp_spaces_
| Number of components.
std::vector< SmartPtr< const VectorSpace > > | comp_spaces_
| std::vector of vector spaces for the components

## Detailed Description

This vectors space is the vector space for CompoundVector.

Before a CompoundVector can be created, all components of this CompoundVectorSpace have to be set. When calling the constructor, the number of component has to be specified. The individual VectorSpaces can be set with the SetComp method.

Definition at line 239 of file IpCompoundVector.hpp.

## Constructor & Destructor Documentation

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

Constructor, has to be given the number of components and the total dimension of all components combined.

Ipopt::CompoundVectorSpace::~CompoundVectorSpace | ( |  | ) | `[inline]`

Destructor.

Definition at line 249 of file IpCompoundVector.hpp.

Ipopt::CompoundVectorSpace::CompoundVectorSpace | ( |  | ) | `[private]`

Default constructor.

Ipopt::CompoundVectorSpace::CompoundVectorSpace | ( | const CompoundVectorSpace & |  | ) | `[private]`

Copy Constructor.

## Member Function Documentation

virtual void Ipopt::CompoundVectorSpace::SetCompSpace | ( | Index | icomp,
|  | const VectorSpace & | vec_space |
| ) |  |  | `[virtual]`

Method for setting the individual component VectorSpaces.

Parameters:

  | icomp | Number of the component to be set
  | vec_space | VectorSpace for component icomp

Reimplemented in Ipopt::IteratesVectorSpace.

SmartPtr<const VectorSpace> Ipopt::CompoundVectorSpace::GetCompSpace | ( | Index | icomp | ) | const

Method for obtaining an individual component VectorSpace.

Index Ipopt::CompoundVectorSpace::NCompSpaces | ( |  | ) | const`[inline]`

Accessor method to obtain the number of components.

Definition at line 262 of file IpCompoundVector.hpp.

virtual CompoundVector* Ipopt::CompoundVectorSpace::MakeNewCompoundVector | ( | bool | create_new = `true` | ) | const`[inline, virtual]`

Method for creating a new vector of this specific type.

Reimplemented in Ipopt::IteratesVectorSpace.

Definition at line 268 of file IpCompoundVector.hpp.

virtual Vector* Ipopt::CompoundVectorSpace::MakeNew | ( |  | ) | const`[inline, virtual]`

Overloaded MakeNew method for the VectorSpace base class.

Implements Ipopt::VectorSpace.

Reimplemented in Ipopt::IteratesVectorSpace.

Definition at line 275 of file IpCompoundVector.hpp.

CompoundVectorSpace& Ipopt::CompoundVectorSpace::operator= | ( | const CompoundVectorSpace & |  | ) | `[private]`

Overloaded Equals Operator.

Reimplemented from Ipopt::VectorSpace.

Reimplemented in Ipopt::IteratesVectorSpace.

## Member Data Documentation

const Index Ipopt::CompoundVectorSpace::ncomp_spaces_`[private]`

Number of components.

Definition at line 300 of file IpCompoundVector.hpp.

std::vector< SmartPtr<const VectorSpace> > Ipopt::CompoundVectorSpace::comp_spaces_`[private]`

std::vector of vector spaces for the components

Definition at line 303 of file IpCompoundVector.hpp.

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

- src/LinAlg/IpCompoundVector.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines