SplineFlow: Flow Matching for Dynamical Systems with B-Spline Interpolants

Santanu Subhash Rathod, Pietro Liò, Xiao Zhang
1/30/2026
cs.LG

No confident code implementation found for this paper.

Abstract

Flow matching is a scalable generative framework for characterizing continuous normalizing flows with wide-range applications. However, current state-of-the-art methods are not well-suited for modeling dynamical systems, as they construct conditional paths using linear interpolants that may not capture the underlying state evolution, especially when learning higher-order dynamics from irregular sampled observations. Constructing unified paths that satisfy multi-marginal constraints across observations is challenging, since naïve higher-order polynomials tend to be unstable and oscillatory. We introduce SplineFlow, a theoretically grounded flow matching algorithm that jointly models conditional paths across observations via B-spline interpolation. Specifically, SplineFlow exploits the smoothness and stability of B-spline bases to learn the complex underlying dynamics in a structured manner while ensuring the multi-marginal requirements are met. Comprehensive experiments across various deterministic and stochastic dynamical systems of varying complexity, as well as on cellular trajectory inference tasks, demonstrate the strong improvement of SplineFlow over existing baselines. Our code is available at: https://github.com/santanurathod/SplineFlow.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{rathod2026splineflow,
  title  = {SplineFlow: Flow Matching for Dynamical Systems with B-Spline Interpolants},
  author = {Santanu Subhash Rathod and Pietro Liò and Xiao Zhang},
  year   = {2026},
  eprint = {2601.23072},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2601.23072v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2601.23072.svg)](https://codeofpaper.com/paper/2601.23072)

Discussion