Work

smolyax: a high-performance implementation of the Smolyak interpolation operator in JAX

Year: 2025
Type: article
Abstract: The smolyax library provides interpolation capabilities for arbitrary multivariate and vectorvalued functions 𝑓 ∶ ℝ 𝑑 in → ℝ 𝑑 out for any 𝑑 in , 𝑑 out ∈ ℕ.It implements the Smolyak interpolation operator, which is known to overcome the curse-of-dimensionality plaguing naive multivariate interpolation (Barthelmann et al., 2000) and uses the barycentric interpolation formula (Berrut & Trefethen, 2004) for numerical stability.The implementation is based on JAX (Bradbury et al., 2018), a free and open-source Python library for high-performance computing that integrates with the Python and NumPy numerical computing ecosystem.Thanks to JAX's device management, smolyax runs natively on both CPU and GPU.While implementing Smolyak interpolation in JAX is challenging due to the highly irregular data structures involved, smolyax overcomes this by employing a tailored batching and padding strategy that enables efficient vectorization.
Language: English
Open Access status: diamond
OpenAlex ID: W4413382264
FWCI:
Cites: 16
Cited by:
Related to: 10