# CbcSubProblem.hpp

Go to the documentation of this file.

    00001 // $Id: CbcSubProblem.hpp 1902 2013-04-10 16:58:16Z stefan $
    00002 // Copyright (C) 2002, 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 // Edwin 11/10/2009-- carved out of CbcBranchActual
    00007
    00008 #ifndef CbcSubProblem_H
    00009 #define CbcSubProblem_H
    00010
    00011 #ifdef COIN_HAS_CLP
    00012 #include "ClpSimplex.hpp"
    00013 #include "ClpNode.hpp"
    00014
    00018 class CoinWarmStartDiff;
    00019 class CbcSubProblem {
    00020
    00021 public:
    00022
    00024     CbcSubProblem ();
    00025
    00027     CbcSubProblem (const OsiSolverInterface * solver,
    00028                    const double * lowerBefore,
    00029                    const double * upperBefore,
    00030                    const unsigned char * status,
    00031                    int depth);
    00032
    00034     CbcSubProblem ( const CbcSubProblem &);
    00035
    00037     CbcSubProblem & operator= (const CbcSubProblem& rhs);
    00038
    00040     virtual ~CbcSubProblem ();
    00041
    00043   void takeOver ( CbcSubProblem &, bool cleanup);
    00045     void apply(OsiSolverInterface * model, int what = 3) const;
    00046
    00047 public:
    00049     double objectiveValue_;
    00051     double sumInfeasibilities_;
    00053     double branchValue_;
    00055     double djValue_;
    00058     int * variables_;
    00060     double * newBounds_;
    00062     mutable CoinWarmStartBasis * status_;
    00064     int depth_;
    00066     int numberChangedBounds_;
    00068     int numberInfeasibilities_;
    00076     int problemStatus_;
    00078     int branchVariable_;
    00079 };
    00080
    00081 #endif //COIN_HAS_CLP
    00082 #endif
    00083

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines