gdsfactory.cross_section.strip_heater_metal_undercut

gdsfactory.cross_section.strip_heater_metal_undercut#

gdsfactory.cross_section.strip_heater_metal_undercut(width: float = 0.5, layer: tuple[int, int] | str | int | LayerEnum = 'WG', heater_width: float = 2.5, trench_width: float = 6.5, trench_gap: float = 2.0, layer_heater: tuple[int, int] | str | int | LayerEnum = 'HEATER', layer_trench: tuple[int, int] | str | int | LayerEnum = 'DEEPTRENCH', sections: tuple[Section, ...] | None = None, **kwargs: Any) CrossSection[source]#

Returns strip cross_section with top metal and undercut trenches on both.

sides.

dimensions from https://doi.org/10.1364/OE.18.020298

Parameters:
  • width – waveguide width.

  • layer – waveguide layer.

  • heater_width – of metal heater.

  • trench_width – in um.

  • trench_gap – from waveguide edge to trench edge.

  • layer_heater – heater layer.

  • layer_trench – tench layer.

  • sections – cross_section sections.

  • kwargs – cross_section settings.

|<-------heater_width--------->|
 ______________________________
|                              |
|         layer_heater         |
|______________________________|

     |<------width------>|
      ____________________ trench_gap
     |                   |<----------->|              |
     |                   |             |   undercut   |
     |       width       |             |              |
     |                   |             |<------------>|
     |___________________|             | trench_width |
                                       |              |
                                       |              |
import gdsfactory as gf

xs = gf.cross_section.strip_heater_metal_undercut(width=0.5, heater_width=2, trench_width=4, trench_gap=4)
p = gf.path.arc(radius=10, angle=45)
c = p.extrude(xs)
c.plot()

(Source code, png, hires.png, pdf)

../_images/gdsfactory-cross_section-strip_heater_metal_undercut-1.png