Antares Simulator
Power System Simulator
Loading...
Searching...
No Matches
Antares::Optimization Namespace Reference

Classes

class  BasisStatus
 
class  BasisStatusImpl
 
class  ComponentFiller
 
class  ConstraintsFactory
 
class  ConstraintSlackAnalysis
 
class  DailyBC
 
class  Dimensions
 
class  FictitiousLoad
 
class  FullKey
 
class  FullKeyHash
 
class  HourlyBC
 
class  HydroLevel
 
class  HydroProduction
 
struct  IdentityFunction
 
class  InfeasibleProblemReport
 
struct  IntegerInterval
 
class  LegacyFiller
 
class  LegacyOrtoolsLinearProblem
 
struct  LinearConstraint
 
class  LinearExpression
 
class  PartialKey
 
class  PartialKeyHash
 
struct  PROBLEME_SIMPLEXE_NOMME
 
class  ReadLinearConstraintVisitor
 
class  ReadLinearExpressionVisitor
 
class  STS
 
struct  TimeAndScenario
 
class  TimeDependentLinearExpression
 
class  UnfeasibilityAnalysis
 
class  UnfeasiblePbAnalyzer
 
struct  VariableBounds
 
class  VariableDictionary
 
class  VariablesBoundsConsistency
 
class  VariablesBulkAddition
 
class  WatchedConstraint
 
class  WeeklyBC
 

Typedefs

using FullKeyMap = std::unordered_map<FullKey, double, FullKeyHash>
 

Functions

std::unique_ptr< UnfeasiblePbAnalyzermakeUnfeasiblePbAnalyzer ()
 
bool lessTypeName (const std::shared_ptr< WatchedConstraint > a, const std::shared_ptr< WatchedConstraint > b)
 
bool sameType (const std::shared_ptr< WatchedConstraint > a, const std::shared_ptr< WatchedConstraint > b)
 
bool greaterValue (const std::shared_ptr< WatchedConstraint > a, std::shared_ptr< WatchedConstraint > b)
 
bool checkTimeSteps (Optimisation::LinearProblemApi::FillContext &ctx)
 
template<typename Key , typename Value , typename UnaryOp = IdentityFunction<Value>, typename HashType = std::hash<Key>>
std::unordered_map< Key, Value, HashType > add_maps (const std::unordered_map< Key, Value, HashType > &left, const std::unordered_map< Key, Value, HashType > &right, UnaryOp op=IdentityFunction< Value >{})
 
FullKeyMap scale_map (const FullKeyMap &map, double scale)
 
template<typename BinaryOperator >
TimeDependentLinearExpression BinaryOpLinearExpression (const std::unordered_map< unsigned int, LinearExpression > &left, const std::unordered_map< unsigned int, LinearExpression > &right, BinaryOperator op)
 
std::string buildVariableName (const PartialKey &key, std::optional< unsigned int > scenario, std::optional< unsigned int > timestep)
 

Detailed Description

Read Linear Constraint Visitor Visits a Node and produces a Linear Constraint (defined by its Linear Expression and bounds). The root node is expected to be a comparison node.

Read Linear Expression Visitor Visits a Node and produces a Linear Expression (defined by an offset and non-zero coefficients of variables) Comparison Nodes are not allowed

Function Documentation

◆ add_maps()

template<typename Key , typename Value , typename UnaryOp = IdentityFunction<Value>, typename HashType = std::hash<Key>>
std::unordered_map< Key, Value, HashType > Antares::Optimization::add_maps ( const std::unordered_map< Key, Value, HashType > & left,
const std::unordered_map< Key, Value, HashType > & right,
UnaryOp op = IdentityFunction<Value>{} )

Element-wise sum of two [string, double] maps, preceded an element-wise multiplication of the right-hand-side map. Keys that do not exist in one of the two maps are considered to have a zero value. For every key: value = left_value + rhs_multiplier * right_value

Parameters
leftThe left hand side map
rightThe right hand side map
Returns
The map resulting from the operation

◆ scale_map()

FullKeyMap Antares::Optimization::scale_map ( const FullKeyMap & map,
double scale )

Element-wise multiplication of a map by a scale. For every key: final_value = scale * initial_value

Parameters
mapThe [string, double] map to scale
scaleThe scale
Returns
The scaled map