NLSEmagic: Nonlinear Schrödinger equation multi-dimensional MATLAB-based GPU-accelerated integrators using compact high-order schemes. NLSEmagic is a package of C and MATLAB script codes which simulate the nonlinear Schrödinger equation in one, two, and three dimensions. The code includes MEX integrators in C, as well as NVIDIA CUDA-enabled GPU-accelerated MEX files in C. The MATLAB script files call the compiled MEX codes forming an easy-to-use highly efficient program. The codes utilize a fourth-order (in time) Runge-Kutta scheme combined with the choice of standard second-order (in space) finite differencing, or a compact two-step fourth-order (in space) finite differencing. The code was developed as part of my Ph.D. dissertation, and includes two versions. One is a streamlined easy-to-follow script code which is meant as an example of how to use the MEX codes, while the other version is a full-research code which can reproduce my research results. NLSEmagic is freely distributed for use and modification. However, a nominal donation and acknowledgment of authorship is appreciated.
Keywords for this software
References in zbMATH (referenced in 4 articles )
Showing results 1 to 4 of 4.
- Caliari, Marco; Zuccher, Simone: A fast time splitting finite difference approach to Gross-Pitaevskii equations (2021)
- Danaila, Ionut; Protas, Bartosz: Computation of ground states of the Gross-Pitaevskii functional via Riemannian optimization (2017)
- Caplan, R. M.; Carretero-González, R.: Numerical stability of explicit Runge-Kutta finite-difference schemes for the nonlinear Schrödinger equation (2013)
- Caplan, R. M.; Carretero-González, R.: A two-step high-order compact scheme for the Laplacian operator and its implementation in an explicit method for integrating the nonlinear Schrödinger equation (2013)