Skip to content

Taylor mode automatic differentiation #22

@Axect

Description

@Axect

Peroxide has two AD methods - Dual, HyperDual. But these are only 1st and 2nd order methods, and they are distinct. So, we need not only higher order AD but also generic.

  • Struct AD
    • fmt::Display
    • Copy?
    • From<T>
  • std::ops for AD
    • Add, Sub, Neg
    • Mul
    • Div
  • PowOps for AD
    • powi
    • powf
    • pow
  • TrigOps for AD
    • sin, cos, tan
    • asin, acos, atan
    • sinh, cosh, tanh
    • asinh, acosh, atanh
    • sin_cos, sinh_cosh
  • ExpLogOps for AD
    • exp, ln
    • log, log2, log10
  • std::ops with f64
    • Add, Sub
    • Mul, Div
  • Change the structure - proc_macro to Enum (to reduce compile time)
  • Generic AD function - ADFn
  • Apply to numerical things
    • numerical/root
    • numerical/ode
    • numerical/optimize
    • numerical/utils

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions