| 1437 | } |
| 1438 | |
| 1439 | void HighsSparseMatrix::priceByRow(const bool quad_precision, HVector& result, |
| 1440 | const HVector& column, |
| 1441 | const HighsInt debug_report) const { |
| 1442 | assert(this->isRowwise()); |
| 1443 | if (debug_report >= kDebugReportAll) |
| 1444 | printf("\nHighsSparseMatrix::priceByRow:\n"); |
| 1445 | // Vanilla hyper-sparse row-wise PRICE. Set up parameters so that |
| 1446 | // priceByRowWithSwitch runs as vanilla hyper-sparse PRICE |
| 1447 | // Expected density always forces hyper-sparse PRICE |
| 1448 | const double expected_density = -kHighsInf; |
| 1449 | // Always start from first index of column |
| 1450 | HighsInt from_index = 0; |
| 1451 | // Never switch to standard row-wise PRICE |
| 1452 | const double switch_density = kHighsInf; |
| 1453 | this->priceByRowWithSwitch(quad_precision, result, column, expected_density, |
| 1454 | from_index, switch_density); |
| 1455 | } |
| 1456 | |
| 1457 | void HighsSparseMatrix::priceByRowWithSwitch( |
| 1458 | const bool quad_precision, HVector& result, const HVector& column, |
no test coverage detected