MCPcopy Create free account
hub / github.com/ERGO-Code/HiGHS / update

Method update

highs/util/HFactor.cpp:516–531  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

514}
515
516void HFactor::update(HVector* aq, HVector* ep, HighsInt* iRow, HighsInt* hint) {
517 // Updating implies a change of basis. Since the refactorizaion info
518 // no longer corresponds to the current basis, it must be
519 // invalidated
520 this->refactor_info_.clear();
521 // Special case
522 if (aq->next) {
523 updateCFT(aq, ep, iRow);
524 return;
525 }
526
527 if (update_method == kUpdateMethodFt) updateFT(aq, ep, *iRow);
528 if (update_method == kUpdateMethodPf) updatePF(aq, *iRow, hint);
529 if (update_method == kUpdateMethodMpf) updateMPF(aq, ep, *iRow, hint);
530 if (update_method == kUpdateMethodApf) updateAPF(aq, ep, *iRow);
531}
532
533bool HFactor::setPivotThreshold(const double new_pivot_threshold) {
534 if (new_pivot_threshold < kMinPivotThreshold) return false;

Callers 1

iterateFunction · 0.45

Calls 1

clearMethod · 0.45

Tested by 1

iterateFunction · 0.36