Click or drag to resize

IFitFunctionWithDerivativeEvaluateDerivative Method

This evaluates the gradient of the function with respect to the parameters.

Namespace: Altaxo.Calc.Regression.Nonlinear
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
void EvaluateDerivative(
	IROMatrix<double> independent,
	IReadOnlyList<double> parameters,
	IReadOnlyList<bool>? isFixed,
	IMatrix<double> DF,
	IReadOnlyList<bool>? dependentVariableChoice
)

Parameters

independent  IROMatrixDouble
The independent variables (x-values). Every row of that matrix corresponds to one observation. The columns of the matrix represent the different independent variables of the fit function. Thus, for a usual function of one variable, the number of columns is 1.
parameters  IReadOnlyListDouble
Parameters for evaluation.
isFixed  IReadOnlyListBoolean
If not null, this list designates the parameters that are fixed. No derivative value for those parameters need to be calculated.
DF  IMatrixDouble
On return, this array contains the one (or more) evaluated derivatives of the function values with respect to there parameters. See remarks for the order in which they are stored.
dependentVariableChoice  IReadOnlyListBoolean
Determines which output variables are written to the output vector. See remarks.
Remarks
The derivative values are stored in the array DF. For each dependent variable of the fit function that is included in the output (see dependentVariableChoice), the derivative to all given parameters must be calculated. Presumed we have 3 parameters (p0, p1 and p2) and 2 dependent variables (f0 and f1), for one observation the array DF must contain:
C#
DF[0,0] : df0/dp0
DF[0,1] : df0/dp1
DF[0,2] : df0/dp2
DF[1,0] : df1/dp0
DF[1,1] : df2/dp1
DF[1,2] : df1/dp2
Concerning dependentVariableChoice: if this parameter is null, the derivatives of all dependent variables the fit function provides will be included in the output matrix DF. If this parameter is not null, only the derivatives of those dependent variables, for which the element is true, are included in the output vector (at least one element of this array must be true).
See Also