Peacock.jl

Peacock.jl: Photonic crystals in Julia - Published in JOSS (2020)

https://github.com/sp94/peacock.jl

Science Score: 98.0%

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

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

electromagnetic-simulation electromagnetics electromagnetism maxwell-equations maxwell-equations-solver photonic-crystals photonics physics plane-wave-expansion
Last synced: 6 months ago · JSON representation ·

Repository

Photonic crystals in Julia 🦚

Basic Info
  • Host: GitHub
  • Owner: sp94
  • License: mit
  • Language: Julia
  • Default Branch: master
  • Homepage:
  • Size: 3.49 MB
Statistics
  • Stars: 37
  • Watchers: 2
  • Forks: 9
  • Open Issues: 13
  • Releases: 2
Topics
electromagnetic-simulation electromagnetics electromagnetism maxwell-equations maxwell-equations-solver photonic-crystals photonics physics plane-wave-expansion
Created about 6 years ago · Last pushed 9 months ago
Metadata Files
Readme License Citation

README.md

Peacock logo

codecov DOI

Introduction

Peacock.jl - or the Plane-wave Expansion Approach to Characterising Optical Crystals in k-space - is a Julia package for studying photonic crystals using the Plane Wave Expansion Method.

Photonic crystals are materials whose optical properties arise from the structuring of the material when the size of the structures are comparable to the wavelengths of light. Peacock.jl is named for the irridescent colours of peacock feathers which arise not from pigmentation but from their photonic crystal structure, as shown below.

Different zooms of a Peacock Peacock by allanlau2000 from pixabay. Feather by suju from pixabay. Electron microscope image of photonic crystal structure from Zi, Jian, et al. "Coloration strategies in peacock feathers.", Proceedings of the National Academy of Sciences 100.22 (2003): 12576-12578. Copyright (2003) National Academy of Sciences.

As well as occuring naturally as in animals such as peacocks, advances in nanofabrication mean that 'designer' photonic crystals can now be manufactured for unprecedented control over the flow of light, with applications ranging from optical fibers to photonic circuitry. Photonic crystals are also a promising platform for more exotic materials like topological insulators.

Installation

julia julia> ] pkg> add Peacock

For more info on the package and usage instructions, see the documentation.

Features

Solve for... * Transverse electric (TE) and transverse magnetic (TM) modes of 2D photonic crystals: * Non-orthogonal unit cells * Inhomogeneous permittivity and/or permeability * Chern numbers of topological photonic crystals using built-in Wilson loop methods.

Focused on ease of use * Install with one line in Julia's package manager. * Simple visualisation of geometry, fields, and fully labelled band diagrams. * Reproduce and extend existing photonic crystals in the Peacock.Zoo submodule. * Easily accelerate calculations on CUDA-compatible GPUs.

Limitations

  • Currently only implemented for 2D photonic crystals.
  • Like all methods that solve Maxwell's equations in Fourier space, the Plane Wave Expansion Method converges slowly for high contrast materials such as metals (ϵ < 0).

Contributors

  • @sp94 (core)
  • @kabume (GPU support)

Referencing

If you use Peacock.jl in your work, please consider citing us as

bib @article{palmer2020peacock, title={Peacock.jl: Photonic crystals in {Julia}}, author={Palmer, Samuel J and Giannini, Vincenzo}, journal={Journal of Open Source Software}, volume={5}, number={54}, pages={2678}, year={2020} }

Owner

  • Name: Samuel J Palmer
  • Login: sp94
  • Kind: user
  • Location: London

Software Developer at Quaisr

JOSS Publication

Peacock.jl: Photonic crystals in Julia
Published
October 26, 2020
Volume 5, Issue 54, Page 2678
Authors
Samuel J. Palmer ORCID
The Blackett Laboratory, Imperial College London, London, SW7 2AZ, UK
Vincenzo Giannini ORCID
Instituto de Estructura de la Materia (IEM), Consejo Superior de Investigaciones Científicas (CSIC), Serrano 121, 28006, Madrid, Spain
Editor
David P. Sanders ORCID
Tags
physics optics photonics photonic crystals photonic topological insulators Maxwell's equations metamaterials plane wave expansion

Citation (CITATION.bib)

@article{palmer2020peacock,
  title={Peacock.jl: Photonic crystals in {Julia}},
  author={Palmer, Samuel J and Giannini, Vincenzo},
  journal={Journal of Open Source Software},
  volume={5},
  number={54},
  pages={2678},
  year={2020}
}

GitHub Events

Total
  • Push event: 1
  • Pull request review event: 1
  • Pull request event: 2
  • Fork event: 1
Last Year
  • Push event: 1
  • Pull request review event: 1
  • Pull request event: 2
  • Fork event: 1

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 258
  • Total Committers: 3
  • Avg Commits per committer: 86.0
  • Development Distribution Score (DDS): 0.012
Past Year
  • Commits: 1
  • Committers: 1
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
S J Palmer s****4@g****m 255
Ashish Panigrahi a****i@p****m 2
Sven g****3@p****t 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 21
  • Total pull requests: 7
  • Average time to close issues: 9 days
  • Average time to close pull requests: 27 days
  • Total issue authors: 7
  • Total pull request authors: 3
  • Average comments per issue: 1.9
  • Average comments per pull request: 0.57
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 6 months
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • sp94 (13)
  • kabume (2)
  • mlxd (2)
  • dpsanders (1)
  • nmoran (1)
  • qzhu2017 (1)
  • JuliaTagBot (1)
Pull Request Authors
  • paniash (3)
  • sp94 (3)
  • mainrs (2)
Top Labels
Issue Labels
enhancement (11) breaking (3) documentation (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 3
juliahub.com: Peacock

Photonic crystals in Julia 🦚

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 9.9%
Forks count: 17.4%
Stargazers count: 17.6%
Average: 21.0%
Dependent packages count: 38.9%
Last synced: 6 months ago

Dependencies

.github/workflows/CI.yml actions
  • actions/cache v1 composite
  • actions/checkout v2 composite
  • actions/setup-python 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/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite