OR-Tools  9.6
QuadraticExpression

Detailed Description

Definition at line 733 of file variable_and_expressions.h.

Public Member Functions

 QuadraticExpression ()=default
 
 QuadraticExpression (std::initializer_list< QuadraticTerm > quadratic_terms, std::initializer_list< LinearTerm > linear_terms, double offset)
 
 QuadraticExpression (double offset)
 
 QuadraticExpression (Variable variable)
 
 QuadraticExpression (const LinearTerm &term)
 
 QuadraticExpression (LinearExpression expr)
 
 QuadraticExpression (const QuadraticTerm &term)
 
double offset () const
 
const VariableMap< double > & linear_terms () const
 
const QuadraticTermMap< double > & quadratic_terms () const
 
const absl::flat_hash_map< VariableId, double > & raw_linear_terms () const
 
const absl::flat_hash_map< QuadraticProductId, double > & raw_quadratic_terms () const
 
QuadraticExpressionoperator+= (double value)
 
QuadraticExpressionoperator+= (Variable variable)
 
QuadraticExpressionoperator+= (const LinearTerm &term)
 
QuadraticExpressionoperator+= (const LinearExpression &expr)
 
QuadraticExpressionoperator+= (const QuadraticTerm &term)
 
QuadraticExpressionoperator+= (const QuadraticExpression &expr)
 
QuadraticExpressionoperator-= (double value)
 
QuadraticExpressionoperator-= (Variable variable)
 
QuadraticExpressionoperator-= (const LinearTerm &term)
 
QuadraticExpressionoperator-= (const LinearExpression &expr)
 
QuadraticExpressionoperator-= (const QuadraticTerm &term)
 
QuadraticExpressionoperator-= (const QuadraticExpression &expr)
 
QuadraticExpressionoperator*= (double value)
 
QuadraticExpressionoperator/= (double value)
 
template<typename Iterable >
void AddSum (const Iterable &items)
 
template<typename LeftIterable , typename RightIterable >
void AddInnerProduct (const LeftIterable &left, const RightIterable &right)
 
double Evaluate (const VariableMap< double > &variable_values) const
 
double EvaluateWithDefaultZero (const VariableMap< double > &variable_values) const
 
const ModelStoragestorage () const
 

Static Public Member Functions

template<typename Iterable >
static QuadraticExpression Sum (const Iterable &items)
 
template<typename LeftIterable , typename RightIterable >
static QuadraticExpression InnerProduct (const LeftIterable &left, const RightIterable &right)
 

Constructor & Destructor Documentation

◆ QuadraticExpression() [1/7]

QuadraticExpression ( )
default

◆ QuadraticExpression() [2/7]

QuadraticExpression ( std::initializer_list< QuadraticTerm quadratic_terms,
std::initializer_list< LinearTerm linear_terms,
double  offset 
)
inline

Definition at line 2060 of file variable_and_expressions.h.

◆ QuadraticExpression() [3/7]

QuadraticExpression ( double  offset)
inline

Definition at line 2076 of file variable_and_expressions.h.

◆ QuadraticExpression() [4/7]

QuadraticExpression ( Variable  variable)
inline

Definition at line 2079 of file variable_and_expressions.h.

◆ QuadraticExpression() [5/7]

QuadraticExpression ( const LinearTerm term)
inline

Definition at line 2082 of file variable_and_expressions.h.

◆ QuadraticExpression() [6/7]

Definition at line 2085 of file variable_and_expressions.h.

◆ QuadraticExpression() [7/7]

QuadraticExpression ( const QuadraticTerm term)
inline

Definition at line 2093 of file variable_and_expressions.h.

Member Function Documentation

◆ AddInnerProduct()

void AddInnerProduct ( const LeftIterable &  left,
const RightIterable &  right 
)
inline

Definition at line 2640 of file variable_and_expressions.h.

◆ AddSum()

void AddSum ( const Iterable &  items)
inline

Definition at line 2626 of file variable_and_expressions.h.

◆ Evaluate()

double Evaluate ( const VariableMap< double > &  variable_values) const

Definition at line 137 of file variable_and_expressions.cc.

◆ EvaluateWithDefaultZero()

double EvaluateWithDefaultZero ( const VariableMap< double > &  variable_values) const

Definition at line 156 of file variable_and_expressions.cc.

◆ InnerProduct()

QuadraticExpression InnerProduct ( const LeftIterable &  left,
const RightIterable &  right 
)
inlinestatic

Definition at line 2646 of file variable_and_expressions.h.

◆ linear_terms()

const VariableMap< double > & linear_terms ( ) const
inline

Definition at line 2115 of file variable_and_expressions.h.

◆ offset()

double offset ( ) const
inline

Definition at line 2113 of file variable_and_expressions.h.

◆ operator*=()

QuadraticExpression & operator*= ( double  value)
inline

Definition at line 2592 of file variable_and_expressions.h.

◆ operator+=() [1/6]

QuadraticExpression & operator+= ( const LinearExpression expr)
inline

Definition at line 2519 of file variable_and_expressions.h.

◆ operator+=() [2/6]

QuadraticExpression & operator+= ( const LinearTerm term)
inline

Definition at line 2513 of file variable_and_expressions.h.

◆ operator+=() [3/6]

QuadraticExpression & operator+= ( const QuadraticExpression expr)
inline

Definition at line 2534 of file variable_and_expressions.h.

◆ operator+=() [4/6]

QuadraticExpression & operator+= ( const QuadraticTerm term)
inline

Definition at line 2527 of file variable_and_expressions.h.

◆ operator+=() [5/6]

QuadraticExpression & operator+= ( double  value)
inline

Definition at line 2501 of file variable_and_expressions.h.

◆ operator+=() [6/6]

QuadraticExpression & operator+= ( Variable  variable)
inline

Definition at line 2507 of file variable_and_expressions.h.

◆ operator-=() [1/6]

QuadraticExpression & operator-= ( const LinearExpression expr)
inline

Definition at line 2561 of file variable_and_expressions.h.

◆ operator-=() [2/6]

QuadraticExpression & operator-= ( const LinearTerm term)
inline

Definition at line 2555 of file variable_and_expressions.h.

◆ operator-=() [3/6]

QuadraticExpression & operator-= ( const QuadraticExpression expr)
inline

Definition at line 2576 of file variable_and_expressions.h.

◆ operator-=() [4/6]

QuadraticExpression & operator-= ( const QuadraticTerm term)
inline

Definition at line 2569 of file variable_and_expressions.h.

◆ operator-=() [5/6]

QuadraticExpression & operator-= ( double  value)
inline

Definition at line 2543 of file variable_and_expressions.h.

◆ operator-=() [6/6]

QuadraticExpression & operator-= ( Variable  variable)
inline

Definition at line 2549 of file variable_and_expressions.h.

◆ operator/=()

QuadraticExpression & operator/= ( double  value)
inline

Definition at line 2612 of file variable_and_expressions.h.

◆ quadratic_terms()

const QuadraticTermMap< double > & quadratic_terms ( ) const
inline

Definition at line 2119 of file variable_and_expressions.h.

◆ raw_linear_terms()

const absl::flat_hash_map< VariableId, double > & raw_linear_terms ( ) const
inline

Definition at line 2124 of file variable_and_expressions.h.

◆ raw_quadratic_terms()

const absl::flat_hash_map< QuadraticProductId, double > & raw_quadratic_terms ( ) const
inline

Definition at line 2129 of file variable_and_expressions.h.

◆ storage()

const ModelStorage * storage ( ) const
inline

Definition at line 2105 of file variable_and_expressions.h.

◆ Sum()

QuadraticExpression Sum ( const Iterable &  items)
inlinestatic

Definition at line 2633 of file variable_and_expressions.h.


The documentation for this class was generated from the following files: