Skip to content

Simulation Templates

Simulation templates for chip design simulations using GDSFactory+.

Documentation

make docs caches executed Femwell notebook Markdown and images in .cache/femwell-notebooks. Re-running it restores unchanged notebooks instead of repeating their finite-element solves. Notebook edits or installed-package version changes invalidate the affected entries automatically.

Quantum RF pages use validated, locally executed snapshots from notebook_snapshots/. This keeps their plots and numerical results in the published documentation without requiring the specialized QPDK environment in the docs job. The build rejects a snapshot when its source cells no longer match the corresponding template.

Choosing a PDK

The meep templates load components from whichever PDK is active, so they work against any PDK without edits. Select it with the PDK environment variable, which gdsfactory reads into CONF.pdk:

export PDK=gdsfactory.gpdk

The docs build sets this in CI. Point it at another installed PDK module to run the templates against that PDK instead.

Cloud result cache

The cloud templates call sim.run(check_cache=True). Before submitting, gsim hashes the simulation inputs it is about to upload and asks the cloud whether a completed job with byte-identical inputs already exists; if so its results are reused instead of re-running the solver. Change anything that affects the inputs — geometry, materials, mesh, solver settings — and the hash changes, so the simulation runs for real.

The lookup never fails a run: a network or server error degrades to a normal submit. Drop check_cache=True to always force a fresh solve.

Template Categories

  • Modesolver: FEM mode solving, waveguide sweeps, GVD, propagation loss
  • Heater: Doped phase shifters, metal heater efficiency
  • FDTD: Meep, Tidy3D, Ansys Lumerical S-parameters, BEAMZ (local, no cloud submission)
  • HFSS: Driven capacitor, eigenmode resonator, Q2D CPW impedance
  • Quantum RF: Transmon design, circuit simulation, Monte Carlo fabrication tolerance
  • Circuit: Frequency domain, time domain, active models
  • SPICE: Operating point, DC sweep, AC, transient, noise, sensitivity