/Statsmodels

# statsmodels.tools.numdiff.approx_hess_cs

`statsmodels.tools.numdiff.approx_hess_cs(x, f, epsilon=None, args=(), kwargs={})` [source]

Calculate Hessian with complex-step derivative approximation Calculate Hessian with finite difference derivative approximation

Parameters: x (array_like) – value at which function derivative is evaluated f (function) – function of one array f(x, `*args`, `**kwargs`) epsilon (float or array-like, optional) – Stepsize used, if None, then stepsize is automatically chosen according to EPS**(1/3)*x. args (tuple) – Arguments for function `f`. kwargs (dict) – Keyword arguments for function `f`. hess – array of partial second derivatives, Hessian ndarray

#### Notes

Equation (10) in Ridout. Computes the Hessian as:

```1/(2*d_j*d_k) * imag(f(x + i*d[j]*e[j] + d[k]*e[k]) -
f(x + i*d[j]*e[j] - d[k]*e[k]))
```

where e[j] is a vector with element j == 1 and the rest are zero and d[i] is epsilon[i].

#### References

Ridout, M.S. (2009) Statistical applications of the complex-step method
of numerical differentiation. The American Statistician, 63, 66-74