ubcpdk.components.taper

ubcpdk.components.taper#

ubcpdk.components.taper(length: float = 10.0, width1: float = 0.5, width2: float | None = None, port: Port | None = None, with_two_ports: bool = True, cross_section: CrossSectionSpec = 'xs_sc', port_order_name: tuple | None = ('o1', 'o2'), port_order_types: tuple | None = ('optical', 'optical'), **kwargs) Component#

Linear taper, which tapers only the main cross section section.

Deprecated, use gf.components.taper_cross_section instead

Parameters:
  • length – taper length.

  • width1 – width of the west/left port.

  • width2 – width of the east/right port. Defaults to width1.

  • port – can taper from a port instead of defining width1.

  • with_two_ports – includes a second port. False for terminator and edge coupler fiber interface.

  • cross_section – specification (CrossSection, string, CrossSectionFactory dict).

  • port_order_name (tuple) – Ordered tuple of port names. First port is default taper port, second name only if with_two_ports flags used.

  • port_order_types (tuple) – Ordered tuple of port types. First port is default taper port, second name only if with_two_ports flags used.

  • kwargs – cross_section settings.