Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members

ClpPredictorCorrector.hpp

00001 // Copyright (C) 2003, International Business Machines
00002 // Corporation and others.  All Rights Reserved.
00003 
00004 /* 
00005    Authors
00006    
00007    John Forrest
00008 
00009  */
00010 #ifndef ClpPredictorCorrector_H
00011 #define ClpPredictorCorrector_H
00012 
00013 #include "ClpInterior.hpp"
00014 
00024 class ClpPredictorCorrector : public ClpInterior {
00025 
00026 public:
00027 
00037   int solve();
00039 
00042 
00043   //phase  - 0 predictor
00044   //         1 corrector
00045   //         2 primal dual
00046   double findStepLength(const int phase);
00048   double findDirectionVector(const int phase);
00050   void createSolution();
00052   //phase 0=as is , 1 = after predictor , 2 after corrector
00053   double complementarityGap(int & numberComplementarityPairs,
00054                             const int phase);
00056   //phase 0=affine , 1 = corrector , 2 = primal-dual
00057   void setupForSolve(const int phase);
00058   //method: sees if looks plausible change in complementarity
00059   bool checkGoodMove(const bool doCorrector);
00061   bool checkGoodMove2(const double move);
00063   //returns number fixed
00064   int updateSolution();
00066   double affineProduct();
00068 
00069 };
00070 #endif

Generated on Wed Dec 3 14:37:29 2003 for CLP by doxygen 1.3.5