| 316 | } |
| 317 | |
| 318 | bool solveSubproblem(Quadratic& idata, const ICrashOptions& options) { |
| 319 | switch (options.strategy) { |
| 320 | case ICrashStrategy::kUpdatePenalty: |
| 321 | case ICrashStrategy::kUpdateAdmm: |
| 322 | case ICrashStrategy::kICA: { |
| 323 | assert(!options.exact); |
| 324 | solveSubproblemICA(idata, options); |
| 325 | break; |
| 326 | } |
| 327 | case ICrashStrategy::kPenalty: { |
| 328 | assert(!options.exact); |
| 329 | solveSubproblemQP(idata, options); |
| 330 | break; |
| 331 | } |
| 332 | default: { |
| 333 | // std::cout << "ICrashError: Not implemented yet." << |
| 334 | // std::endl; |
| 335 | highsLogUser(options.log_options, HighsLogType::kInfo, |
| 336 | "ICrashError: not implemented yet.\n"); |
| 337 | return false; |
| 338 | } |
| 339 | } |
| 340 | return true; |
| 341 | } |
| 342 | |
| 343 | void reportSubproblem(const ICrashOptions options, const Quadratic& idata, |
| 344 | const int iteration) { |
no test coverage detected