| 6455 | } |
| 6456 | |
| 6457 | void HPresolve::computeIntermediateMatrix(std::vector<HighsInt>& flagRow, |
| 6458 | std::vector<HighsInt>& flagCol, |
| 6459 | size_t& numreductions) { |
| 6460 | shrinkProblemEnabled = false; |
| 6461 | HighsPostsolveStack stack; |
| 6462 | stack.initializeIndexMaps(flagRow.size(), flagCol.size()); |
| 6463 | setReductionLimit(numreductions); |
| 6464 | presolve(stack); |
| 6465 | numreductions = stack.numReductions(); |
| 6466 | |
| 6467 | toCSC(model->a_matrix_.value_, model->a_matrix_.index_, |
| 6468 | model->a_matrix_.start_); |
| 6469 | |
| 6470 | for (HighsInt i = 0; i != model->num_row_; ++i) |
| 6471 | flagRow[i] = 1 - rowDeleted[i]; |
| 6472 | for (HighsInt i = 0; i != model->num_col_; ++i) |
| 6473 | flagCol[i] = 1 - colDeleted[i]; |
| 6474 | } |
| 6475 | |
| 6476 | HPresolve::Result HPresolve::removeDependentEquations( |
| 6477 | HighsPostsolveStack& postsolve_stack) { |
no test coverage detected