source: trunk/Clp/src/ClpCholeskyWssmp.hpp @ 2385

Last change on this file since 2385 was 2385, checked in by unxusr, 4 months ago

formatting

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 1.7 KB
Line 
1/* $Id: ClpCholeskyWssmp.hpp 2385 2019-01-06 19:43:06Z unxusr $ */
2// Copyright (C) 2003, 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 ClpCholeskyWssmp_H
7#define ClpCholeskyWssmp_H
8
9#include "ClpCholeskyBase.hpp"
10class ClpMatrixBase;
11class ClpCholeskyDense;
12
13/** Wssmp class for Clp Cholesky factorization
14
15*/
16class ClpCholeskyWssmp : public ClpCholeskyBase {
17
18public:
19  /**@name Virtual methods that the derived classes provides  */
20  //@{
21  /** Orders rows and saves pointer to matrix.and model.
22      Returns non-zero if not enough memory */
23  virtual int order(ClpInterior *model);
24  /** Does Symbolic factorization given permutation.
25         This is called immediately after order.  If user provides this then
26         user must provide factorize and solve.  Otherwise the default factorization is used
27         returns non-zero if not enough memory */
28  virtual int symbolic();
29  /** Factorize - filling in rowsDropped and returning number dropped.
30         If return code negative then out of memory */
31  virtual int factorize(const double *diagonal, int *rowsDropped);
32  /** Uses factorization to solve. */
33  virtual void solve(double *region);
34  //@}
35
36  /**@name Constructors, destructor */
37  //@{
38  /** Constructor which has dense columns activated.
39         Default is off. */
40  ClpCholeskyWssmp(int denseThreshold = -1);
41  /** Destructor  */
42  virtual ~ClpCholeskyWssmp();
43  // Copy
44  ClpCholeskyWssmp(const ClpCholeskyWssmp &);
45  // Assignment
46  ClpCholeskyWssmp &operator=(const ClpCholeskyWssmp &);
47  /// Clone
48  virtual ClpCholeskyBase *clone() const;
49  //@}
50
51private:
52  /**@name Data members */
53  //@{
54  //@}
55};
56
57#endif
58
59/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
60*/
Note: See TracBrowser for help on using the repository browser.