solve_strongly_connected_components

(函数来自 pyomo.contrib.incidence_analysis.scc_solver)

pyomo.contrib.incidence_analysis.scc_solver.solve_strongly_connected_components(block, *, solver=None, solve_kwds=None, use_calc_var=True, calc_var_kwds=None)[source]

通过单独解决强连通组件来解决变量和等式约束的方形系统。

强连通组件(从变量和约束的完美匹配中获得的约束有向图)是关联矩阵块三角化中的对角块,因此按拓扑顺序解决强连通组件足以解决整个块。

逐个块使用Pyomo的calculate_variable_from_constraint函数解决,而更高维度的块则使用用户提供的求解器对象解决。

Parameters:
  • block (Pyomo Block) – 将求解其变量和约束的Pyomo块

  • solver (Pyomo solver object) – 用于解决大小大于一个约束的强连通组件的求解器对象。必须实现一个求解方法。

  • solve_kwds (Dictionary) – 求解器的solve方法的关键字参数

  • use_calc_var (Bool) – 是否使用 calculate_variable_from_constraint 进行逐个平方系统求解

  • calc_var_kwds (字典) – 用于calculate_variable_from_constraint的关键字参数

Return type:

每次调用solve返回的结果对象列表