|
CONOPT
|
Functions | |
| tutorial2r.TutModelData.buildModel (self) | |
| adding the variables and constraints to the model | |
| tutorial2r.TutModelData.evaluateNonlinearTerm (self, x, rowno, ignerr, thread) | |
| callback method for evaluating the nonlinear terms in a given row | |
| tutorial2r.TutModelData.evaluateNonlinearJacobian (self, x, rowno, jacnum, ignerr, thread) | |
| callback method for evaluating the jacobian for the nonlinear terms in a given row | |
| tutorial2r.TutModelData.evaluateSDLagrangian (self, x, u, hessianrow, hessiancol) | |
| Computes and returns the numerical values of the Lagrangian of the Hessian. | |
This is a revised version of Tutorial2 in which the production function is split into two equations using an intermediate variable.
The purpose is to make the expressions simpler, in particular the second order terms. The equation Row 2: Al*L**(-Rho) + Ak*K**(-Rho) + Ainp*Inp**(-Rho)) ** ( -1.d0/Rho ) - Out = 0 is replaced by Row 2 (new): Al*L**(-Rho) + Ak*K**(-Rho) + Ainp*Inp**(-Rho)) = Int Row 4 (new): Int**( -1.d0/Rho ) = Out where Int is a new variable.
For more information about the individual callbacks, please have a look at the source code.
| tutorial2r.TutModelData.buildModel | ( | self | ) |
adding the variables and constraints to the model
Definition at line 28 of file tutorial2r.py.
| tutorial2r.TutModelData.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 85 of file tutorial2r.py.
| tutorial2r.TutModelData.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()
NOTE: The jacobian is returned as a list of length jacnum. In this example, the returned list is constructed using append. It is also possible to initially create a list of length jacnum containing only 0s, then update the values by the variable indices.
Definition at line 110 of file tutorial2r.py.
| tutorial2r.TutModelData.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 139 of file tutorial2r.py.