Actual source code: kt.h

  1: #ifndef __TAO_KT_H
  3: #include "tao_solver.h"

  5: class TaoKTApplication : public TaoApplication {
  6:  public:
  7:   TaoKTApplication(TAO_SOLVER,TAO_SOLVER);
  8:   TAO_SOLVER orig;      // original solver structure
  9:   TAO_SOLVER csolver;      // original solver structure
 10:   double func;          // function value

 12:   virtual int EvaluateConstraints(TaoVec *xx, TaoVec *RR);
 13:   virtual int EvaluateJacobian(TaoVec *xx, TaoMat *JJ);
 14:   virtual int InitializeVariables(TaoVec *x);

 16:   virtual int GetVariableVector(TaoVec **xx);
 17:   virtual int EvaluateVariableBounds(TaoVec *xxll, TaoVec *xxuu);
 18:   virtual int GetJacobianMatrix(TaoMat **JJ);
 19:   virtual int GetLinearSolver(TaoMat *, int, TaoLinearSolver **);
 20:   int SetItUp1();
 21:   int SetItUp2();
 22: };


 25: typedef struct {

 27:   TaoKTApplication* ktapp;

 29:   TAO_SOLVER csolver;    // complementarity solver structure
 30:   char comp_method[256]; // complementarity solver

 32:   TaoVec *G;
 33:   int setupcalled;
 34: } TAO_KT;

 36: #endif