Kaboudian Abouzar, Cherry Elizabeth M, Fenton Flavio H
School of Physics, Georgia Institute of Technology.
School of Mathematical Sciences, Rochester Institute of Technology.
Chaos Solitons Fractals. 2019 Apr;121:6-29. doi: 10.1016/j.chaos.2019.01.005. Epub 2019 Feb 16.
The study of complex systems has emerged as an important field with many discoveries still to be made. Computer simulation and visualization provide important tools for studying complex dynamics including chaos, solitons, and fractals, but available computing power has been a limiting factor. In this work, we describe a novel and highly efficient computing and visualization paradigm using a Web Graphics Library (WebGL 2.0) methodology along with our newly developed library (Abubu.js). Our approach harnesses the power of widely available and highly parallel graphics cards while maintaining ease of use by simplifying programming through hiding implementation details, running in a web browser without the need for compilation, and avoiding the use of plugins. At the same time, it allows for interactivity, such as changing parameter values on the fly, and its computing is so fast that zooming in on a region of a fractal like the Mandelbrot set can incur no delay despite having to recalculate values for the entire plane. We demonstrate our approach using a wide range of complex systems that display dynamics from fractals to standing and propagating waves in 1, 2 and 3 dimensions. We also include some models with instabilities that can lead to chaotic dynamics. For all the examples shown here we provide links to the codes for anyone to use, modify and further develop with other models. Overall, the enhanced visualization and computation capabilities provided by WebGL together with Abubu.js have great potential to facilitate new discoveries about complex systems.
复杂系统的研究已成为一个重要领域,仍有许多发现有待做出。计算机模拟和可视化提供了研究复杂动力学(包括混沌、孤子和分形)的重要工具,但可用的计算能力一直是一个限制因素。在这项工作中,我们描述了一种新颖且高效的计算和可视化范式,它使用了Web图形库(WebGL 2.0)方法以及我们新开发的库(Abubu.js)。我们的方法利用了广泛可用且高度并行的图形卡的能力,同时通过隐藏实现细节来简化编程,在网页浏览器中运行而无需编译,并且避免使用插件,从而保持了易用性。与此同时,它允许进行交互,例如即时更改参数值,并且其计算速度非常快,以至于在放大分形区域(如曼德勃罗集)时,尽管必须重新计算整个平面的值,但不会产生延迟。我们使用广泛的复杂系统来展示我们的方法,这些系统展示了从分形到一维、二维和三维的驻波和行波的动力学。我们还包括一些具有不稳定性的模型,这些不稳定性可能导致混沌动力学。对于此处展示的所有示例,我们提供了代码链接,任何人都可以使用、修改并与其他模型一起进一步开发。总体而言,WebGL与Abubu.js一起提供的增强可视化和计算能力具有极大潜力,有助于推动关于复杂系统的新发现。