https://github.com/ashtonsbradley/phasespacetools.jl

Sampling quantum phase space distributions

https://github.com/ashtonsbradley/phasespacetools.jl

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.8%) to scientific vocabulary

Keywords

julia phase-space quantum-field quantum-optics

Keywords from Contributors

bose-einstein-condensate quantum vortex
Last synced: 6 months ago · JSON representation

Repository

Sampling quantum phase space distributions

Basic Info
  • Host: GitHub
  • Owner: AshtonSBradley
  • License: other
  • Language: Julia
  • Default Branch: master
  • Homepage:
  • Size: 2.95 MB
Statistics
  • Stars: 7
  • Watchers: 2
  • Forks: 1
  • Open Issues: 0
  • Releases: 5
Topics
julia phase-space quantum-field quantum-optics
Created about 8 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License

README.md

PhaseSpaceTools

Dev Build Status Coverage DOI

Sample quantum initial states commonly encountered in quantum phase space simulations of Bose fields, including those encountered in quantum optics and Bose-Einstein condensates.

Wigner and positive-P distributions are available, being the most useful for dynamical simulations.

Available distributions are glauberP, positiveP wigner, positiveW, husimiQ.

Install

julia julia> ]add PhaseSpaceTools

Usage

```julia julia> using PhaseSpaceTools

help?> positiveP search: positiveP positiveW

α,α⁺ = positiveP(state <: State,N)

Generate N samples from the positive-P (+P) phase-space distribution for state.

Moments of the +P distribution generate quantum operator averages that are normally ordered.

In general the two random variates α,α⁺ are statistically independent for the +P distribution. ```

Implemented states

```julia help?> State search: State state estimate InvalidStateException AbstractSet AbstractVector AbstractVecOrMat stacktrace StackTraces istaskstarted abstract type AbstractRange AbstractPattern

State

Abstract supertype for all sampled states: state <: State.

Examples ≡≡≡≡≡≡≡≡≡≡

Find all states that may be sampled =====================================

julia> subtypes(State)

6-element Vector{Any}: Bogoliubov Coherent Crescent Fock Squeezed Thermal

Create and sample a particular state (vacuum) ===============================================

julia> s = Fock(0) Fock(0) julia> wigner(s,100) ┌ Warning: Fock state sampling for W is only valid for n ≫ 1.

Here a warning is generated since Fock sampling is not well defined for small n.

A simpler way to sample the vacuum is

julia> s = Coherent(0) Coherent(0.0 + 0.0im) # type conversion to ComplexF64.

julia> wigner(s,100) (ComplexF64[0.33820868828162637 + 0.4407579103538181im, 0.057183146091823775 - 0.2772571883006981im, ...

generating two vectors of sampled points α,α⁺ in the complex plane. In this case, α = conj(α⁺), as we are not working with a doubled phase space. ```

Coherent state

A coherent state |α⟩ is sampled as julia α = 1.0+im*2.0 # coherent amplitude s = Coherent(α) # define state |α⟩ N = 1000 # number of samples a,a⁺ = positiveP(s,N) This is a special case where the two phase space variables a and a⁺ are complex conjugate, and non-stochastic in the +P representation.

Fock state

An approximate Fock state sampler in the Wigner representation: julia n = 100 s = Fock(n) # define number state |n⟩ N = 1000 # number of samples a,a⁺ = wigner(s,N) Provides an approximate sampling of W that reproduces operator averages for large n.

Examples

See /examples/PhaseSpaceTools.ipynb for more usage.

External links

Numerical representation of quantum states in the positive-P and Wigner representations, \ M K Olsen, A S Bradley, \ Optics Communications 282, 3924 (2009)

Scipost Commentary with full erratum

Owner

  • Name: Ashton Bradley
  • Login: AshtonSBradley
  • Kind: user
  • Location: Dunedin, New Zealand
  • Company: University of Otago

Associate Professor of Physics

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 247
  • Total Committers: 4
  • Avg Commits per committer: 61.75
  • Development Distribution Score (DDS): 0.142
Top Committers
Name Email Commits
Ashton Bradley a****y@g****m 212
AshtonSBradley a****y@o****z 18
AshtonSBradley a****y@h****l 16
github-actions[bot] 4****]@u****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 1
  • Total pull requests: 13
  • Average time to close issues: less than a minute
  • Average time to close pull requests: about 2 months
  • Total issue authors: 1
  • Total pull request authors: 2
  • Average comments per issue: 4.0
  • Average comments per pull request: 0.15
  • Merged pull requests: 4
  • Bot issues: 0
  • Bot pull requests: 10
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • JuliaTagBot (1)
Pull Request Authors
  • github-actions[bot] (10)
  • AshtonSBradley (4)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 4
juliahub.com: PhaseSpaceTools

Sampling quantum phase space distributions

  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 9.9%
Average: 33.6%
Dependent packages count: 38.9%
Forks count: 40.4%
Stargazers count: 45.1%
Last synced: 6 months ago

Dependencies

.github/workflows/CI.yml actions
  • actions/cache v1 composite
  • actions/checkout v2 composite
  • codecov/codecov-action v1 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-processcoverage v1 composite
  • julia-actions/julia-runtest v1 composite
  • julia-actions/setup-julia v1 composite
.github/workflows/CompatHelper.yml actions
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite