CONOPT
Loading...
Searching...
No Matches

Functions

 leastsq10.LeastSqModelData.buildModel (self)
 adding the variables and constraints to the model
 
 leastsq10.LeastSqModelData.evaluateNonlinearTerm (self, x, rowno, ignerr, thread)
 callback method for evaluating the nonlinear terms in a given row
 
 leastsq10.LeastSqModelData.evaluateNonlinearJacobian (self, x, rowno, jacnum, ignerr, thread)
 callback method for evaluating the jacobian for the nonlinear terms in a given row
 
 leastsq10.LeastSqModelData.initDirectionalSDEval (self, x, dx, rowlist, numthread, newpoint)
 a callback for the initialisation of the second derivative evaluation.
 
 leastsq10.LeastSqModelData.evaluateDirectionalSD (self, x, dx, rowno, jacnum, thread)
 computes the directional second derivative for a single constraint
 

Detailed Description

This model is similar to leastsq5, but this time we define 2nd order directional information in the form of both an 2DDirIni routine where the bulk of the work is done and a 2DDir routine that just copies the information.

We solve the following nonlinear least squares model:

\[ \min \sum_i res_{i}^2 \!! \sum_j ( a_{ij}x_j + b_{ij}x_j^2 ) + res_i = obs_i \]

where \(a\), \(b\), and \(obs\) are known data, and \(res\) and \(x\) are the variables of the model.

For more information about the individual callbacks, please have a look at the source code.

Function Documentation

◆ buildModel()

leastsq10.LeastSqModelData.buildModel ( self)

adding the variables and constraints to the model

Definition at line 69 of file leastsq10.py.

◆ evaluateNonlinearTerm()

leastsq10.LeastSqModelData.evaluateNonlinearTerm ( self,
x,
rowno,
ignerr,
thread )

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.

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

Definition at line 119 of file leastsq10.py.

◆ evaluateNonlinearJacobian()

leastsq10.LeastSqModelData.evaluateNonlinearJacobian ( self,
x,
rowno,
jacnum,
ignerr,
thread )

callback method for evaluating the jacobian for 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.
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.
Returns
a vector the length of jacnum that contains the jacobian values for the referenced elements.

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

Definition at line 143 of file leastsq10.py.

◆ initDirectionalSDEval()

leastsq10.LeastSqModelData.initDirectionalSDEval ( self,
x,
dx,
rowlist,
numthread,
newpoint )

a callback for the initialisation of the second derivative evaluation.

This method is called before a sequence of calls to evaluateDirectionalSD(). The user can utilise this method for evaluating common terms and storing important information.

Parameters
xthe solution vector that needs to be evaluated.
dxvector with the direction in which the directional second derivatives should be computed.
rowlistthe list of rows that will be evaluated for the given point.
numthreadthe number of threads that will be used for the following FDEval calls.
newpointa boolean to indicate whether x has changed. If newpoint is false, the values of dx may have changed.

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

Definition at line 162 of file leastsq10.py.

◆ evaluateDirectionalSD()

leastsq10.LeastSqModelData.evaluateDirectionalSD ( self,
x,
dx,
rowno,
jacnum,
thread )

computes the directional second derivative for a single constraint

Parameters
xthe solution vector that needs to be evaluated.
dxvector with the direction in which the directional second derivatives should be computed.
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.
threadthe 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 177 of file leastsq10.py.