Ipopt  trunk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Attributes
Ipopt::SymMatrix Class Reference

This is the base class for all derived symmetric matrix types. More...

#include <IpSymMatrix.hpp>

+ Inheritance diagram for Ipopt::SymMatrix:

List of all members.

Public Member Functions

SmartPtr< const SymMatrixSpaceOwnerSymMatrixSpace () const
Constructor/Destructor
 SymMatrix (const SymMatrixSpace *owner_space)
 Constructor, taking the owner_space.
virtual ~SymMatrix ()
 Destructor.
Information about the size of the matrix
Index Dim () const
 Dimension of the matrix (number of rows and columns)

Protected Member Functions

Overloaded methods from Matrix.
virtual void TransMultVectorImpl (Number alpha, const Vector &x, Number beta, Vector &y) const
 Since the matrix is symmetric, it is only necessary to implement the MultVectorImpl method in a class that inherits from this base class.
virtual void ComputeColAMaxImpl (Vector &cols_norms, bool init) const
 Since the matrix is symmetric, the row and column max norms are identical.

Private Attributes

const SymMatrixSpaceowner_space_
 Copy of the owner space ptr as a SymMatrixSpace instead of a MatrixSpace.

Detailed Description

This is the base class for all derived symmetric matrix types.

Definition at line 23 of file IpSymMatrix.hpp.


Constructor & Destructor Documentation

Ipopt::SymMatrix::SymMatrix ( const SymMatrixSpace owner_space) [inline]

Constructor, taking the owner_space.

Definition at line 142 of file IpSymMatrix.hpp.

virtual Ipopt::SymMatrix::~SymMatrix ( ) [inline, virtual]

Destructor.

Definition at line 34 of file IpSymMatrix.hpp.


Member Function Documentation

Index Ipopt::SymMatrix::Dim ( ) const [inline]

Dimension of the matrix (number of rows and columns)

Reimplemented in Ipopt::IdentityMatrix.

Definition at line 149 of file IpSymMatrix.hpp.

Definition at line 155 of file IpSymMatrix.hpp.

virtual void Ipopt::SymMatrix::TransMultVectorImpl ( Number  alpha,
const Vector x,
Number  beta,
Vector y 
) const [inline, protected, virtual]

Since the matrix is symmetric, it is only necessary to implement the MultVectorImpl method in a class that inherits from this base class.

If the TransMultVectorImpl is called, this base class automatically calls MultVectorImpl instead.

Implements Ipopt::Matrix.

Reimplemented in Ipopt::ZeroSymMatrix.

Definition at line 56 of file IpSymMatrix.hpp.

virtual void Ipopt::SymMatrix::ComputeColAMaxImpl ( Vector cols_norms,
bool  init 
) const [inline, protected, virtual]

Since the matrix is symmetric, the row and column max norms are identical.

Implements Ipopt::Matrix.

Reimplemented in Ipopt::LowRankUpdateSymMatrix, Ipopt::SumSymMatrix, and Ipopt::ZeroSymMatrix.

Definition at line 65 of file IpSymMatrix.hpp.


Member Data Documentation

Copy of the owner space ptr as a SymMatrixSpace instead of a MatrixSpace.

Reimplemented from Ipopt::Matrix.

Reimplemented in Ipopt::SymTMatrix, Ipopt::LowRankUpdateSymMatrix, Ipopt::DenseSymMatrix, Ipopt::CompoundSymMatrix, Ipopt::SymScaledMatrix, and Ipopt::SumSymMatrix.

Definition at line 75 of file IpSymMatrix.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines