简短的答案是
G优化程序在最小化过程中进行维护,而
(D_neg, D, and C)参数是从
args元组中按原样传递的。
默认情况下,
scipy.optimize.minimize采用
fun(x)接受一个参数
x(可能是数组等)并返回标量的函数。
scipy.optimize.minimize然后找到一个参数值
xp,使其
fun(xp)小于
fun(x)的其他值
x。优化器负责创建的值
x并将其传递给
fun评估。
但是,如果您碰巧有一个函数
fun(x,y),该函数具有一些
y需要分别传递的附加参数(但是出于优化目的,它被视为常量)?这就是
args元组的用途。该文档试图解释args元组的使用方式,但是解析起来可能有些困难:
args: 元组,可选
额外的参数传递给目标函数及其派生类(Jacobian,Hessian)。
有效地,
scipy.optimize.minimize将使用星号参数符号
args将其余参数作为参数传递给
fun:然后
fun(x,*args)在优化期间调用该函数。该
x部分由优化器传递,而
args元组作为剩余参数给出。
因此,在您的代码中,
G元素的值由优化程序维护,同时评估的可能值
G,并且
(D_neg, D, C)元组按原样传递。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)