Google OR-Tools
v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
sos2_constraint.cc
Go to the documentation of this file.
1
// Copyright 2010-2024 Google LLC
2
// Licensed under the Apache License, Version 2.0 (the "License");
3
// you may not use this file except in compliance with the License.
4
// You may obtain a copy of the License at
5
//
6
// http://www.apache.org/licenses/LICENSE-2.0
7
//
8
// Unless required by applicable law or agreed to in writing, software
9
// distributed under the License is distributed on an "AS IS" BASIS,
10
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
// See the License for the specific language governing permissions and
12
// limitations under the License.
13
14
#include "
ortools/math_opt/constraints/sos/sos2_constraint.h
"
15
16
#include "
ortools/base/strong_int.h
"
17
#include "
ortools/math_opt/cpp/variable_and_expressions.h
"
18
#include "
ortools/math_opt/storage/linear_expression_data.h
"
19
#include "
ortools/math_opt/storage/model_storage.h
"
20
#include "
ortools/math_opt/storage/sparse_coefficient_map.h
"
21
22
namespace
operations_research::math_opt
{
23
24
LinearExpression
Sos2Constraint::Expression
(
int
index
)
const
{
25
const
LinearExpressionData
& storage_expr =
26
storage_->constraint_data(id_).expression(
index
);
27
LinearExpression
out_expr = storage_expr.
offset
;
28
for
(
const
auto
[var_id, coeff] : storage_expr.
coeffs
.
terms
()) {
29
out_expr += coeff *
Variable
(storage_, var_id);
30
}
31
return
out_expr;
32
}
33
34
}
// namespace operations_research::math_opt
operations_research::math_opt::LinearExpression
Definition
variable_and_expressions.h:229
operations_research::math_opt::Sos2Constraint::Expression
LinearExpression Expression(int index) const
Definition
sos2_constraint.cc:24
operations_research::math_opt::SparseCoefficientMap::terms
const absl::flat_hash_map< VariableId, double > & terms() const
Definition
sparse_coefficient_map.h:46
operations_research::math_opt::Variable
Definition
variable_and_expressions.h:124
linear_expression_data.h
index
int index
Definition
local_search.cc:2838
model_storage.h
operations_research::math_opt
An object oriented wrapper for quadratic constraints in ModelStorage.
Definition
gurobi_isv.cc:28
sos2_constraint.h
sparse_coefficient_map.h
strong_int.h
operations_research::math_opt::LinearExpressionData
Definition
linear_expression_data.h:29
operations_research::math_opt::LinearExpressionData::offset
double offset
Definition
linear_expression_data.h:37
operations_research::math_opt::LinearExpressionData::coeffs
SparseCoefficientMap coeffs
Definition
linear_expression_data.h:36
variable_and_expressions.h
ortools
math_opt
constraints
sos
sos2_constraint.cc
Generated by
1.12.0