00001 // Copyright (C) 2004, International Business Machines 00002 // Corporation and others. All Rights Reserved. 00003 #ifndef ClpCholeskyWssmpKKT_H 00004 #define ClpCholeskyWssmpKKT_H 00005 00006 #include "ClpCholeskyBase.hpp" 00007 class ClpMatrixBase; 00008 class ClpCholeskyDense; 00009 00010 00014 class ClpCholeskyWssmpKKT : public ClpCholeskyBase { 00015 00016 public: 00021 virtual int order(ClpInterior * model) ; 00026 virtual int symbolic(); 00029 virtual int factorize(const double * diagonal, int * rowsDropped) ; 00031 virtual void solve (double * region) ; 00034 virtual void solveKKT (double * region1, double * region2, const double * diagonal, 00035 double diagonalScaleFactor); 00037 00038 00043 ClpCholeskyWssmpKKT(int denseThreshold=-1); 00045 virtual ~ClpCholeskyWssmpKKT(); 00046 // Copy 00047 ClpCholeskyWssmpKKT(const ClpCholeskyWssmpKKT&); 00048 // Assignment 00049 ClpCholeskyWssmpKKT& operator=(const ClpCholeskyWssmpKKT&); 00051 virtual ClpCholeskyBase * clone() const ; 00053 00054 00055 private: 00058 00059 }; 00060 00061 #endif