We present and distribute a parallel finite-element toolbox written in the free software FreeFEM for computing the Bogoliubov-de Gennes (BdG) spectrum of stationary solutions to one- and two-component Gross-Pitaevskii (GP) equations, in two or three spatial dimensions. The parallelization of the toolbox relies exclusively upon the recent interfacing of FreeFEM with the PETSc library. The latter contains itself a wide palette of state-of-the-art linear algebra libraries, graph partitioners, mesh generation and domain decomposition tools, as well as a suite of eigenvalue solvers that are embodied in the SLEPc library. Within the present toolbox, stationary states of the GP equations are computed by a Newton method. Branches of solutions are constructed using an adaptive step-size continuation algorithm. The combination of mesh adaptivity tools from FreeFEM with the parallelization features from PETSc makes the toolbox efficient and reliable for the computation of stationary states. Their BdG spectrum is computed using the SLEPc eigenvalue solver. We perform extensive tests and validate our programs by comparing the toolbox's results with known theoretical and numerical findings that have been reported in the literature. Program summaryProgram Title: FFEM_BdG_ddm_toolbox.zipCPC Library link to program files:https://doi.org/10.17632/w9hg964wpb.1Licensing provisions: GPLv3Programming language:FreeFEM (v 4.12) free software (www.freefem.org)Nature of problem: Among the plethora of configurations that may exist in Gross-Pitaevskii (GP) equations modeling one or two-component Bose-Einstein condensates, only the ones that are deemed spectrally stable (or even, in some cases, weakly unstable) have high probability to be observed in realistic ultracold atoms experiments. To investigate the spectral stability of solutions requires the numerical study of the linearization of GP equations, the latter commonly known as the Bogoliubov-de Gennes (BdG) spectral problem. The present software offers an efficient and reliable tool for the computation of eigenvalues (or modes) of the BdG problem for a given two- or three-dimensional GP configuration. Then, the spectral stability (or instability) can be inferred from its spectrum, thus predicting (or not) its observability in experiments.Solution method: The present toolbox in FreeFEM consists of the following steps. At first, the GP equations in two (2D) and three (3D) spatial dimensions are discretized by using P2 (piece-wise quadratic) Galerkin triangular (in 2D) or tetrahedral (in 3D) finite elements. For a given configuration of interest, mesh adaptivity in FreeFEM is deployed in order to reduce the size of the problem, thus reducing the toolbox's execution time. Then, stationary states of the GP equations are obtained by a Newton method whose backbone involves the use of a reliable and efficient linear solver judiciously selected from the PETSc1 library. Upon identifying stationary configurations, to trace branches of such solutions a parameter continuation method over the chemical potential in the GP equations (effectively controlling the number of atoms in a BEC) is employed with step-size adaptivity of the continuation parameter. Finally, the computation of the stability of branches of solutions (i.e. the BdG spectrum), is carried out by accurately solving, at each point in the parameter space, the underlying eigenvalue problem by using the SLEPc2 library. Three-dimensional computations are made affordable in the present toolbox by using the domain decomposition method (DDM). In the course of the computation, the toolbox stores not only the solutions but also the eigenvalues and respective eigenvectors emanating from the solution to the BdG problem. We offer examples for computing stationary configurations and their BdG spectrum in one- and two-component GP equations.Running time: From minutes to hours depending on the mesh resolution and space dimension.
Read full abstract