NlpCallbackBase::EvalObj(INdArray<double, 1>* xdata, INdArray<double, 1>* outdata)
计算非线性模型的目标函数值。
Synopsis
void EvalObj(
INdArray<double, 1> *xdata,
INdArray<double, 1> *outdata)Arguments
xdata: 存有变量值的一维数组。
outdata: 保存目标值的输出数组(一个元素)。
NlpCallbackBase::EvalGrad(INdArray<double, 1>* xdata, INdArray<double, 1>* outdata)
计算非线性模型的目标梯度。
Synopsis
void EvalGrad(
INdArray<double, 1> *xdata,
INdArray<double, 1> *outdata)Arguments
xdata: 存有变量值的一维数组。
outdata: 保存目标梯度的输出数组。
NlpCallbackBase::EvalCon(INdArray<double, 1>* xdata, INdArray<double, 1>* outdata)
计算非线性模型的约束值。
Synopsis
void EvalCon(
INdArray<double, 1> *xdata,
INdArray<double, 1> *outdata)Arguments
xdata: 存有变量值的一维数组。
outdata: 保存约束值的输出数组。
NlpCallbackBase::EvalJac(INdArray<double, 1>* xdata, INdArray<double, 1>* outdata)
计算非线性模型约束的Jacobian矩阵值。
Synopsis
void EvalJac(
INdArray<double, 1> *xdata,
INdArray<double, 1> *outdata)Arguments
xdata: 存有变量值的一维数组。
outdata: 保存Jacobian矩阵非零元的输出数组。
NlpCallbackBase::EvalHess(INdArray<double, 1>* xdata, double sigma, INdArray<double, 1>* lambdata, INdArray<double, 1>* outdata)
计算非线性模型Lagrange函数的Hessian矩阵值。
Synopsis
void EvalHess(
INdArray<double, 1> *xdata,
double sigma,
INdArray<double, 1> *lambdata,
INdArray<double, 1> *outdata)Arguments
xdata: 存有变量值的一维数组。
sigma: 目标在Lagrange函数中的权重。
lambdata: 保存约束函数对应Lagrange乘子的一维数组。
outdata: 保存Hessian矩阵非零元的输出数组。