sangkuriang: Uma biblioteca Python pseudoespectral para simulação de sólitons de Korteweg-de Vries
sangkuriang: A pseudo-spectral Python library for Korteweg-de Vries soliton simulation
January 17, 2026
Autores: Sandy H. S. Herho, Faruq Khadami, Iwan P. Anwar, Dasapta E. Irawan
cs.AI
Resumo
A equação de Korteweg-de Vries (KdV) serve como modelo fundamental na física de ondas não lineares, descrevendo o equilíbrio entre a dispersão espacial e o efeito de empinamento não linear que dá origem aos sólitons. Este artigo introduz o *sangkuriang*, uma biblioteca Python de código aberto para resolver esta equação usando a discretização espacial pseudo-espectral de Fourier acoplada à integração temporal adaptativa de alta ordem. A implementação aproveita a compilação *just-in-time* (JIT) para eficiência computacional, mantendo a acessibilidade para fins didáticos. A validação abrange cenários progressivamente complexos, incluindo a propagação de um sóliton isolado, configurações simétricas de duas ondas, colisões por ultrapassagem entre ondas de diferentes amplitudes e interações de três corpos. A conservação dos invariantes clássicos é monitorizada ao longo de todas as simulações, com os desvios a permanecerem pequenos em todos os casos de teste. As velocidades dos sólitons medidas estão em conformidade com as previsões teóricas baseadas na relação amplitude-velocidade característica dos sistemas integráveis. Diagnósticos complementares extraídos da teoria da informação e da análise de recorrência confirmam que as soluções calculadas preservam a estrutura regular do espaço de fases esperada para dinâmicas completamente integráveis. O resolvedor produz dados em formatos científicos padrão, compatíveis com ferramentas de análise comuns, e gera visualizações da evolução espaço-temporal da onda. Ao combinar precisão numérica com acessibilidade prática em recursos computacionais modestos, o *sangkuriang* oferece uma plataforma adequada tanto para demonstrações em sala de aula de fenómenos de ondas não lineares quanto para pesquisa exploratória em dinâmica de sólitons.
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.