estimagic icon indicating copy to clipboard operation
estimagic copied to clipboard

Implement numerical second derivative

Open janosg opened this issue 4 years ago • 0 comments

Desired Situation

  • We can calculate the second derivative of vector and scalar valued functions that take parameters as numpy arrays or DataFrames
  • The three standard hessian formulae are supported. See ridout for formulae and statsmodels for a code example. We do not need complex steps.
  • Function evaluations are done in parallel
  • Interface and additional outputs similar to first_derivative
  • Richardson extrapolation
  • Check if it is possible to reuse evaluations returned by first_derivative

Proposed implementation

I suggest to do several independent PRs for this

  • [x] Add basic functionality without richardson extrapolation building on the step generation functions we also use for first derivatives. It is important to design the code analogous to first_derivative, i.e. with parallel function evaluation and richardson extrapolation in mind. For now focus on numpy array interface.
  • [x] Add pandas interface, dict outputs of func and error handling as in first_derivative
  • [ ] Add richardson extrapolation
  • [ ] Add intermediate outputs and visualization

janosg avatar Sep 20 '21 11:09 janosg