.. _method-nl2sol-covariance:

""""""""""
covariance
""""""""""


Determine how the final covariance matrix is computed


.. toctree::
   :hidden:
   :maxdepth: 1



**Specification**

- *Alias:* None

- *Arguments:* INTEGER

- *Default:* 0 (no covariance)


**Description**


``covariance``
(NL2SOL's ``covreq``) specifies whether and how NL2SOL computes
a final covariance matrix.

The desired covariance approximation:

- 0 = default = none
- 1 or -1 ==> :math:`\sigma^2 H^{-1} J^T J H^{-1}` 
- 2 or -2 ==> :math:`\sigma^2 H^{-1}` 
- 3 or -3 ==> :math:`\sigma^2 (J^T J)^{-1}` 
- Negative values ==> estimate the final Hessian H by finite differences of function values only (using ``fd_hessian_step_size``)
- Positive values ==> differences of gradients (using ``fd_hessian_step_size``)