BEC2HPC: A HPC spectral solver for nonlinear Schrödinger and rotating Gross-Pitaevskii equations. Stationary states computation

BEC2HPC: A HPC spectral solver for nonlinear Schrödinger and rotating Gross-Pitaevskii equations. Stationary states computation
复制标题

DOI:
10.1016/j.cpc.2021.108007
复制
发表时间:
2021-08
期刊:
Comput. Phys. Commun.
影响因子:
--
通讯作者:
Jérémie Gaidamour;Q. Tang;X. Antoine
Jérémie Gaidamour;Q. Tang;X. Antoine
中科院分区:
其他
文献类型:
--
作者:
Jérémie Gaidamour;Q. Tang;X. Antoine

文献摘要

相似文献

我们提出了BEC 2 HPC,这是一个并行的HPC谱求解器计算基态的非线性薛定谔方程和Gross-Pitaevskii方程(GPE)的旋转玻色-爱因斯坦凝聚体(BEC)建模。考虑到一个标准的伪谱离散的快速傅里叶变换(FFT)的基础上,该方法包括在寻找数值解的能量泛函最小化问题的归一化约束下,通过使用预处理的非线性共轭梯度法。我们提出了一些数值模拟和可扩展性的结果,二维和三维的问题,以获得快速旋转和大的非线性BEC的定态。程序概要程序标题:BEC 2 HPCCPC程序文件库链接:https://doi.org/10.17632/mdzpw4dr4t.1Licensing条款:GPL v2编程语言:C++,Python问题性质:该软件计算由Gross-Pitaevskii方程(GPE)建模的旋转玻色-爱因斯坦凝聚体(BEC)的定态。它实现了一个数值方法,是特别有效的BEC与快速旋转和大的非线性。并行实现允许在并行计算平台上执行2D或3D问题的大规模模拟。解决方法:使用基于快速傅立叶变换的迭代伪谱方法计算定态。计算采用的形式,使用预处理的非线性共轭梯度法求解的约束最小化问题。这个求解器是使用MPI和计算域的分解在分布式内存中实现的。其他注释包括限制和不寻常的功能:算法是在C++和MPI中实现的,但提供了一个Python接口来定义问题的物理性质。结果可以导出为HDF 5文件,并使用ParaView等外部工具进行可视化。该代码可用于并行实现其他谱方法或解决与BEC动力学相关的问题。
We present BEC2HPC which is a parallel HPC spectral solver for computing the ground states of the nonlinear Schrödinger equation and the Gross-Pitaevskii equation (GPE) modeling rotating Bose-Einstein condensates (BEC). Considering a standard pseudo-spectral discretization based on Fast Fourier Transforms (FFTs), the method consists in finding the numerical solution of the energy functional minimization problem under normalization constraint by using a preconditioned nonlinear conjugate gradient method. We present some numerical simulations and scalability results for the 2D and 3D problems to obtain the stationary states of BEC with fast rotation and large nonlinearities. The code takes advantage of existing HPC libraries and can itself be leveraged to implement other numerical methods like e.g. for the dynamics of BECs.Program summaryProgram title:BEC2HPCCPC Library link to program files:https://doi.org/10.17632/mdzpw4dr4t.1Licensing provisions:GPLv2Programming language:C++, PythonNature of problem:This software computes the stationary states of rotating Bose–Einstein condensates (BEC) modeled by the Gross–Pitaevskii equation (GPE). It implements a numerical method that is particularly effective for BEC with fast rotation and large nonlinearities. The parallel implementation allows to perform large-scale simulations of 2D or 3D problems on parallel computing platforms.Solution method:The stationary states are computed using an iterative pseudo-spectral method based on Fast Fourier Transforms. The computation takes the form of a constrained minimization problem solved using a preconditioned nonlinear conjugate gradient method. This solver is implemented in distributed memory using MPI and a decomposition of the computational domain.Additional comments including restrictions and unusual features:The algorithms are implemented in C++ and MPI but a Python interface is provided for defining the physics of the problem. Results can be exported to HDF5 files and visualized with external tools such as ParaView. The code can be used to implement other spectral methods in parallel or to solve problems related to the dynamics of BECs.