Changeset 1493 for trunk/Cbc/src/OsiCbc


Ignore:
Timestamp:
Jul 30, 2010 2:40:39 PM (9 years ago)
Author:
lou
Message:

Change signature of getDualRays from (int) to (int,bool) to allow choice of
partial (row components) or full (row and column components) dual ray. Matches
Osi trunk revision 1551.

Location:
trunk/Cbc/src/OsiCbc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Cbc/src/OsiCbc/OsiCbcSolverInterface.cpp

    r1464 r1493  
    233233
    234234//------------------------------------------------------------------
    235 std::vector<double*> OsiCbcSolverInterface::getDualRays(int maxNumRays) const
    236 {
    237   return modelPtr_->solver()->getDualRays(maxNumRays);
     235std::vector<double*> OsiCbcSolverInterface::getDualRays(int maxNumRays,
     236                                                        bool fullRay) const
     237{
     238  return modelPtr_->solver()->getDualRays(maxNumRays,fullRay);
    238239}
    239240//------------------------------------------------------------------
  • trunk/Cbc/src/OsiCbc/OsiCbcSolverInterface.hpp

    r1464 r1493  
    256256  /** Get as many dual rays as the solver can provide. (In case of proven
    257257      primal infeasibility there should be at least one.)
    258      
     258
     259      The first getNumRows() ray components will always be associated with
     260      the row duals (as returned by getRowPrice()). If \c fullRay is true,
     261      the final getNumCols() entries will correspond to the ray components
     262      associated with the nonbasic variables. If the full ray is requested
     263      and the method cannot provide it, it will throw an exception.
     264
    259265      <strong>NOTE for implementers of solver interfaces:</strong> <br>
    260266      The double pointers in the vector should point to arrays of length
     
    265271      vector using delete[].
    266272  */
    267   virtual std::vector<double*> getDualRays(int maxNumRays) const;
     273  virtual std::vector<double*> getDualRays(int maxNumRays,
     274                                           bool fullRay = false) const;
    268275  /** Get as many primal rays as the solver can provide. (In case of proven
    269276      dual infeasibility there should be at least one.)
Note: See TracChangeset for help on using the changeset viewer.