Ipopt  3.12.13
IpTSymDependencyDetector.hpp
Go to the documentation of this file.
1 // Copyright (C) 2007 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id$
6 //
7 // Authors: Andreas Waechter IBM 2007-04-18
8 
9 #ifndef __IPTSYMDEPENDENCYDETECTOR_HPP__
10 #define __IPTSYMDEPENDENCYDETECTOR_HPP__
11 
13 #include "IpTSymLinearSolver.hpp"
14 
15 namespace Ipopt
16 {
17 
21  {
22  public:
25  TSymDependencyDetector(TSymLinearSolver& tsym_linear_solver);
26 
28  {}
30 
32  virtual bool InitializeImpl(const OptionsList& options,
33  const std::string& prefix);
34 
43  virtual bool DetermineDependentRows(Index n_rows, Index n_cols,
44  Index n_jac_nz,
45  Number* jac_c_vals,
46  Index* jac_c_iRow,
47  Index* jac_c_jCol,
48  std::list<Index>& c_deps);
49 
52  static void RegisterOptions(SmartPtr<RegisteredOptions> roptions);
53 
54  private:
65 
68 
70  void operator=(const TSymDependencyDetector&);
72 
74 
76  };
77 
78 } // namespace Ipopt
79 
80 #endif
Ipopt::TSymDependencyDetector::DetermineDependentRows
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)
Method determining the number of linearly dependent rows in the matrix and the indices of those rows.
Ipopt::TSymDependencyDetector::TSymDependencyDetector
TSymDependencyDetector()
Default Constructor.
IpTSymLinearSolver.hpp
Ipopt::TDependencyDetector
Base class for all derived algorithms for detecting linearly dependent rows in the constraint Jacobia...
Definition: IpTDependencyDetector.hpp:20
Ipopt
Definition: matlabjournal.hpp:14
Ipopt::Number
double Number
Type of all numbers.
Definition: IpTypes.hpp:17
Ipopt::TSymDependencyDetector::operator=
void operator=(const TSymDependencyDetector &)
Overloaded Equals Operator.
Ipopt::TSymDependencyDetector::tsym_linear_solver_
SmartPtr< TSymLinearSolver > tsym_linear_solver_
Definition: IpTSymDependencyDetector.hpp:75
Ipopt::TSymDependencyDetector::jnlst_
SmartPtr< const Journalist > jnlst_
Definition: IpTSymDependencyDetector.hpp:73
Ipopt::Index
int Index
Type of all indices of vectors, matrices etc.
Definition: IpTypes.hpp:19
IpTDependencyDetector.hpp
Ipopt::SmartPtr
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:172
Ipopt::TSymDependencyDetector::InitializeImpl
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Has to be called to initialize and reset these objects.
Ipopt::TSymLinearSolver
General driver for linear solvers for sparse indefinite symmetric matrices.
Definition: IpTSymLinearSolver.hpp:33
Ipopt::TSymDependencyDetector
Base class for all derived algorithms for detecting linearly dependent rows in the constraint Jacobia...
Definition: IpTSymDependencyDetector.hpp:20
Ipopt::TSymDependencyDetector::RegisterOptions
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
This must be called to make the options for this class known.
Ipopt::OptionsList
This class stores a list of user set options.
Definition: IpOptionsList.hpp:32
Ipopt::TSymDependencyDetector::~TSymDependencyDetector
virtual ~TSymDependencyDetector()
Definition: IpTSymDependencyDetector.hpp:27