Examples¶
A guided path from “load a layout” to “run it on any FDTD engine and read the S-parameters.” Each entry below is a real Jupyter notebook, executed and committed with its outputs, so the plots and numbers you see are the actual solver output.
Every notebook reproduces for free: the live runs use beamz (Apache-2.0 JAX FDTD, on CPU) or tidy3d’s free local mode solver, and the cross-engine comparisons load recorded tidy3d/Lumerical artifacts. No cloud account, license, or GPU is required to run any of them.
The source of truth for each notebook is a paired .py (jupytext percent
format) under examples/; see examples/README.md for how to run them.
# |
Notebook |
You’ll learn |
|---|---|---|
00 |
Layout → S-matrix in ten lines, on the free engine. |
|
01 |
Load a GDS / gdsfactory cell, auto-detect ports, read the geometry view. |
|
02 |
Materials, the vertical layer stack, and (in |
|
03 |
The full flow end-to-end: geometry → permittivity → build → run → S-params → fields. |
|
04 |
|
|
05 |
Waveguide mode profiles, effective indices, and permittivity cross-sections. |
|
05b |
Field monitors: axes, pinned positions, recorded wavelengths, and |
|
06 |
Mesh-convergence sweeps, |
|
07 |
The identical job on beamz / tidy3d / Lumerical, and how they agree. |
|
08 |
Any EDA in, any engine out: gdsfactory / SiEPIC / raw-GDS frontends, then the full frontend × engine matrix. |
|
09 |
The |
|
10 |
Reference devices with known-good S-params — the Si→SiN escalator on the free engine. |
|
10b |
Polarization splitter and splitter-rotator from gdsfactory: TE/TM modes, multi-mode S-params, and per-polarization fields on two engines. |
|
11 |
A 95 µm SiEPIC Bragg grating on tidy3d: the stopband spectrum, and the same field monitor in-band (reflected) vs out-of-band (transmitted). |