36 const RowIndex transposed_slack =
ColToRowIndex(slack_variable);
41 for (
const auto& entry : sparse_row) {
42 if (transposed_slack == entry.index())
continue;
44 (*values)[
RowToColIndex(entry.index())] * entry.coefficient();
46 (*values)[slack_variable] = -activation;
54 GlopParameters params;
55 Scale(lp, scaler, params.scaling_method());
61 GlopParameters::ScalingAlgorithm scaling_method) {
62 scaler->
Init(&lp->matrix_);
66 &lp->objective_coefficients_);
68 &lp->variable_upper_bounds_);
70 &lp->variable_lower_bounds_);
73 lp->transpose_matrix_is_consistent_ =
false;
79 lp, &scaler_, operations_research::glop::GlopParameters::DEFAULT);
86 bound_scaling_factor_ = 1.0;
87 objective_scaling_factor_ = 1.0;
126 const ColIndex num_rows = left_inverse->
values.
size();
127 for (ColIndex
col(0);
col < num_rows; ++
col) {
147 const RowIndex num_rows = right_inverse->
values.
size();
148 for (RowIndex
row(0);
row < num_rows; ++
row) {