SccImplicitFunctionSolver

(类来自 pyomo.contrib.pynumero.algorithms.solvers.implicit_functions)

class pyomo.contrib.pynumero.algorithms.solvers.implicit_functions.SccImplicitFunctionSolver(variables, constraints, parameters, solver_class=None, solver_options=None, timer=None, use_calc_var=True)[source]

基础类:DecomposedImplicitFunctionBase

__init__(variables, constraints, parameters, solver_class=None, solver_options=None, timer=None, use_calc_var=True)
Parameters:
  • 变量 (列表VarData) – 被视为隐函数输出的变量

  • 约束条件 (列表ConstraintData) – 用于评估隐函数的收敛约束条件

  • 参数 (列表VarData) – 被视为隐函数输入的变量

方法

__init__(variables, constraints, parameters)

evaluate_outputs()

返回被视为隐函数输出的变量的值

get_block()

get_constraints()

get_parameters()

get_variables()

n_subsystems()

返回用于收敛定义隐函数的系统的变量和方程分区中的子系统数量

partition_system(variables, constraints)

根据提供的变量和约束条件对方程组进行分区

set_parameters(values)

设置定义隐函数的系统参数。

update_pyomo_model()

将“参数变量”和“输出变量”的值设置为在此隐式函数中设置或计算的最新值

成员文档

evaluate_outputs()

返回被视为隐函数输出的变量的值

返回的值不一定需要是存储在Pyomo变量中的值,只要它们与已设置的最新参数一致即可。

Returns:

数组的值对应于“输出变量”,按照它们在构造函数中指定的顺序排列

Return type:

NumPy 数组

n_subsystems()

返回用于收敛定义隐函数的系统的变量和方程分区中的子系统数量

partition_system(variables, constraints)[source]

将系统方程根据提供的变量和约束进行分区

分区的每个子集应具有相同数量的变量和方程。这些子集或“子系统”将按照此方法提供的顺序依次解决,而不是同时解决整个系统。子类应实现此方法以定义其隐式函数求解器将使用的分区。分区被定义为列表的元组列表。每个元组有两个条目,第一个是变量列表,第二个是约束列表。这些内部列表应具有相同数量的条目。

Parameters:
  • 变量 (list) – 系统中需要分区的VarData列表

  • 约束条件 (list) – 定义要分区的系统方程的ConstraintData(等式约束)列表

Returns:

描述有序分区的元组列表。每个元组包含变量和约束的等长子集。

Return type:

元组列表

set_parameters(values)

设置定义隐函数的系统参数。

此方法不一定需要更新Pyomo变量的值,只要此隐式函数的下一次评估与这些输入一致即可。

Parameters:

values (NumPy array) – 用于设置“参数变量”的值数组,按照它们在构造函数中指定的顺序

update_pyomo_model()

将“参数变量”和“输出变量”的值设置为在此隐式函数中设置或计算的最新值