Changeset 1854 for trunk/Clp


Ignore:
Timestamp:
Apr 10, 2012 9:27:24 AM (7 years ago)
Author:
forrest
Message:

fix for mini presolve when given free rows

File:
1 edited

Legend:

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

    r1851 r1854  
    89098909      ClpCopyToMiniSave(stuff,reinterpret_cast<char *>(&thisInfo),sizeof(clpPresolveInfo1_4_8),
    89108910                        n,column+start,elementByRow+start);
     8911      // need to take out row
     8912      CoinBigIndex end=start+n;
     8913      rowLength[iRow]=0;
     8914      for (CoinBigIndex k=start;k<end;k++) {
     8915        int iColumn=column[k];
     8916        CoinBigIndex startColumn=columnStart[iColumn];
     8917        int n=columnLength[iColumn];
     8918        CoinBigIndex endColumn=startColumn+n;
     8919        columnLength[iColumn]=n-1;
     8920        for (CoinBigIndex j=startColumn;j<endColumn;j++) {
     8921          int jRow=row[j];
     8922          if (jRow==iRow) {
     8923            endColumn--;
     8924            row[j]=row[endColumn];
     8925            element[j]=element[endColumn];
     8926            break;
     8927          }
     8928        }
     8929        assert (endColumn==startColumn+n-1);
     8930      }
    89118931    }
    89128932  }
Note: See TracChangeset for help on using the changeset viewer.