ubcpdk.cells.straight_heater_metal

ubcpdk.cells.straight_heater_metal#

ubcpdk.cells.straight_heater_metal(length=320.0, length_undercut_spacing=6.0, length_undercut=30.0, length_straight=0.1, length_straight_input=15.0, with_undercut=False, port_orientation1=None, port_orientation2=None, cross_section='strip')[source]#

Returns a thermal phase shifter.

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

Parameters:
  • length (float) – phase shifter length.

  • length_undercut_spacing (float) – spacing between the waveguide and the undercut.

  • length_undercut (float) – undercut length.

  • length_straight (float) – straight length.

  • length_straight_input (float) – straight length input.

  • with_undercut (bool) – isolation trenches for higher efficiency.

  • port_orientation1 (int | None) – orientation of the first port. None for all orientations.

  • port_orientation2 (int | None) – orientation of the second port. None for all orientations.

  • cross_section (CrossSection | str | dict[str, Any] | Callable[[...], CrossSection] | SymmetricalCrossSection | DCrossSection) – for waveguide.

Return type:

Component