English

A Taxonomy of Numerical Differentiation Methods

Numerical Analysis 2026-03-10 v2 Computational Engineering, Finance, and Science Numerical Analysis

Abstract

Differentiation is a cornerstone of computing and data analysis in every discipline of science and engineering. Indeed, most fundamental physics laws are expressed as relationships between derivatives in space and time. However, derivatives are rarely directly measurable and must instead be computed, often from noisy, potentially corrupt data streams. There is a rich and broad literature of computational differentiation algorithms, but many impose extra constraints to work correctly, e.g. periodic boundary conditions, or are compromised in the presence of noise and corruption. It can therefore be challenging to select the method best-suited to any particular problem. Here we review a broad range of numerical methods for calculating derivatives, present important contextual considerations and choice points, compare relative advantages, and provide basic theory for each algorithm in order to assist users with the mathematical underpinnings. This serves as a practical guide to help scientists and engineers match methods to application domains. We also provide an open-source Python package, PyNumDiff, which contains a broad suite of methods for differentiating noisy data.

Keywords

Cite

@article{arxiv.2512.09090,
  title  = {A Taxonomy of Numerical Differentiation Methods},
  author = {Pavel Komarov and Floris van Breugel and J. Nathan Kutz},
  journal= {arXiv preprint arXiv:2512.09090},
  year   = {2026}
}

Comments

Submitted to the Journal of Computational Physics, PyNumDiff package available at https://pypi.org/project/pynumdiff/

R2 v1 2026-07-01T08:17:55.573Z