Ipopt Documentation  
 
Loading...
Searching...
No Matches
Ipopt::TDependencyDetector Class Referenceabstract

Base class for all derived algorithms for detecting linearly dependent rows in the constraint Jacobian. More...

#include <IpTDependencyDetector.hpp>

+ Inheritance diagram for Ipopt::TDependencyDetector:

Public Member Functions

virtual bool InitializeImpl (const OptionsList &options, const std::string &prefix)=0
 Has to be called to initialize and reset these objects.
 
virtual bool DetermineDependentRows (Index n_rows, Index n_cols, Index n_jac_nz, Number *jac_c_vals, Index *jac_c_iRow, Index *jac_c_jCol, std::list< Index > &c_deps)=0
 Method determining the number of linearly dependent rows in the matrix and the indices of those rows.
 
Constructor/Destructor
 TDependencyDetector ()
 
virtual ~TDependencyDetector ()
 
- Public Member Functions inherited from Ipopt::AlgorithmStrategyObject
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.
 
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.
 
 AlgorithmStrategyObject ()
 Default Constructor.
 
virtual ~AlgorithmStrategyObject ()
 Destructor.
 
- 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

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.

 TDependencyDetector (const TDependencyDetector &)
 Copy Constructor.
 
void operator= (const TDependencyDetector &)
 Default Assignment Operator.
 

Additional Inherited Members

- Protected Member Functions inherited from Ipopt::AlgorithmStrategyObject
const JournalistJnlst () const
 
IpoptNLPIpNLP () const
 
IpoptDataIpData () const
 
IpoptCalculatedQuantitiesIpCq () const
 
bool HaveIpData () const
 

Detailed Description

Base class for all derived algorithms for detecting linearly dependent rows in the constraint Jacobian.

Definition at line 19 of file IpTDependencyDetector.hpp.

Constructor & Destructor Documentation

◆ TDependencyDetector() [1/2]

Ipopt::TDependencyDetector::TDependencyDetector ( )
inline

Definition at line 24 of file IpTDependencyDetector.hpp.

◆ ~TDependencyDetector()

virtual Ipopt::TDependencyDetector::~TDependencyDetector ( )
inlinevirtual

Definition at line 27 of file IpTDependencyDetector.hpp.

◆ TDependencyDetector() [2/2]

Ipopt::TDependencyDetector::TDependencyDetector ( const TDependencyDetector )
private

Copy Constructor.

Member Function Documentation

◆ InitializeImpl()

virtual bool Ipopt::TDependencyDetector::InitializeImpl ( const OptionsList options,
const std::string &  prefix 
)
pure virtual

Has to be called to initialize and reset these objects.

Implements Ipopt::AlgorithmStrategyObject.

Implemented in Ipopt::Ma28TDependencyDetector, and Ipopt::TSymDependencyDetector.

◆ DetermineDependentRows()

virtual bool Ipopt::TDependencyDetector::DetermineDependentRows ( Index  n_rows,
Index  n_cols,
Index  n_jac_nz,
Number jac_c_vals,
Index jac_c_iRow,
Index jac_c_jCol,
std::list< Index > &  c_deps 
)
pure virtual

Method determining the number of linearly dependent rows in the matrix and the indices of those rows.

We assume that the matrix is available in "Triplet" format (MA28 format), and that the arrays given to this method can be modified internally, i.e., they are not used by the calling program anymore after this call.

Returns
false if there was a problem with the underlying linear solver

Implemented in Ipopt::Ma28TDependencyDetector, and Ipopt::TSymDependencyDetector.

◆ operator=()

void Ipopt::TDependencyDetector::operator= ( const TDependencyDetector )
private

Default Assignment Operator.


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