A metalens focuses light with a dense array of subwavelength nanopillars rather than a curved
surface. Designing one means solving Maxwell's equations in periodic subwavelength structures,
over and over, for every candidate geometry. CELERIS is my own solver for that problem, written
from the ground up rather than wrapped around an existing kernel.
The solver
Rigorous coupled-wave analysis via the Fourier modal method: 1D TE/TM multilayer gratings with
Li and Liu–Fan inverse-rule factorisation, the full 2D-vectorial P·Q formulation for biperiodic
nanopillar arrays, and stable Redheffer scattering-matrix layer recursion.
Validation
Every layer of the stack is checked against closed-form physics, an independent method, or
energy conservation:
- RCWA against the transfer-matrix method to 1×10−6
- Multilayer scattering-matrix agreement to 1×10−14
- 2D → 1D reduction, TE and TM, to below 1×10−10
- Σ(diffraction efficiency) = 1.000000
- Diffraction-limited designed focal spots at FWHM = λf/D
Independently cross-validated against the grcwa and Stanford S4 solvers (TE to roughly
1×10−7), and it reproduces canonical published metalenses (Khorasaninejad et al.,
Science 2016; Chen et al., Nat. Nanotechnol. 2018).
Design and analysis
The physical capability standalone RCWA kernels lack: Sellmeier and tabulated n,k
dispersion; meta-atom library sweeps with automatic etch-depth selection for full 2π phase
coverage; gradient-based (Adam) inverse design; and Pancharatnam–Berry geometric-phase and
polarisation-multiplexed lenses exploiting form birefringence, reporting per-polarisation RMS
phase and focal isolation in dB. Analysis covers Strehl ratio, Zernike wavefront, MTF, chromatic
focal shift, through-focus caustic, and fabrication-tolerance Monte Carlo — with
fabrication-ready GDSII export.
Performance
Rayleigh–Sommerfeld far-field propagation is implemented as a CUDA kernel and benchmarked
against the project's own multithreaded CPU path: roughly 120–190× faster on a laptop RTX 4070,
with single- and double-precision PSFs agreeing to within 4.2×10−5, and automatic CPU
fallback.
Numbers
- 10⁻¹⁴
Multilayer scattering-matrix agreement.
- 1.000000
Sum of diffraction efficiencies.
- 120–190×
CUDA speedup over the multithreaded CPU path (laptop RTX 4070).
- 4.2×10⁻⁵
Largest gap between single- and double-precision PSFs.
C++23 and CUDA, with Python bindings and a native desktop GUI. v1.0.0 is archived on
Zenodo (doi:10.5281/zenodo.21891345); a
sole-author JOSS submission is planned for early 2027.