SimGrid  3.18
Versatile Simulation of Distributed Systems
simgrid::kernel::lmm Namespace Reference

Classes

class  Constraint
 LMM constraint Each constraint contains several partially overlapping logical sets of elements: More...
 
struct  ConstraintLight
 
class  Element
 LMM element Elements can be seen as glue between constraint objects and variable objects. More...
 
class  System
 LMM system. More...
 
class  Variable
 LMM variable. More...
 

Typedefs

typedef std::vector< int > dyn_light_t
 

Functions

void lagrange_solve (lmm_system_t sys)
 
static double dichotomy (double init, double diff(double, const Constraint &), const Constraint &cnst, double min_error)
 
static double partial_diff_lambda (double lambda, const Constraint &cnst)
 
template<class CnstList , class VarList >
static int __check_feasible (const CnstList &cnst_list, const VarList &var_list, int warn)
 
static double new_value (const Variable &var)
 
static double new_mu (const Variable &var)
 
template<class VarList , class CnstList >
static double dual_objective (const VarList &var_list, const CnstList &cnst_list)
 
void set_default_protocol_function (double(*func_f)(const Variable &var, double x), double(*func_fp)(const Variable &var, double x), double(*func_fpi)(const Variable &var, double x))
 Attribute the value bound to var->bound. More...
 
double func_vegas_f (const Variable &var, double x)
 
double func_vegas_fp (const Variable &var, double x)
 
double func_vegas_fpi (const Variable &var, double x)
 
double func_reno_f (const Variable &var, double x)
 
double func_reno_fp (const Variable &var, double x)
 
double func_reno_fpi (const Variable &var, double x)
 
double func_reno2_f (const Variable &var, double x)
 
double func_reno2_fp (const Variable &var, double x)
 
double func_reno2_fpi (const Variable &var, double x)
 
static void saturated_constraints_update (double usage, int cnst_light_num, dyn_light_t &saturated_constraints, double *min_usage)
 
static void saturated_variable_set_update (ConstraintLight *cnst_light_tab, const dyn_light_t &saturated_constraints, lmm_system_t sys)
 
template<class ElemList >
static void format_element_list (const ElemList &elem_list, int sharing_policy, double &sum, std::string &buf)
 
void lmm_solve (lmm_system_t sys)
 Solve the lmm system. More...
 
void bottleneck_solve (lmm_system_t sys)
 

Variables

double(* func_f_def )(const Variable &, double)
 
double(* func_fp_def )(const Variable &, double)
 
double(* func_fpi_def )(const Variable &, double)
 

Typedef Documentation

◆ dyn_light_t

typedef std::vector<int> simgrid::kernel::lmm::dyn_light_t

Function Documentation

◆ dichotomy()

static double simgrid::kernel::lmm::dichotomy ( double  init,
double   diffdouble, const Constraint &,
const Constraint cnst,
double  min_error 
)
static

◆ partial_diff_lambda()

static double simgrid::kernel::lmm::partial_diff_lambda ( double  lambda,
const Constraint cnst 
)
static

◆ __check_feasible()

template<class CnstList , class VarList >
static int simgrid::kernel::lmm::__check_feasible ( const CnstList &  cnst_list,
const VarList &  var_list,
int  warn 
)
static

◆ new_value()

static double simgrid::kernel::lmm::new_value ( const Variable var)
static

◆ new_mu()

static double simgrid::kernel::lmm::new_mu ( const Variable var)
static

◆ dual_objective()

template<class VarList , class CnstList >
static double simgrid::kernel::lmm::dual_objective ( const VarList &  var_list,
const CnstList &  cnst_list 
)
static

◆ saturated_constraints_update()

static void simgrid::kernel::lmm::saturated_constraints_update ( double  usage,
int  cnst_light_num,
dyn_light_t saturated_constraints,
double *  min_usage 
)
inlinestatic

◆ saturated_variable_set_update()

static void simgrid::kernel::lmm::saturated_variable_set_update ( ConstraintLight cnst_light_tab,
const dyn_light_t saturated_constraints,
lmm_system_t  sys 
)
inlinestatic

◆ format_element_list()

template<class ElemList >
static void simgrid::kernel::lmm::format_element_list ( const ElemList &  elem_list,
int  sharing_policy,
double &  sum,
std::string buf 
)
static