Sets the percentage factor for differencing

Namespace: Imsl.Math
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
public void SetPercentageFactor(
	double[] factor
)
Visual Basic (Declaration)
Public Sub SetPercentageFactor ( _
	factor As Double() _
)
Visual C++
public:
void SetPercentageFactor(
	array<double>^ factor
)

Parameters

factor
Type: array< System..::.Double >[]()[]
A double array of length n containing the percentage factor for differencing. Except for initialization, the factor array should not be altered in the EvaluateF method. The elements of factor must be such that
\mbox{1.8189894035458565e-12}\;\le\mbox{factor}[j-1]\le 0.1
where 1.8189894035458565e-12 is machine precision to the three-fourths power.
Default: all elements of factor are set to 1.4901161193847656e-8, which is the square root of machine precision.

Remarks

For each divided difference for variable j the increment used is del. The value of del is computed as follows: First define \sigma  = sign(\mbox{scale}[j - 1]). If the user has set the elements of array scale to non-default values, then define y_a  = \left| {\mbox{scale}[j - 1]} \right|. Otherwise, y_a  = \left| {y[j - 1]} \right| and \sigma  = 1. Finally, compute del=\sigma y{}_a\;\mbox{factor}[j-1]. By changing the sign of scale[j-1], the difference del can have any desired orientation, such as staying within bounds on variable j. For central differences, a reduced factor is used for del that normally results in relative errors as small as machine precision to the 2/3 power.

See Also