Skip to content

GPDK MMI with GDSFactory FDTD

The GDSFactory FDTD engine runs full-wave electromagnetic simulations from GDSFactory components. This notebook configures a 3D GPDK MMI, previews the simulation geometry, runs it in the cloud, and plots its S-parameters.

Requirements:

import gdsfactory as gf

from gsim import fdtd

gf.gpdk.PDK.activate()
component = gf.get_component("mmi1x2")
pyvirtualdisplay not available; continuing without Xvfb

Configure the FDTD simulation

simulation = fdtd.Simulation(pdk=gf.gpdk.PDK)
simulation.materials(background="SiO2", overrides={"si": 3.4757})
simulation.geometry(component)
simulation.source(port="o1", num_wavelengths=101)
simulation.domain(padding_um=1)
simulation.solver(energy_decay_fraction=1e-5, cell_size_nm=60)
Solver(cell_size_nm=60.0, max_timesteps=None, energy_decay_fraction=1e-05, max_wall_seconds=3600.0)

Preview the simulation geometry

simulation.plot_3d()

Run the simulation in the cloud

result = simulation.run(check_cache=True)
  fdtd-f844728c  completed  0m 00s


Extracting results.tar.gz...
Downloaded 2 files to sim-data-fdtd-f844728c

Plot the S-parameters

result.plot_plotly()