CONOPT
Loading...
Searching...
No Matches
Evaluating non-linear function values and derivatives

Functions

double jconopt.ModelData.evaluateNonlinearTerm (double[] x, int rowno, boolean ignerr, int thread)
 callback method for evaluating the nonlinear terms in a given row
 
void jconopt.ModelData.evaluateNonlinearJacobian (double[] x, double[] jac, int rowno, int[] jacnum, boolean ignerr, int thread)
 callback method for evaluating the jacobian for the nonlinear terms in a given row
 
void jconopt.ModelData.initFDEvaluation (double[] x, int[] rowlist, EvaluationMode mode, int numthread, boolean ignerr)
 callback method for initialising the first derivative evaluation.
 
void jconopt.ModelData.endFDEvaluation (boolean ignerr)
 Optional function, if defined, it will be called at the end of the function evaluation stage. This can be used to clean up any user data generated, such as in FDEvalIni, that was used to improve the efficiency of the function and derivative evaluation.
 

Detailed Description

Virtual functions to be implemented by the user for the evaluation of non-linear functions and derivatives.

Function Documentation

◆ evaluateNonlinearTerm()

double jconopt.ModelData.evaluateNonlinearTerm ( double[] x,
int rowno,
boolean ignerr,
int thread )
inline

callback method for evaluating the nonlinear terms in a given row

Parameters
xthe solution vector that needs to be evaluated.
rownothe number for the row in which the nonlinear term exists.
ignerra boolean to indicate whether the current point is safe or unsafe.
threadthe index of the thread from which this method is being called from.
Returns
the value of the nonlinear terms.

Note: an error in the evaluation is reported by calling errorInEvaluation()

Definition at line 97 of file ModelData.java.

◆ evaluateNonlinearJacobian()

void jconopt.ModelData.evaluateNonlinearJacobian ( double[] x,
double[] jac,
int rowno,
int[] jacnum,
boolean ignerr,
int thread )
inline

callback method for evaluating the jacobian for the nonlinear terms in a given row

Parameters
xthe solution vector that needs to be evaluated.
jacan array to store the Jacobian at the given point and row. This is of length numVar().
rownothe number for the row in which the nonlinear term exists.
jacnumvector with a list of column numbers for the nonlinear nonzero Jacobian elements in the row.
ignerra boolean to indicate whether the current point is safe or unsafe.
threadthe index of the thread from which this method is being called from.

Note: an error in the evaluation is reported by calling errorInEvaluation()

Definition at line 116 of file ModelData.java.

◆ initFDEvaluation()

void jconopt.ModelData.initFDEvaluation ( double[] x,
int[] rowlist,
EvaluationMode mode,
int numthread,
boolean ignerr )
inline

callback method for initialising the first derivative evaluation.

If defined, this method will be called each time the point of interest has changed, and it will define the coming point and tell which constraints CONOPT will need during the following calls to evaluateNonlinearTerm and evaluateNonlinearJacobian.

Parameters
xthe solution vector that needs to be evaluated.
rowlistthe list of rows that will be evaluated for the given point.
modethe evaluation mode for the current iteration. This is either TermsOnly, JacobianOnly or Both. See EvaluationMode for more details.
numthreadthe number of threads that will be used for the following FDEval calls.
ignerra boolean to indicate whether the current point is safe or unsafe.

Note: an error in the evaluation is reported by calling errorInEvaluation()

Definition at line 138 of file ModelData.java.

◆ endFDEvaluation()

void jconopt.ModelData.endFDEvaluation ( boolean ignerr)
inline

Optional function, if defined, it will be called at the end of the function evaluation stage. This can be used to clean up any user data generated, such as in FDEvalIni, that was used to improve the efficiency of the function and derivative evaluation.

Parameters
ignerra boolean to indicate whether the current point is safe or unsafe.

Note: an error in the evaluation is reported by calling errorInEvaluation()

Definition at line 153 of file ModelData.java.