Skip to main content

A fast Gross-Pitaevskii equation solver for scalar, spin-1 and spin-2 BEC systems.

Project description

logo

A fast and easy to use Gross-Pitaevskii equation solver.

Description

PyGPE is a CUDA-accelerated Python library for solving the Gross-Pitaevskii equations for use in simulating Bose-Einstein condensate systems.

Supported features

  • Scalar, two-component, spin-1, and spin-2 BEC systems.
  • 1D, 2D, and 3D grid lattices.
  • GPU support.
  • HDF5 data saving system.
  • Method for generating vortices within the system.

Requirements

  • Python (3.10 and above),
  • h5py (^3.6.0),
  • numpy (^1.26.3),
  • Matplotlib (^3.8.2)

If using a GPU:

  • CUDA Toolkit (>=11.2)
  • CuPy (>=10.2.0).

Installation

The simplest way to begin using PyGPE is through pip:

pip install pygpe

By default, PyGPE will use the CPU to perform calculations. However, if a CUDA-capable GPU is detected, PyGPE will automatically utilise it for drastic speed-ups in computation time.

Examples

See examples folder for various examples on the usage of the library. Below is an animation of superfluid turbulence in a scalar BEC simulated using PyGPE on a $512^2$ lattice for $N_t=200000$ time steps taking ~5 minutes to complete on an RTX 2060.

logo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygpe-2.0.1.tar.gz (17.0 kB view hashes)

Uploaded Source

Built Distribution

pygpe-2.0.1-py3-none-any.whl (26.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page