Clp trunk
|
00001 /* $Id$ */ 00002 // Copyright (C) 2004, International Business Machines 00003 // Corporation and others. All Rights Reserved. 00004 // This code is licensed under the terms of the Eclipse Public License (EPL). 00005 00006 #ifndef ClpCholeskyWssmpKKT_H 00007 #define ClpCholeskyWssmpKKT_H 00008 00009 #include "ClpCholeskyBase.hpp" 00010 class ClpMatrixBase; 00011 class ClpCholeskyDense; 00012 00013 00017 class ClpCholeskyWssmpKKT : public ClpCholeskyBase { 00018 00019 public: 00024 virtual int order(ClpInterior * model) ; 00029 virtual int symbolic(); 00032 virtual int factorize(const double * diagonal, int * rowsDropped) ; 00034 virtual void solve (double * region) ; 00037 virtual void solveKKT (double * region1, double * region2, const double * diagonal, 00038 double diagonalScaleFactor); 00040 00041 00046 ClpCholeskyWssmpKKT(int denseThreshold = -1); 00048 virtual ~ClpCholeskyWssmpKKT(); 00049 // Copy 00050 ClpCholeskyWssmpKKT(const ClpCholeskyWssmpKKT&); 00051 // Assignment 00052 ClpCholeskyWssmpKKT& operator=(const ClpCholeskyWssmpKKT&); 00054 virtual ClpCholeskyBase * clone() const ; 00056 00057 00058 private: 00061 00062 }; 00063 00064 #endif