|
CONOPT
|
Functions | |
| pinadd2ddir.PinAdd2DDirModelData.buildModel (self, T, xkeep, xstat, estat) | |
| adding the variables and constraints to the model | |
| pinadd2ddir.PinAdd2DDirModelData.evaluateNonlinearTerm (self, x, rowno, ignerr, thread) | |
| callback method for evaluating the nonlinear terms in a given row | |
| pinadd2ddir.PinAdd2DDirModelData.evaluateNonlinearJacobian (self, x, rowno, jacnum, ignerr, thread) | |
| callback method for evaluating the jacobian for the nonlinear terms in a given row | |
| pinadd2ddir.PinAdd2DDirModelData.evaluateDirectionalSD (self, x, dx, rowno, jacnum, thread) | |
| computes the directional second derivative for a single constraint | |
| pinadd2ddir.PinAdd2DDirModelData.evaluateSDLagrangian (self, x, u, hessianrow, hessiancol) | |
| Computes and returns the numerical values of the Lagrangian of the Hessian. | |
This is a CONOPT implementation of the Pindyck model from the GAMS model library.
The implementation is similar to the one in pinadd.c, where we gradually increase the number of periods one at a time from 16 up to 20. In this case we also use directional 2nd derivative defined in the Pin_2DDir routine.
For more information about the individual callbacks, please have a look at the source code.
| pinadd2ddir.PinAdd2DDirModelData.buildModel | ( | self, | |
| T, | |||
| xkeep, | |||
| xstat, | |||
| estat ) |
adding the variables and constraints to the model
Definition at line 49 of file pinadd2ddir.py.
| pinadd2ddir.PinAdd2DDirModelData.evaluateNonlinearTerm | ( | self, | |
| x, | |||
| rowno, | |||
| ignerr, | |||
| thread ) |
callback method for evaluating the nonlinear terms in a given row
| x | the solution vector that needs to be evaluated. |
| rowno | the number for the row in which the nonlinear term exists. |
| ignerr | a boolean to indicate whether the current point is safe or unsafe. |
| thread | the index of the thread from which this method is being called from. |
Notes: an error in the evaluation is reported by calling errorInEvaluation()
Definition at line 348 of file pinadd2ddir.py.
| pinadd2ddir.PinAdd2DDirModelData.evaluateNonlinearJacobian | ( | self, | |
| x, | |||
| rowno, | |||
| jacnum, | |||
| ignerr, | |||
| thread ) |
callback method for evaluating the jacobian for the nonlinear terms in a given row
| x | the solution vector that needs to be evaluated. |
| rowno | the number for the row in which the nonlinear term exists. |
| jacnum | vector with a list of column numbers for the nonlinear nonzero Jacobian elements in the row. |
| ignerr | a boolean to indicate whether the current point is safe or unsafe. |
| thread | the index of the thread from which this method is being called from. |
Notes: an error in the evaluation is reported by calling errorInEvaluation()
Definition at line 371 of file pinadd2ddir.py.
| pinadd2ddir.PinAdd2DDirModelData.evaluateDirectionalSD | ( | self, | |
| x, | |||
| dx, | |||
| rowno, | |||
| jacnum, | |||
| thread ) |
computes the directional second derivative for a single constraint
| x | the solution vector that needs to be evaluated. |
| dx | vector with the direction in which the directional second derivatives should be computed. |
| rowno | the number for the row in which the nonlinear term exists. |
| jacnum | vector with a list of column numbers for the nonlinear nonzero Jacobian elements in the row. |
| thread | the index of the thread from which this method is being called from. |
returns a vector for the directional second derivative. The length of the vector is the number of variables.
Notes: an error in the evaluation is reported by calling errorInEvaluation()
Definition at line 397 of file pinadd2ddir.py.
| pinadd2ddir.PinAdd2DDirModelData.evaluateSDLagrangian | ( | self, | |
| x, | |||
| u, | |||
| hessianrow, | |||
| hessiancol ) |
Computes and returns the numerical values of the Lagrangian of the Hessian.
| x | the solution vector that needs to be evaluated. |
| u | the vector of weights on the individual constraints. |
| hessianrow | vector of row numbers of the lower triangular part of the hessian. |
| hessiancol | vector of column numbers of the lower triangular part of the hessian. |
returns a vector for the values of the Lagrangian of the Hessian. The length of the vector is of size numHessianNonzeros().
Notes: an error in the evaluation is reported by calling errorInEvaluation()
Definition at line 456 of file pinadd2ddir.py.