Skip to content

Add fixed-plan differentiable exponential actions - #142

Merged
rogeriojorge merged 2 commits into
fix/propagator-zero-vectorsfrom
feat/fixed-plan-exponential-actions
Oct 25, 2026
Merged

rogeriojorge merged 2 commits into
fix/propagator-zero-vectorsfrom
feat/fixed-plan-exponential-actions

Conversation

@rogeriojorge

Copy link
Copy Markdown
Member

Adds fixed-plan exponential actions for autonomous linear operators when the caller can verify an induced-norm or numerical-range bound. Host planning selects a shifted Taylor schedule or a fixed-horizon Chebyshev recurrence; checkpointed application supports arbitrary compatible real/complex arrays and operator/input JVPs and VJPs, including zero inputs. Taylor plans additionally support time derivatives. Chebyshev coefficient planning uses the existing optional SciPy extra.

An optional action_plan selects either action inside exponential_eigenpairs, preserving outer extraction and original-operator residual checks. Existing callers that supply an Arnoldi dimension retain their behavior. Plans do not infer bounds from a black-box operator, and the returned truncation estimate excludes roundoff, operator/coefficient error, and derivative error. The API documentation explains those contracts, physical-coordinate transforms, and complex adjoints.

Validation: full current-stack suite passed with 988 tests and 11 optional skips; combined statement/branch coverage is 97.71% against the unchanged 95% requirement. All 62 propagator tests pass on both JAX 0.11.2 and the supported minimum JAX 0.4.38. Independent tests cover dense/sparse actions, Fréchet derivatives, realified Jacobians, zero-start adjoints, finite differences, nonnormal rectangles, scalar coefficient integrals, invalid budgets, and eigenpair integration. Ruff, mypy, and the warning-as-error Sphinx build pass. Propagator tests are added to the compatibility CI set.

This PR is stacked on #141, with fix/propagator-zero-vectors as its base so the zero-vector guard remains a separate change. No merge or default performance superiority is implied.

@rogeriojorge
rogeriojorge merged commit 2a248ec into fix/propagator-zero-vectors Oct 25, 2026
12 checks passed
rogeriojorge added a commit that referenced this pull request Oct 25, 2026
* Reject zero vectors in propagator eigenpair certification

* Add fixed-plan differentiable exponential actions (#142)

* Add optional fixed-plan checkpointed Taylor exponential actions

* Add verified-range Chebyshev exponential actions and release contract tests
@rogeriojorge rogeriojorge mentioned this pull request Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant