Expand description
Expression evaluation with automatic differentiation
Evaluates postfix expressions and computes derivatives using forward-mode AD.
§Performance
For hot loops (generation, Newton-Raphson), use evaluate_with_workspace() with
a reusable EvalWorkspace to avoid heap allocations on every call.
Modules§
- constants
- Mathematical constants
Structs§
- Eval
Context - Explicit evaluation context for a single run.
- Eval
Result - Result of evaluating an expression
- Eval
Workspace - Reusable workspace for expression evaluation.
Enums§
- Eval
Error - Evaluation error types
Constants§
- DEFAULT_
TRIG_ ARGUMENT_ SCALE - Default trig argument scale used by
sinpi/cospi/tanpi.
Functions§
- evaluate
- Evaluate an expression at a given value of x.
- evaluate_
fast - Evaluate an expression using a thread-local workspace (zero allocations after warmup).
- evaluate_
fast_ with_ constants - Evaluate an expression using a thread-local workspace with user constants.
- evaluate_
fast_ with_ constants_ and_ functions - Evaluate an expression using a thread-local workspace with user constants and user functions.
- evaluate_
fast_ with_ context - Evaluate an expression using a thread-local workspace and explicit context.
- evaluate_
with_ constants - Evaluate an expression at a given value of x with user constants.
- evaluate_
with_ constants_ and_ functions - Evaluate an expression at a given value of x with user constants and user functions.
- evaluate_
with_ context - Evaluate an expression at a given value of x with an explicit evaluation context.
- evaluate_
with_ workspace - Evaluate an expression at a given value of x, using a reusable workspace.
- evaluate_
with_ workspace_ and_ constants - Evaluate an expression with user constants, using a reusable workspace.
- evaluate_
with_ workspace_ and_ constants_ and_ functions - Evaluate an expression with user constants and user functions, using a reusable workspace.
- evaluate_
with_ workspace_ and_ context - Evaluate an expression using an explicit evaluation context and reusable workspace.