Giter Site home page Giter Site logo

spins-b's Introduction

pypi black Binder image

SPINS-B 0.0.2

SPINS-B is the open source version of SPINS, a framework for gradient-based (adjoint) photonic optimization developed over the past decade at Jelena Vuckovic's Nanoscale and Quantum Photonics Lab at Stanford University. The full version can be licensed through the Stanford Office of Technology and Licensing (see FAQ).

The overall architecture is explained in our paper Nanophotonic Inverse Design with SPINS: Software Architecture and Practical Considerations.

Documentation

Documentation is continually updated over time.

Installation

You can install from pypi

pip install spins

Or you can install the development version if you plan to contribute

git clone https://github.com/stanfordnqp/spins-b.git
cd spins-b
make install

Features

  • Gradient-based (adjoint) optimization of photonic devices
  • 2D and 3D device optimization using finite-difference frequency-domain (FDFD)
  • Support for custom objective functions, sources, and optimization methods
  • Automatically save design methodology and all hyperparameters used in optimization for reproducibility

Upcoming Features

We are protoyping the next version of SPINS-B. This version of SPINS-B will support these new features:

  • Co-optimization of multiple device regions simulataneously
  • Integration with FDTD and other electromagnetic solvers
  • Easier to use and extend

Overview

Traditional nanophotonic design typically relies on parameter sweeps, which are expensive both in terms of computation power and time, and restrictive in their parameter space. Likewise, completely blackbox optimization algorithms, such as particle swarm and genetic algorithms, are also highly inefficient. In both these cases, the computational costs limit the degrees of the freedom of the design to be quite small. In contrast, by leveraging gradient-based optimization methods, our nanophotonic inverse design algorithms can efficiently optimize structures with tens of thousands of degrees of freedom. This enables the algorithms to explore a much larger space of structures and therefore design devices with higher efficiencies, smaller footprint, and novel functionalities.

Publications

Any publications resulting from the use of this software should acknowledge SPINS-B and cite the following papers:

For general device optimization:

  • Su et al. Nanophotonic Inverse Design with SPINS: Software Architecture and Practical Considerations. arXiv:1910.04829 (2019).

For grating coupler optimization:

  • Su et al. Fully-automated optimization of grating couplers. Opt. Express (2018).
  • Sapra et al. Inverse design and demonstration of broadband grating couplers. IEEE J. Sel. Quant. Elec. (2019).

spins-b's People

Contributors

jesselu avatar joamatab avatar jskarda avatar ludi1001 avatar nvsapra avatar tisparta avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.