Changeset 1616


Ignore:
Timestamp:
Nov 1, 2010 9:05:15 AM (9 years ago)
Author:
forrest
Message:

for partial skip of etas

Location:
trunk/Clp/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Clp/src/ClpFactorization.cpp

    r1525 r1616  
    11671167     goSmallThreshold_ = rhs.goSmallThreshold_;
    11681168     int goDense = 0;
     1169#ifdef CLP_REUSE_ETAS
     1170     model_=rhs.model_;
     1171#endif
    11691172     if (denseIfSmaller > 0 && denseIfSmaller <= goDenseThreshold_) {
    11701173          CoinDenseFactorization * denseR =
     
    12921295#endif
    12931296          forceB_ = rhs.forceB_;
     1297#ifdef CLP_REUSE_ETAS
     1298          model_=rhs.model_;
     1299#endif
    12941300          goOslThreshold_ = rhs.goOslThreshold_;
    12951301          goDenseThreshold_ = rhs.goDenseThreshold_;
     
    13971403                              int solveType, bool valuesPass)
    13981404{
     1405#ifdef CLP_REUSE_ETAS
     1406     model_= model;
     1407#endif
    13991408     //if ((model->specialOptions()&16384))
    14001409     //printf("factor at %d iterations\n",model->numberIterations());
     
    22772286               } else {
    22782287                    bool tab = coinFactorizationB_->wantsTableauColumn();
    2279                     int numberIterations = model->numberIterations();
    2280                     coinFactorizationB_->setUsefulInformation(&numberIterations, 1);
     2288#ifdef CLP_REUSE_ETAS
     2289                    int tempInfo[2];
     2290                    tempInfo[1] = model_->sequenceOut();
     2291#else
     2292                    int tempInfo[1];
     2293#endif
     2294                    tempInfo[0] = model->numberIterations();
     2295                    coinFactorizationB_->setUsefulInformation(tempInfo, 1);
    22812296                    returnCode =
    22822297                         coinFactorizationB_->replaceColumn(tab ? tableauColumn : regionSparse,
     
    23642379               coinFactorizationA_->setCollectStatistics(false);
    23652380          } else {
    2366                returnCode = coinFactorizationB_->updateColumnFT(regionSparse,
     2381#ifdef CLP_REUSE_ETAS
     2382              int tempInfo[2];
     2383              tempInfo[0] = model_->numberIterations();
     2384              tempInfo[1] = model_->sequenceIn();
     2385              coinFactorizationB_->setUsefulInformation(tempInfo, 2);
     2386#endif
     2387              returnCode = coinFactorizationB_->updateColumnFT(regionSparse,
    23672388                            regionSparse2);
    23682389          }
     
    25562577               }
    25572578#else
    2558 returnCode = coinFactorizationB_->updateTwoColumnsFT(regionSparse1,
    2559              regionSparse2,
    2560              regionSparse3,
    2561              noPermuteRegion3);
     2579#ifdef CLP_REUSE_ETAS
     2580                    int tempInfo[2];
     2581                    tempInfo[0] = model_->numberIterations();
     2582                    tempInfo[1] = model_->sequenceIn();
     2583                    coinFactorizationB_->setUsefulInformation(tempInfo, 3);
     2584#endif
     2585                    returnCode =
     2586                      coinFactorizationB_->updateTwoColumnsFT(
     2587                                                              regionSparse1,
     2588                                                              regionSparse2,
     2589                                                              regionSparse3,
     2590                                                              noPermuteRegion3);
    25622591#endif
    25632592          }
  • trunk/Clp/src/ClpFactorization.hpp

    r1525 r1616  
    1818#ifdef CLP_MULTIPLE_FACTORIZATIONS
    1919#include "CoinDenseFactorization.hpp"
     20#include "ClpSimplex.hpp"
    2021#endif
    2122#ifndef COIN_FAST_CODE
     
    405406     /// Pointer to CoinOtherFactorization
    406407     CoinOtherFactorization * coinFactorizationB_;
     408#ifdef CLP_REUSE_ETAS
     409     /// Pointer to model
     410     ClpSimplex * model_;
     411#endif
    407412     /// If nonzero force use of 1,dense 2,small 3,osl
    408413     int forceB_;
Note: See TracChangeset for help on using the changeset viewer.