diff --git a/src/CglPreProcess/CglPreProcess.cpp b/src/CglPreProcess/CglPreProcess.cpp index 8b596c51..82ea633e 100644 --- a/src/CglPreProcess/CglPreProcess.cpp +++ b/src/CglPreProcess/CglPreProcess.cpp @@ -6417,7 +6417,7 @@ CglPreProcess::modified(OsiSolverInterface *model, lower1[1] = CoinMax(lower1[1], u / el[1][1]); upper1[1] = CoinMin(upper1[1], l / el[1][1]); } - if (CoinMin(lower1[0], lower1[1]) > colLower[1]) { + if (CoinMin(lower1[0], lower1[1]) > colLower[1] + 1.0e-6) { #if CBC_USEFUL_PRINTING > 0 printf("for jColumn1 0-bounds %g,%g 1-bounds %g,%g\n", lower1[0], upper1[0], lower1[1], upper1[1]); @@ -6432,7 +6432,7 @@ CglPreProcess::modified(OsiSolverInterface *model, colLower[1] = value; newModel->setColLower(jColumn1, value); } - if (CoinMax(upper1[0], upper1[1]) < colUpper[1]) { + if (CoinMax(upper1[0], upper1[1]) < colUpper[1] - 1.0e-6) { #if CBC_USEFUL_PRINTING > 0 printf("for jColumn1 0-bounds %g,%g 1-bounds %g,%g\n", lower1[0], upper1[0], lower1[1], upper1[1]); @@ -6447,7 +6447,7 @@ CglPreProcess::modified(OsiSolverInterface *model, colUpper[1] = value; newModel->setColUpper(jColumn1, value); } - if (lower1[0] > colUpper[1] || upper1[0] < colLower[1]) { + if (lower1[0] > colUpper[1] + 1.0e-6 || upper1[0] < colLower[1] - 1.0e-6) { #if CBC_USEFUL_PRINTING > 0 printf("for jColumn1 0-bounds %g,%g 1-bounds %g,%g\n", lower1[0], upper1[0], lower1[1], upper1[1]); @@ -6457,7 +6457,7 @@ CglPreProcess::modified(OsiSolverInterface *model, newModel->setColLower(iColumn, 1.0); nMarkRow = 0; // stop looking } - if (lower1[1] > colUpper[1] || upper1[1] < colLower[1]) { + if (lower1[1] > colUpper[1] + 1.0e-6 || upper1[1] < colLower[1] - 1.0e-6) { #if CBC_USEFUL_PRINTING > 0 printf("for jColumn1 0-bounds %g,%g 1-bounds %g,%g\n", lower1[0], upper1[0], lower1[1], upper1[1]); @@ -6467,8 +6467,7 @@ CglPreProcess::modified(OsiSolverInterface *model, newModel->setColLower(iColumn, 0.0); nMarkRow = 0; // stop looking } - if (colLower[0] > colUpper[0] + 1.0e-6 - || colLower[1] > colUpper[1] + 1.0e-6) { + if (colLower[0] > colUpper[0] + 1.0e-6 || colLower[1] > colUpper[1] + 1.0e-6) { #if CBC_USEFUL_PRINTING > 0 printf("** infeasible\n"); #endif