jacobian Subroutine

public subroutine jacobian(fun, xdata, params, jac, stop, f0, f1, step, err)

Computes the Jacobian matrix for a nonlinear regression problem.

Arguments

Type IntentOptional Attributes Name
procedure(regression_function), intent(in), pointer :: fun

A pointer to the regression_function to evaluate.

real(kind=real64), intent(in) :: xdata(:)

The M-element array containing x-coordinate data.

real(kind=real64), intent(in) :: params(:)

The N-element array containing the model parameters.

real(kind=real64), intent(out) :: jac(:,:)

The M-by-N matrix where the Jacobian will be written.

logical, intent(out) :: stop

A value that the user can set in fun forcing the evaluation process to stop prior to completion.

real(kind=real64), intent(in), optional, target :: f0(:)

An optional M-element array containing the model values using the current parameters as defined in m. This input can be used to prevent the routine from performing a function evaluation at the model parameter state defined in params.

real(kind=real64), intent(out), optional, target :: f1(:)

An optional M-element workspace array used for function evaluations.

real(kind=real64), intent(in), optional :: step

The differentiation step size. The default is the square root of machine precision.

class(errors), intent(inout), optional, target :: err

A mechanism for communicating errors and warnings to the caller. Possible warning and error codes are as follows. - FS_NO_ERROR: No errors encountered. - FS_ARRAY_SIZE_ERROR: Occurs if any of the arrays are not properly sized. - FS_MEMORY_ERROR: Occurs if there is a memory allocation error.


Contents