Module automatic_differentiation

Source
Expand description

Automatic differentiation for exact gradient and Hessian computation

This module provides automatic differentiation capabilities for optimization, supporting both forward-mode and reverse-mode AD for efficient and exact derivative computation.

Re-exports§

pub use dual_numbers::Dual;
pub use dual_numbers::DualNumber;
pub use forward_mode::forward_gradient;
pub use forward_mode::forward_hessian_diagonal;
pub use forward_mode::ForwardADOptions;
pub use reverse_mode::reverse_gradient;
pub use reverse_mode::reverse_hessian;
pub use reverse_mode::ReverseADOptions;
pub use tape::ComputationTape;
pub use tape::TapeNode;
pub use tape::Variable;

Modules§

dual_numbers
Dual numbers for forward-mode automatic differentiation
forward_mode
Forward-mode automatic differentiation
reverse_mode
Reverse-mode automatic differentiation (backpropagation)
tape
Computational tape for reverse-mode automatic differentiation

Structs§

ADResult
Result of automatic differentiation computation
AutoDiffOptions
Options for automatic differentiation
FunctionWrapper
Wrapper for regular functions to make them compatible with AD

Enums§

ADMode
Automatic differentiation mode selection

Traits§

AutoDiffFunction
Function trait for automatic differentiation

Functions§

autodiff
Main automatic differentiation function
create_ad_gradient
Create a gradient function using automatic differentiation
create_ad_hessian
Create a Hessian function using automatic differentiation
optimize_ad_mode
Optimize AD mode selection based on problem characteristics