Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] afbq_v1_0.tar.gz(487 Kbytes)
Manuscript Title: Numerical modeling of exciton-polariton Bose-Einstein condensate in a microcavity
Authors: Oksana Voronych, Adam Buraczewski, Michal Matuszewski, Magdalena Stobińska
Program title: EPCGP
Catalogue identifier: AFBQ_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 215(2017)246
Programming language: C++ with OpenMP extensions (main numerical program), Python (helper scripts).
Computer: Modern PC (tested on AMD and Intel processors), HP BL2x220.
Operating system: Unix/Linux and Windows.
Has the code been vectorised or parallelized?: Yes (OpenMP)
RAM: 200 MB for single run
Keywords: Exciton-polariton superfluid, Bose-Einstein condensate, Microcavity, Gross-Pitaevskii equation, Runge-Kutta method.
Classification: 7, 7.7.

Nature of problem:
An exciton-polariton superfluid is a novel, interesting physical system allowing investigation of high temperature Bose-Einstein condensation of exciton-polaritons-quasiparticles carrying spin. They have brought a lot of attention due to their unique properties and potential applications in polariton-based optoelectronic integrated circuits. This is an out-of-equilibrium quantum system confined within a semiconductor microcavity. It is described by a set of nonlinear differential equations similar in spirit to the Gross-Pitaevskii (GP) equation, but their unique properties do not allow standard GP solving frameworks to be utilized. Finding an accurate and efficient numerical algorithm as well as development of optimized numerical software is necessary for effective theoretical investigation of exciton-polaritons.

Solution method:
A Runge-Kutta method of 4th order was employed to solve the set of differential equations describing exciton-polariton superfluids. The method was fitted for the exciton-polariton equations and further optimized. The C++ programs utilize OpenMP extensions and vector operations in order to fully utilize the computer hardware.

Running time:
6h for 100 ps evolution, depending on the values of parameters