SciPost logo

SciPost Submission Page

A Python GPU-accelerated solver for the Gross-Pitaevskii equation and applications to many-body cavity QED

by Lorenzo Fioroni, Luca Gravina, Justyna Stefaniak, Alexander Baumgärtner, Fabian Finger, Davide Dreon, Tobias Donner

Submission summary

Authors (as registered SciPost users): Davide Dreon · Lorenzo Fioroni
Submission information
Preprint Link: https://arxiv.org/abs/2404.14401v1  (pdf)
Code repository: https://github.com/qo-eth/TorchGPE
Date submitted: 2024-04-23 18:36
Submitted by: Dreon, Davide
Submitted to: SciPost Physics Codebases
Ontological classification
Academic field: Physics
Specialties:
  • Atomic, Molecular and Optical Physics - Theory
  • Quantum Physics
Approach: Computational

Abstract

TorchGPE is a general-purpose Python package developed for solving the Gross-Pitaevskii equation (GPE). This solver is designed to integrate wave functions across a spectrum of linear and non-linear potentials. A distinctive aspect of TorchGPE is its modular approach, which allows the incorporation of arbitrary self-consistent and time-dependent potentials, e.g., those relevant in many-body cavity QED models. The package employs a symmetric split-step Fourier propagation method, effective in both real and imaginary time. In our work, we demonstrate a significant improvement in computational efficiency by leveraging GPU computing capabilities. With the integration of the latter technology, TorchGPE achieves a substantial speed-up with respect to conventional CPU-based methods, greatly expanding the scope and potential of research in this field.

Current status:
Awaiting resubmission

Reports on this Submission

Anonymous Report 2 on 2024-7-17 (Invited Report)

Strengths

1- The package provides easy access to powerful GPU-based methods.
2- The package is flexible enough to simulate a large variety of problems.
3- The paper is written in a clear and fairly pedagogical format.

Weaknesses

1- Lack of quantitative comparisons to known analytic results.
2- Lack of comparison or analysis between the tested GPU models.

Report

The paper by Fioroni et al. showcases the versatility and speed of their new GPU-enabled GPE solver. The paper is pedagogically written and easy to follow, while also demonstrating the variety of problems that may be approached. The advantage of using a GPU is demonstrated in a clear way. Overall, the paper, software, and documentation could prove to be a valuable tool for the ultracold gas and quantum optics communities.

Our main criticism is a lack of quantitative verification of the numerical methods against known analytic results in the paper. The paper does a great job showcasing the versatility of the software in many fairly complicated settings. This is great, but the results are only verified qualitatively: the Kapitza-Dirac oscillations of Figure 3, the phase diagram and BEC density modulation in Figure 4, and the roton softening in Figure 5 all look correct, but no quantitative analysis of these results seems to be made. Analytic results are not always possible of course, necessitating tools like this software. However, before going beyond known analytic results it is good to benchmark against those available. A few suggestions for quantitative comparisons are listed in the "requested changes" section below.

It is clear that the GPUs outperform the CPU. However, the differences in the GPU models was not discussed in the paper. It would be useful to include a discussion of any significant differences in the hardware specifications of the tested GPUs and whether any of those differences impacted performance.

In summary, we recommend the paper for acceptance after some quantitative checks of the numerical methods are demonstrated.

Requested changes

- The Kapitza-Dirac results in Figure 3c would benefit from a quantitative comparison to the standard method of integrating the Schrodinger equation in momentum space, as alluded to in the main text of the paper. This should show agreement with the simulation results for the a = 0 simulations at early times. This would provide both a quantitative check for the numerical methods, and show in what ways the simple method of integrating the Schrodinger equation breaks down at later times and for larger interaction strengths.

- It could be a good addition to include simulations of just a BEC in a harmonic trap before considering more complicated scenarios. This would allow one to see convergence to the analytic Thomas-Fermi distribution as one increases the atom number, for example.

- Please specify what $\kappa$ is (presumably the cavity loss rate) starting in Eq. 14.

- Please specify the atom number $N$ used for the simulations in Figure 4 so that the photon counts may be verified.

-Please comment on the differences between the tested GPU models. What is different about the hardware of these GPUs? Did the hardware specifications make any significant differences in performance, possibly beyond what is seen in the Figure 2 comparison to the CPU?

Recommendation

Ask for minor revision

  • validity: high
  • significance: high
  • originality: good
  • clarity: top
  • formatting: excellent
  • grammar: perfect

Anonymous Report 1 on 2024-5-23 (Invited Report)

Strengths

1) Clearly written library that should be easy to use
2) Good documentation of the features that are available

Weaknesses

1) Lack of comparison to other available libraries
2) Quite a few features missing which would make this a really useful toolbox

Report

The paper by Fiorioni et al introduces a new GPU accelerated python library for simulating the GPE in a range of potentials. The documentation included with the library is clear and the examples chosen and described are simple enough to easily follow but complicated enough to show a range of capabilities of the software. The structure and design of the software package should make it useful for researchers working in this area, especially when the additions mentioned in the final section are included. The paper would be significantly improved with the addition of more performance benchmarks for the more complicated models studied and also comparison to other libraries which are available for finding solutions to the same equations.

Requested changes

1) For each of the examples studied the authors should present a study of how well their algorithm converges to the correct result with eg the size of the grid, along with the required computing resources.

2) It would also be useful to add some comparisons to other libraries. How much more efficient is the code here?

3) The link at the end of the paper does not have the correct address

Recommendation

Ask for minor revision

  • validity: high
  • significance: ok
  • originality: ok
  • clarity: top
  • formatting: excellent
  • grammar: perfect

Login to report or comment