Clp  1.16.11
ClpCholeskyMumps.hpp
Go to the documentation of this file.
1 /* $Id: ClpCholeskyMumps.hpp 1692 2011-03-05 18:05:01Z stefan $ */
2 // Copyright (C) 2009, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 // This code is licensed under the terms of the Eclipse Public License (EPL).
5 
6 #ifndef ClpCholeskyMumps_H
7 #define ClpCholeskyMumps_H
8 #include "ClpCholeskyBase.hpp"
9 class ClpMatrixBase;
10 class ClpCholeskyDense;
11 
12 // unfortunately, DMUMPS_STRUC_C is an anonymous struct in MUMPS, so we define it to void for everyone outside ClpCholeskyMumps
13 // if this file is included by ClpCholeskyMumps.cpp, then after dmumps_c.h has been included, which defines MUMPS_VERSION
14 #ifndef MUMPS_VERSION
15 typedef void DMUMPS_STRUC_C;
16 #endif
17 
22 
23 public:
28  virtual int order(ClpInterior * model) ;
33  virtual int symbolic();
36  virtual int factorize(const double * diagonal, int * rowsDropped) ;
38  virtual void solve (double * region) ;
40 
41 
46  ClpCholeskyMumps(int denseThreshold = -1);
48  virtual ~ClpCholeskyMumps();
50  virtual ClpCholeskyBase * clone() const ;
52 
53 private:
54  // Mumps structure
55  DMUMPS_STRUC_C* mumps_;
56 
57  // Copy
59  // Assignment
60  ClpCholeskyMumps& operator=(const ClpCholeskyMumps&);
61 };
62 
63 #endif
ClpCholeskyBase::diagonal
longDouble * diagonal() const
Return diagonal.
Definition: ClpCholeskyBase.hpp:130
ClpCholeskyMumps::ClpCholeskyMumps
ClpCholeskyMumps(int denseThreshold=-1)
Constructor which has dense columns activated.
ClpCholeskyMumps::symbolic
virtual int symbolic()
Does Symbolic factorization given permutation.
ClpCholeskyBase
Base class for Clp Cholesky factorization Will do better factorization.
Definition: ClpCholeskyBase.hpp:53
ClpCholeskyDense
Definition: ClpCholeskyDense.hpp:14
ClpCholeskyBase::rowsDropped
char * rowsDropped() const
rowsDropped - which rows are gone
Definition: ClpCholeskyBase.hpp:98
ClpCholeskyMumps::clone
virtual ClpCholeskyBase * clone() const
Clone.
ClpCholeskyBase.hpp
ClpMatrixBase
Abstract base class for Clp Matrices.
Definition: ClpMatrixBase.hpp:38
ClpInterior
This solves LPs using interior point methods.
Definition: ClpInterior.hpp:72
ClpCholeskyMumps::order
virtual int order(ClpInterior *model)
Orders rows and saves pointer to matrix.and model.
DMUMPS_STRUC_C
void DMUMPS_STRUC_C
Definition: ClpCholeskyMumps.hpp:10
ClpCholeskyMumps::solve
virtual void solve(double *region)
Uses factorization to solve.
ClpCholeskyMumps::factorize
virtual int factorize(const double *diagonal, int *rowsDropped)
Factorize - filling in rowsDropped and returning number dropped.
ClpCholeskyMumps
Mumps class for Clp Cholesky factorization.
Definition: ClpCholeskyMumps.hpp:21
ClpCholeskyMumps::~ClpCholeskyMumps
virtual ~ClpCholeskyMumps()
Destructor