Skip to content

JuliaDiff/HyperDualNumbers.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

86395bf · Sep 2, 2022
Feb 8, 2021
Nov 18, 2020
May 24, 2022
May 25, 2022
Nov 22, 2018
Jun 6, 2014
Sep 2, 2022
May 25, 2022
Nov 20, 2018
Nov 21, 2018
Nov 19, 2020

Repository files navigation

JuliaDiff/HyperDualNumbers

Documentation Build Status

Hyper-dual numbers can be used to compute first and second derivatives numerically without the cancellation errors of finite-differencing schemes.

The initial Julia implementation (up to v3.0.1) is directly based on the C++ implementation by Jeffrey Fike and Juan J Alonso, both of Stanford University, department of Aeronautics and Astronautics as described in the paper:

The Development of Hyper-Dual Numbers for Exact Second Derivative Calculations

Up to v3.0.1 the Julia versions have been derived/written by Rob J Goedman (goedman@icloud.com).

HyperDualNumbers.jl v4.0.0 has been completely redone by Benoit Pasquier and follows the structure of the JuliaDiff/DualNumbers package.

For a quick intro, see STEPBYSTEP.md

Latest tagged versions:

  • v1.1.0 (Julia 0.5 & 0.6, Oct 2017)
  • v2.0.0 (Julia v0.7-, Oct 2017)
  • v3.0.1 (Julia v0.7 & Julia v1.0), Aug 2018, Pkg(3))
  • v4.0.0 (Julia v1.0, Nov 2018)
  • v4.0.9 (Julia 1.9-DEV, May 2022)

For details see VERSION.md

The following functions are specific to hyperdual numbers:

  • Hyper,
  • Hyper256,
  • Hyper128,
  • ishyper,y2
  • hyper_show
  • realpart,
  • ε₁part(), replaces eps1,
  • ε₂part(), replaces eps2,
  • ε₁ε₂part(), replaces eps1eps2

In the future it is my intention to deprecate:

  • hyper,
  • hyper256,
  • hyper128,
  • eps1,
  • eps2,
  • eps1eps2

Documentation

  • STABLEdocumentation of the most recently tagged version.
  • DEVELdocumentation of the in-development version.

Questions and issues

Question and contributions are very welcome, as are feature requests and suggestions. Please open an issue if you encounter any problems or have a question.