sangkuriang: una libreria Python pseudo-spettrale per la simulazione di solitoni di Korteweg-de Vries
sangkuriang: A pseudo-spectral Python library for Korteweg-de Vries soliton simulation
January 17, 2026
Autori: Sandy H. S. Herho, Faruq Khadami, Iwan P. Anwar, Dasapta E. Irawan
cs.AI
Abstract
L'equazione di Korteweg-de Vries (KdV) rappresenta un modello fondamentale nella fisica delle onde non lineari, descrivendo l'equilibrio tra la dispersione e l'effetto di steepening non lineare che dà origine ai solitoni. Questo articolo presenta **sangkuriang**, una libreria Python open-source per risolvere questa equazione utilizzando la discretizzazione spaziale pseudo-spettrale di Fourier accoppiata a metodi di integrazione temporale adattivi di ordine elevato. L'implementazione sfrutta la compilazione just-in-time (JIT) per l'efficienza computazionale, mantenendo al contempo l'accessibilità per scopi didattici. La validazione comprende scenari progressivamente complessi, tra cui la propagazione di un solitone isolato, configurazioni simmetriche a due onde, collisioni di sorpasso tra onde di ampiezza diversa e interazioni a tre corpi. La conservazione degli invarianti classici è monitorata durante le simulazioni, con scostamenti che rimangono piccoli in tutti i casi test. Le velocità dei solitoni misurate si conformano strettamente alle previsioni teoriche basate sulla relazione ampiezza-velocità caratteristica dei sistemi integrabili. Diagnostiche complementari tratte dalla teoria dell'informazione e dall'analisi di ricorrenza confermano che le soluzioni calcolate preservano la struttura regolare dello spazio delle fasi attesa per dinamiche completamente integrabili. Il risolutore produce dati in formati scientifici standard compatibili con i comuni strumenti di analisi e genera visualizzazioni dell'evoluzione spazio-temporale dell'onda. Combinando accuratezza numerica e accessibilità pratica con risorse computazionali modeste, sangkuriang offre una piattaforma adatta sia per dimostrazioni didattiche dei fenomeni delle onde non lineari che per la ricerca esplorativa sulla dinamica dei solitoni.
English
The Korteweg-de Vries (KdV) equation serves as a foundational model in nonlinear wave physics, describing the balance between dispersive spreading and nonlinear steepening that gives rise to solitons. This article introduces sangkuriang, an open-source Python library for solving this equation using Fourier pseudo-spectral spatial discretization coupled with adaptive high-order time integration. The implementation leverages just-in-time (JIT) compilation for computational efficiency while maintaining accessibility for instructional purposes. Validation encompasses progressively complex scenarios including isolated soliton propagation, symmetric two-wave configurations, overtaking collisions between waves of differing amplitudes, and three-body interactions. Conservation of the classical invariants is monitored throughout, with deviations remaining small across all test cases. Measured soliton velocities conform closely to theoretical predictions based on the amplitude-velocity relationship characteristic of integrable systems. Complementary diagnostics drawn from information theory and recurrence analysis confirm that computed solutions preserve the regular phase-space structure expected for completely integrable dynamics. The solver outputs data in standard scientific formats compatible with common analysis tools and generates visualizations of spatiotemporal wave evolution. By combining numerical accuracy with practical accessibility on modest computational resources, sangkuriang offers a platform suitable for both classroom demonstrations of nonlinear wave phenomena and exploratory research into soliton dynamics.