ubcpdk.cells.straight_heater_meander#
- ubcpdk.cells.straight_heater_meander(length=320.0, heater_width=2.5, spacing=2, cross_section='strip', layer_heater='M1_HEATER', via_stack='via_stack_heater_mtop', n=3, port_orientation1=None, port_orientation2=None, radius=None)[source]#
Returns a meander based heater.
based on SungWon Chung, Makoto Nakai, and Hossein Hashemi, Low-power thermo-optic silicon modulator for large-scale photonic integrated systems Opt. Express 27, 13430-13459 (2019) https://www.osapublishing.org/oe/abstract.cfm?URI=oe-27-9-13430
- Parameters:
length (float) – phase shifter length.
heater_width (float) – width of the heater.
spacing (float) – waveguide spacing (center to center).
cross_section (CrossSection | str | dict[str, Any] | Callable[[...], CrossSection] | SymmetricalCrossSection | DCrossSection) – for waveguide.
layer_heater (tuple[int, int] | str | int | LayerEnum) – for top heater, if None, it does not add a heater.
via_stack (str | Callable[[...], Component] | dict[str, Any] | DKCell | None) – for the heater to via_stack metal.
n (int | None) – number of meanders.
port_orientation1 (float | None) – orientation of the first port. None for all orientations.
port_orientation2 (float | None) – orientation of the second port. None for all orientations.
radius (float | None) – radius of the meander.
- Return type:
Component