非线性表达式辅助函数#

本节介绍gurobipy.nlfunc模块中的函数。每个函数都可以与任何建模对象一起调用,并返回一个NLExprMNLExpr,表示生成的非线性表达式。生成的表达式可用于向模型添加非线性约束。例如:

import gurobipy as gp
from gurobipy import GRB, nlfunc

with gp.Env() as env, gp.Model(env=env) as model:

    x = model.addVar(lb=-GRB.INFINITY, name="x")
    y = model.addVar(lb=-GRB.INFINITY, name="y")
    z = model.addVar(lb=-GRB.INFINITY, name="z")

    # Create a constraint specifying z = sin(x + y)
    model.addConstr(z == nlfunc.sin(x + y))
gurobipy.nlfunc.sqrt(expr)#

返回表示参数平方根的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于项的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

另请注意关于Gurobi内部如何处理平方根函数的附加信息。

gurobipy.nlfunc.sin(expr)#

返回表示参数正弦值的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

gurobipy.nlfunc.cos(expr)#

返回表示参数余弦的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

gurobipy.nlfunc.tan(expr)#

返回表示参数的正切函数的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

gurobipy.nlfunc.exp(expr)#

返回表示参数的指数函数的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

gurobipy.nlfunc.log(expr)#

返回表示参数的自然对数的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

另请注意有关Gurobi内部如何处理对数函数的附加信息。

gurobipy.nlfunc.log2(expr)#

返回表示参数以2为底的对数的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于项的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

另请注意有关Gurobi内部如何处理对数函数的附加信息。

gurobipy.nlfunc.log10(expr)#

返回表示参数以10为底的对数的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

另请注意有关Gurobi内部如何处理对数函数的附加信息。

gurobipy.nlfunc.logistic(expr)#

返回表示参数的逻辑函数的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr

gurobipy.nlfunc.square(expr)#

返回表示参数平方的表达式。

Parameters:

expr – 一个建模对象或数值

Returns:

如果参数是基于术语的建模对象或数值,则返回一个NLExpr。如果参数是矩阵友好的建模对象,则返回一个MNLExpr