piel.models.physical.photonic.mzi#

Attributes#

Functions#

mzi(→ gdsfactory.component.Component)

Mzi.

Module Contents#

mzi(delta_length: float = 10.0, length_y: float = 2.0, length_x: float | None = 0.1, bend: gdsfactory.typings.ComponentSpec = bend_euler, straight: gdsfactory.typings.ComponentSpec = straight_function, straight_y: gdsfactory.typings.ComponentSpec | None = None, straight_x_top: gdsfactory.typings.ComponentSpec | None = None, straight_x_bot: gdsfactory.typings.ComponentSpec | None = None, extend_ports_straight_x: float | None = None, splitter: gdsfactory.typings.ComponentSpec = 'mmi1x2', combiner: gdsfactory.typings.ComponentSpec | None = None, with_splitter: bool = True, port_e1_splitter: str = 'o2', port_e0_splitter: str = 'o3', port_e1_combiner: str = 'o2', port_e0_combiner: str = 'o3', nbends: int = 2, cross_section: gdsfactory.typings.CrossSectionSpec = 'xs_sc', cross_section_x_top: gdsfactory.typings.CrossSectionSpec | None = None, cross_section_x_bot: gdsfactory.typings.CrossSectionSpec | None = None, mirror_bot: bool = False, add_optical_ports_arms: bool = False, add_electrical_ports_bot: bool = True, min_length: float = 0.01) gdsfactory.component.Component[source]#

Mzi.

Parameters:
  • delta_length – bottom arm vertical extra length.

  • length_y – vertical length for both and top arms.

  • length_x – horizontal length. None uses to the straight_x_bot/top defaults.

  • bend – 90 degrees bend library.

  • straight – straight function.

  • straight_y – straight for length_y and delta_length.

  • straight_x_top – top straight for length_x.

  • straight_x_bot – bottom straight for length_x.

  • extend_ports_straight_x – optional extend connection for straight_x_bot/top.

  • splitter – splitter function.

  • combiner – combiner function.

  • with_splitter – if False removes splitter.

  • port_e1_splitter – east top splitter port.

  • port_e0_splitter – east bot splitter port.

  • port_e1_combiner – east top combiner port.

  • port_e0_combiner – east bot combiner port.

  • nbends – from straight top/bot to combiner (at least 2).

  • cross_section – for routing (sxtop/sxbot to combiner).

  • cross_section_x_top – optional top cross_section (defaults to cross_section).

  • cross_section_x_bot – optional bottom cross_section (defaults to cross_section).

  • mirror_bot – if true, mirrors the bottom arm.

  • add_optical_ports_arms – add all other optical connection in the arms with top_ and bot_ prefix.

  • add_electrical_ports_bot – add electrical connection to the bottom arm.

  • min_length – minimum length for the straight_x_bot/top.

               b2______b3
              |  sxtop  |
      straight_y        |
              |         |
              b1        b4
    splitter==|         |==combiner
              b5        b8
              |         |
      straight_y        |
              |         |
delta_length/2          |
              |         |
             b6__sxbot__b7
                  Lx
mzi1x2#
mzi2x2_2x2#
mzi2x2_2x2_phase_shifter#