This is a package developed primarily by Tyler Hughes based on our code and learnings from angler and fdfdpy. Ceviche is designed to use the flexible automatic differentiation (AD) capabilities of the HIPS autograd package. This design choice carries over into optimizing photonic devices because AD simplifies the process of constructing objective / loss functions and taking gradients of several simulations simultaneously. Having a fully differentiable optical simulation framework also facilitates the integration of inverse design and machine learning models.
This code is the basis for the results presented in our forward mode differentiation paper .
Forward-Mode Differentiation of Maxwell’s Equations
Tyler W Hughes,
Ian A.D. Williamson,