MCPcopy Create free account
hub / github.com/cvanaret/Uno / termination

Method termination

interfaces/Python/cpp_classes/UnoSolverWrapper.cpp:30–43  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

28 }
29
30 bool UnopyUserCallbacks::termination(const Vector<double>& primals, const Multipliers& multipliers,
31 double objective_multiplier, double primal_feasibility_residual, double stationarity_residual,
32 double complementarity_residual) {
33 if (this->termination_callback.has_value()) {
34 const auto primals_py = to_const_array(primals.data(), primals.size());
35 const auto lower_bound_multipliers_py = to_const_array(multipliers.lower_bounds.data(), multipliers.lower_bounds.size());
36 const auto upper_bound_multipliers_py = to_const_array(multipliers.upper_bounds.data(), multipliers.upper_bounds.size());
37 const auto constraint_multipliers_py = to_const_array(multipliers.constraints.data(), multipliers.constraints.size());
38 return (*this->termination_callback)(primals_py, lower_bound_multipliers_py, upper_bound_multipliers_py,
39 constraint_multipliers_py, objective_multiplier, primal_feasibility_residual, stationarity_residual,
40 complementarity_residual);
41 }
42 return false;
43 }
44
45 UnoSolverWrapper::UnoSolverWrapper() {
46 DefaultOptions::load(this->options);

Callers

nothing calls this directly

Calls 3

to_const_arrayFunction · 0.85
dataMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected