Clp trunk
ClpCholeskyTaucs.hpp
Go to the documentation of this file.
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 ClpCholeskyTaucs_H
00007 #define ClpCholeskyTaucs_H
00008 #include "taucs.h"
00009 #include "ClpCholeskyBase.hpp"
00010 class ClpMatrixBase;
00011 
00012 
00043 class ClpCholeskyTaucs : public ClpCholeskyBase {
00044 
00045 public:
00050      virtual int order(ClpInterior * model) ;
00052      virtual int symbolic();
00055      virtual int factorize(const double * diagonal, int * rowsDropped) ;
00057      virtual void solve (double * region) ;
00059 
00060 
00064      ClpCholeskyTaucs();
00066      virtual ~ClpCholeskyTaucs();
00067      // Copy
00068      ClpCholeskyTaucs(const ClpCholeskyTaucs&);
00069      // Assignment
00070      ClpCholeskyTaucs& operator=(const ClpCholeskyTaucs&);
00072      virtual ClpCholeskyBase * clone() const ;
00074 
00075 
00076 private:
00079 
00080      taucs_ccs_matrix * matrix_;
00082      void * factorization_;
00084      double * sparseFactorT_;
00086      CoinBigIndex * choleskyStartT_;
00088      int * choleskyRowT_;
00090      CoinBigIndex sizeFactorT_;
00092      ClpMatrixBase * rowCopyT_;
00094 };
00095 
00096 #endif
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines