@@ -1844,7 +1844,7 @@ HighsStatus Highs::getIisInterfaceReturn(const HighsStatus return_status) {
18441844 // HighsIis::row_index_ have HighsIis::col_bound_ and
18451845 // HighsIis::row_bound_ values set to kIisStatusNotInConflict
18461846 assert (this ->iis_ .valid_ );
1847- // If the IIS process has identified infeasibility, then set
1847+ // If the IIS process has identified infeasibility, then set
18481848 if (this ->iis_ .status_ >= kIisModelStatusInfeasible )
18491849 this ->model_status_ = HighsModelStatus::kInfeasible ;
18501850
@@ -1908,7 +1908,7 @@ HighsStatus Highs::getIisInterface() {
19081908 if (this ->iis_ .valid_ ) return this ->getIisInterfaceReturn (HighsStatus::kOk );
19091909 this ->iis_ .clear ();
19101910 // Check for trivial IIS: empty infeasible row or inconsistent bounds
1911- if (this ->iis_ .trivial (lp, options_))
1911+ if (this ->iis_ .trivial (lp, options_))
19121912 return this ->getIisInterfaceReturn (HighsStatus::kOk );
19131913 HighsInt num_row = lp.num_row_ ;
19141914 if (num_row == 0 ) {
@@ -2008,7 +2008,7 @@ HighsStatus Highs::getIisInterface() {
20082008 // A subset of infeasible rows, so at least have a reducible
20092009 // infeasibility set
20102010 this ->iis_ .status_ = kIisModelStatusReducible ;
2011- if (!(kIisStrategyIrreducible & this ->options_ .iis_strategy ))
2011+ if (!(kIisStrategyIrreducible & this ->options_ .iis_strategy ))
20122012 return this ->getIisInterfaceReturn (return_status);
20132013 // Attempt to compute a true IIS
20142014 //
@@ -2047,9 +2047,8 @@ HighsStatus Highs::getIisInterface() {
20472047}
20482048
20492049HighsStatus Highs::elasticityFilterReturn (
2050- const HighsStatus return_status,
2051- const std::string& original_model_name, const HighsInt original_num_col,
2052- const HighsInt original_num_row,
2050+ const HighsStatus return_status, const std::string& original_model_name,
2051+ const HighsInt original_num_col, const HighsInt original_num_row,
20532052 const std::vector<double >& original_col_cost,
20542053 const std::vector<double >& original_col_lower,
20552054 const std::vector<double > original_col_upper,
@@ -2447,6 +2446,7 @@ HighsStatus Highs::elasticityFilter(const double global_lower_penalty,
24472446
24482447 // Solve the elastic LP
24492448 run_status = solveLp ();
2449+ this ->writeSolution (" " , 1 );
24502450
24512451 if (run_status != HighsStatus::kOk )
24522452 return elasticityFilterReturn (run_status, original_model_name,
@@ -2458,10 +2458,10 @@ HighsStatus Highs::elasticityFilter(const double global_lower_penalty,
24582458 assert (this ->model_status_ == HighsModelStatus::kOptimal ||
24592459 this ->model_status_ == HighsModelStatus::kUnbounded );
24602460 this ->iis_ .valid_ = true ;
2461- this ->iis_ .status_ = this ->info_ .objective_function_value > 0 ?
2462- kIisModelStatusInfeasible :
2463- kIisModelStatusFeasible ;
2464- if (!get_iis)
2461+ this ->iis_ .status_ = this ->info_ .objective_function_value > 0
2462+ ? kIisModelStatusInfeasible
2463+ : kIisModelStatusFeasible ;
2464+ if (!get_iis)
24652465 return elasticityFilterReturn (HighsStatus::kOk , original_model_name,
24662466 original_num_col, original_num_row,
24672467 original_col_cost, original_col_lower,
@@ -2520,10 +2520,10 @@ HighsStatus Highs::elasticityFilter(const double global_lower_penalty,
25202520 }
25212521 HighsStatus run_status = solveLp ();
25222522 if (run_status != HighsStatus::kOk )
2523- return elasticityFilterReturn (
2524- run_status, original_model_name, original_num_col,
2525- original_num_row, original_col_cost, original_col_lower,
2526- original_col_upper, original_integrality);
2523+ return elasticityFilterReturn (run_status, original_model_name,
2524+ original_num_col, original_num_row ,
2525+ original_col_cost, original_col_lower,
2526+ original_col_upper, original_integrality);
25272527 if (kIisDevReport ) this ->writeSolution (" " , kSolutionStylePretty );
25282528 HighsModelStatus model_status = this ->getModelStatus ();
25292529 if (model_status == HighsModelStatus::kInfeasible ) break ;
@@ -2585,11 +2585,11 @@ HighsStatus Highs::elasticityFilter(const double global_lower_penalty,
25852585
25862586 iis.valid_ = true ;
25872587 iis.strategy_ = this ->options_ .iis_strategy ;
2588- if (iis.status_ == kIisModelStatusFeasible )
2589- return elasticityFilterReturn (
2590- HighsStatus:: kOk , original_model_name, original_num_col,
2591- original_num_row, original_col_cost, original_col_lower,
2592- original_col_upper, original_integrality);
2588+ if (iis.status_ == kIisModelStatusFeasible )
2589+ return elasticityFilterReturn (HighsStatus:: kOk , original_model_name,
2590+ original_num_col, original_num_row ,
2591+ original_col_cost, original_col_lower,
2592+ original_col_upper, original_integrality);
25932593 // Model is infeasible because there are (at least) a positive
25942594 // number of rows in the infeasibility set. Hence the IIS status is
25952595 // reducible
@@ -2663,10 +2663,10 @@ HighsStatus Highs::elasticityFilter(const double global_lower_penalty,
26632663 }
26642664 assert (iis.row_bound_ .size () == iis.row_index_ .size ());
26652665 for (HighsInt iX = 0 ; iX < num_iis_row; iX++) assert (iis.row_bound_ [iX] >= 0 );
2666- return elasticityFilterReturn (
2667- HighsStatus:: kOk , original_model_name, original_num_col,
2668- original_num_row, original_col_cost, original_col_lower,
2669- original_col_upper, original_integrality);
2666+ return elasticityFilterReturn (HighsStatus:: kOk , original_model_name,
2667+ original_num_col, original_num_row ,
2668+ original_col_cost, original_col_lower,
2669+ original_col_upper, original_integrality);
26702670}
26712671
26722672HighsStatus Highs::extractIis (HighsInt& num_iis_col, HighsInt& num_iis_row,
0 commit comments