Skip to content

Fast accurate creation, detection and analysis of quantum vortex distributions.

License

Notifications You must be signed in to change notification settings

AshtonSBradley/VortexDistributions.jl

Repository files navigation

VortexDistributions.jl

Build Status Coverage

Tools for creating and detecting quantum vortices in Bose-Einstein condensates.

  • Fast, accurate vortex detection.
    • Highly optimized version of the plaquette method (phase integral around each 4-point plaquette), with recursive interpolation to achieve a good balance between speed and accuracy.
    • At present only tests for charge +/-1 in 2D
  • Vortex creation
    • Solves the 2D GPE problem for charge n on the infinite domain
    • Interpolates vortex solution to density and phase imprint on arbitrary 2D domains
  • Recursive cluster algorithm
  • Vortex correlation functions

Installation

]add VortexDistributions

Detection Example

using VortexDistributions, Plots
gr(xlabel="x",ylabel="y",legend=false)

# make a simple 2D test field
Nx = 400; Ny = Nx
Lx = 200; Ly = Lx
x = LinRange(-Lx / 2, Ly / 2, Nx); y = x
psi0 = one.(x*y') |> complex

# doubly periodic boundary conditions
psi = Torus(psi0,x,y)

# make a point vortex
pv = PointVortex(30.0,70.3,-1)

# make a scalar GPE vortex with exact core
spv = ScalarVortex(pv)
vortex!(psi,spv)

# make some more random vortices
vort = rand_vortex(10,psi)
vortex!(psi,vort)

We can recover the raw point vortex data from PointVortex() with

vortex_array(pv)

or from a ScalarVortex() with

vortex_array(spv.vort)

We can find all the vortices, removing edge vortices by default:

vfound = findvortices(psi)

For a single vortex example, we show have the phase at successive zoom levels with vortex location, +, and detected location, o (see examples):

and density at successive zoom levels with vortex location and detected location:

The benchmark gives (2018 MacBook Pro 2.33GHz Intel i5)

using BenchmarkTools
julia> @btime vort = findvortices(psi)
  4.037 ms (585 allocations: 3.84 MiB)

Acknowledgements

Matthew Reeves, Thomas Billam, Michael Cawte

External links

Signatures of Coherent Vortex Structures in a Disordered 2D Quantum Fluid,
Matthew T. Reeves, Thomas P. Billam, Brian P. Anderson, and Ashton S. Bradley,
Physical Review A 89, 053631 (2014)

Onsager-Kraichnan Condensation in Decaying Two-Dimensional Quantum Turbulence,
Thomas P. Billam, Matthew T. Reeves, Brian P. Anderson, and Ashton S. Bradley,
Physical Review Letters 112, 145301 (2014)

About

Fast accurate creation, detection and analysis of quantum vortex distributions.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages