#include <IpSymScaledMatrix.hpp>
Operations on the matrix are performed using the scaled matrix. You can pull out the pointer to the unscaled matrix for unscaled calculations.
Public Member Functions | |
void | SetUnscaledMatrix (const SmartPtr< const SymMatrix > unscaled_matrix) |
Set the unscaled matrix. | |
void | SetUnscaledMatrixNonConst (const SmartPtr< SymMatrix > &unscaled_matrix) |
Set the unscaled matrix in a non-const version. | |
SmartPtr< const SymMatrix > | GetUnscaledMatrix () const |
Return the unscaled matrix in const form. | |
SmartPtr< SymMatrix > | GetUnscaledMatrixNonConst () |
Return the unscaled matrix in non-const form. | |
SmartPtr< const Vector > | RowColScaling () const |
return the vector for the row and column scaling | |
Constructors / Destructors | |
SymScaledMatrix (const SymScaledMatrixSpace *owner_space) | |
Constructor, taking the owner_space. | |
~SymScaledMatrix () | |
Destructor. | |
Protected Member Functions | |
Methods overloaded from Matrix | |
virtual void | MultVectorImpl (Number alpha, const Vector &x, Number beta, Vector &y) const |
Method for determining if all stored numbers are valid (i.e., no Inf or Nan). | |
virtual bool | HasValidNumbersImpl () const |
Method for determining if all stored numbers are valid (i.e., no Inf or Nan). | |
virtual void | PrintImpl (const Journalist &jnlst, EJournalLevel level, EJournalCategory category, const std::string &name, Index indent, const std::string &prefix) const |
Method for determining if all stored numbers are valid (i.e., no Inf or Nan). |
SymScaledMatrix | ( | const SymScaledMatrixSpace * | owner_space | ) |
Constructor, taking the owner_space.
~SymScaledMatrix | ( | ) |
Destructor.
Set the unscaled matrix in a non-const version.
References Ipopt::GetRawPtr(), and TaggedObject::ObjectChanged().
Referenced by SymScaledMatrixSpace::MakeNewSymScaledMatrix().
Return the unscaled matrix in non-const form.
References DBG_ASSERT, Ipopt::IsValid(), and TaggedObject::ObjectChanged().
void MultVectorImpl | ( | Number | alpha, | |
const Vector & | x, | |||
Number | beta, | |||
Vector & | y | |||
) | const [protected, virtual] |
Method for determining if all stored numbers are valid (i.e., no Inf or Nan).
It is assumed here that the scaling factors are always valid numbers.
Implements Matrix.
References Vector::Axpy(), DBG_ASSERT, Ipopt::IsValid(), Vector::MakeNew(), Vector::MakeNewCopy(), Vector::Scal(), and Vector::Set().
bool HasValidNumbersImpl | ( | ) | const [protected, virtual] |
Method for determining if all stored numbers are valid (i.e., no Inf or Nan).
It is assumed here that the scaling factors are always valid numbers.
Reimplemented from Matrix.
void PrintImpl | ( | const Journalist & | jnlst, | |
EJournalLevel | level, | |||
EJournalCategory | category, | |||
const std::string & | name, | |||
Index | indent, | |||
const std::string & | prefix | |||
) | const [protected, virtual] |
Method for determining if all stored numbers are valid (i.e., no Inf or Nan).
It is assumed here that the scaling factors are always valid numbers.
Implements Matrix.
References Ipopt::IsValid(), Matrix::NCols(), Matrix::NRows(), Journalist::Printf(), and Journalist::PrintfIndented().