This class is the interface for any class that deals with the Schur matrix from the point when it is constructed by the PCalculator to the solution against one vector. More...
#include <SensSchurDriver.hpp>
Public Member Functions | |
SchurDriver (SmartPtr< PCalculator > pcalc, SmartPtr< SchurData > data_B) | |
virtual | ~SchurDriver () |
virtual bool | InitializeImpl (const OptionsList &, const std::string &) |
Implementation of the initialization method that has to be overloaded by for each derived class. More... | |
virtual SmartPtr< const SchurData > | data_A () const |
Const accessor methods to the SchurData for for the derived classes. More... | |
virtual SmartPtr< const SchurData > | data_B () const |
virtual SmartPtr< SchurData > | data_A_nonconst () |
virtual SmartPtr< SchurData > | data_B_nonconst () |
virtual SmartPtr< const PCalculator > | pcalc () const |
virtual SmartPtr< PCalculator > | pcalc_nonconst () |
virtual bool | SchurBuild ()=0 |
Creates the SchurMatrix from B and P. More... | |
virtual bool | SchurFactorize ()=0 |
Calls the factorization routine for the SchurMatrix. More... | |
virtual bool | SchurSolve (SmartPtr< IteratesVector > lhs, SmartPtr< const IteratesVector > rhs, SmartPtr< Vector > delta_u, SmartPtr< IteratesVector > sol=NULL)=0 |
Performs a backsolve on S and K. More... | |
![]() | |
bool | Initialize (const Journalist &jnlst, IpoptNLP &ip_nlp, IpoptData &ip_data, IpoptCalculatedQuantities &ip_cq, const OptionsList &options, const std::string &prefix) |
This method is called every time the algorithm starts again - it is used to reset any internal state. More... | |
bool | ReducedInitialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix) |
Reduced version of the Initialize method, which does not require special Ipopt information. More... | |
AlgorithmStrategyObject () | |
Default Constructor. More... | |
virtual | ~AlgorithmStrategyObject () |
Destructor. More... | |
![]() | |
ReferencedObject () | |
virtual | ~ReferencedObject () |
Index | ReferenceCount () const |
void | AddRef (const Referencer *referencer) const |
void | ReleaseRef (const Referencer *referencer) const |
Private Member Functions | |
SchurDriver () | |
Private Attributes | |
SmartPtr< PCalculator > | pcalc_ |
SmartPtr< SchurData > | data_B_ |
Additional Inherited Members | |
![]() | |
const Journalist & | Jnlst () const |
IpoptNLP & | IpNLP () const |
IpoptData & | IpData () const |
IpoptCalculatedQuantities & | IpCq () const |
bool | HaveIpData () const |
This class is the interface for any class that deals with the Schur matrix from the point when it is constructed by the PCalculator to the solution against one vector.
Specific implementations may also incorporate the treatment of adding rows/cols (like QPSchur).
The computations done by this class are
Definition at line 29 of file SensSchurDriver.hpp.
|
inline |
Definition at line 33 of file SensSchurDriver.hpp.
|
inlinevirtual |
Definition at line 41 of file SensSchurDriver.hpp.
|
inlineprivate |
Definition at line 108 of file SensSchurDriver.hpp.
|
inlinevirtual |
Implementation of the initialization method that has to be overloaded by for each derived class.
Implements Ipopt::AlgorithmStrategyObject.
Definition at line 44 of file SensSchurDriver.hpp.
Const accessor methods to the SchurData for for the derived classes.
Definition at line 53 of file SensSchurDriver.hpp.
Definition at line 58 of file SensSchurDriver.hpp.
Definition at line 63 of file SensSchurDriver.hpp.
Definition at line 68 of file SensSchurDriver.hpp.
|
inlinevirtual |
Definition at line 73 of file SensSchurDriver.hpp.
|
inlinevirtual |
Definition at line 78 of file SensSchurDriver.hpp.
|
pure virtual |
Creates the SchurMatrix from B and P.
Implemented in Ipopt::DenseGenSchurDriver.
|
pure virtual |
Calls the factorization routine for the SchurMatrix.
Implemented in Ipopt::DenseGenSchurDriver.
|
pure virtual |
Performs a backsolve on S and K.
sol is the vector K^(-1)*r_s which usually should have been computed before
Implemented in Ipopt::DenseGenSchurDriver.
|
private |
Definition at line 111 of file SensSchurDriver.hpp.
Definition at line 113 of file SensSchurDriver.hpp.