v0.11.0-beta — Python bindings for the 0.10.0 wave (#15)
Pre-release
Pre-release
[0.11.0-beta] — 2026-06-27
Python binding surface for the 0.10.0-beta feature wave (#11–#14 + A1).
Issues #11, #12, #13, #14, and the graph Krylov additions from the 0.10.x patch
series are now usable from Python via the semiflow-pde wheel. No breaking
changes to the existing Python surface or the Rust public API.
Added (Python bindings, #15)
SymmetricOperator.from_csr/SymmetricOperator.evolve_batched—
externally-assembled symmetric PSD sparse operators (FEM stiffness, Robin BC)
accepted as CSR arrays; batched time-stepping across multiple right-hand sides.symmetric_op_expmv_frechet— combined matrix-exponential action +
per-entry Fréchet gradient in one call.EntrySensitivityis not exposed as a
separate Python class; the gradient is returned directly from this function.MassKOperator/mass_lumped_evolve— generalized-eigenproblem(M, K)
propagation via the congruence chain = R⁻ᵀKR⁻¹; lumped-mass 3-liner path.ConservativeDiffusionChernoff/assemble_conservative_csr_1d—
conservative divergence-form diffusion with harmonic-mean face conductivities;
to_symmetric_operator()bridge to the Krylov engine.phi_action/phi_action_batched/Etdrk4— ETD φ-functions and the
Cox–Matthews ETDRK4 semilinear integrator. Nonlinearity is menu-based
(AllenCahn,Burgers,GrayScott,KuramotoSivashinsky); arbitrary
per-step Python callbacks are deferred (ADR-0179 / ADR-0189 wall preserved).Laplacian.from_csr— direct CSR-based Laplacian construction path.- PEP 561 stubs updated to cover all new symbols; 16/16 smoke tests green.
Changed
- Registry metadata:
ChangelogandRelease Noteslinks now appear on the
PyPI sidebar (semiflow-pde[project.urls]), the crates.iosemiflowpage
(README## Changelogsection), and the npm@semiflow/wasmpage
(README## Changelog / Release notessection).