Ignore:
Timestamp:
Jun 26, 2007 5:59:58 AM (12 years ago)
Author:
forrest
Message:

update branches/devel for threads

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/devel/Cbc/src/CbcLinked.hpp

    r604 r642  
    1616#ifdef COIN_HAS_LINK
    1717#include "OsiClpSolverInterface.hpp"
     18#include "CbcFathom.hpp"
    1819class CbcModel;
    1920class CoinPackedMatrix;
     
    2122class OsiObject;
    2223class CglStored;
    23 //#############################################################################
    24 
    2524/**
    2625   
     
    2928*/
    3029
    31 class OsiSolverLink : public OsiClpSolverInterface {
     30class OsiSolverLink : public CbcOsiSolver {
    3231 
    3332public:
     
    6362      heuristic solution
    6463      Returns solution array
     64      mode -
     65      0 just get continuous
     66      1 round and try normal bab
     67      2 use defaultBound_ to bound integer variables near current solution
    6568  */
    6669  double * heuristicSolution(int numberPasses,double deltaTolerance,int mode);
     
    163166  inline int integerPriority() const
    164167  { return integerPriority_;};
     168  /// Objective transfer variable if one
     169  inline int objectiveVariable() const
     170  { return objectiveVariable_;}
    165171  /// Set biLinear priority
    166172  inline void setBiLinearPriority(int value)
     
    169175  inline int biLinearPriority() const
    170176  { return biLinearPriority_;};
    171   /// Set Cbc Model
    172   inline void setCbcModel(CbcModel * model)
    173   { cbcModel_=model;};
    174177  /// Return CoinModel
    175178  inline const CoinModel * coinModel() const
     
    177180  /// Set all biLinear priorities on x-x variables
    178181  void setBiLinearPriorities(int value, double meshSize=1.0);
     182  /** Set options and priority on all or some biLinear variables
     183      1 - on I-I
     184      2 - on I-x
     185      4 - on x-x
     186      or combinations.
     187      -1 means leave (for priority value and strategy value)
     188  */
     189  void setBranchingStrategyOnVariables(int strategyValue, int priorityValue=-1,
     190                                       int mode=7);
    179191  /// Set all mesh sizes on x-x variables
    180192  void setMeshSizes(double value);
     
    212224  /// Copy of quadratic model if one
    213225  ClpSimplex * quadraticModel_;
    214   /// Pointer back to CbcModel
    215   CbcModel * cbcModel_;
    216226  /// Number of rows with nonLinearities
    217227  int numberNonLinearRows_;
     
    681691  */
    682692  OsiBiLinear (OsiSolverInterface * solver, int xColumn,
     693               int yColumn, int xyRow, double coefficient,
     694               double xMesh, double yMesh,
     695               int numberExistingObjects=0,const OsiObject ** objects=NULL );
     696 
     697  /** Useful constructor -
     698      This Adds in rows and variables to construct valid Linked Ordered Set
     699      Adds extra constraints to match other x/y
     700      So note not const model
     701  */
     702  OsiBiLinear (CoinModel * coinModel, int xColumn,
    683703               int yColumn, int xyRow, double coefficient,
    684704               double xMesh, double yMesh,
     
    793813      next bit
    794814      8 set to say don't use in feasible region
     815      next bit
     816      16 set to say - Always satisfied !!
    795817  */
    796818  inline int branchingStrategy() const
     
    857879      next bit
    858880      8 set to say don't use in feasible region
     881      next bit
     882      16 set to say - Always satisfied !!
    859883  */
    860884  int branchingStrategy_;
Note: See TracChangeset for help on using the changeset viewer.