pyOptiShared.Designs.flex_splitter

pyOptiShared.Designs.flex_splitter(widths: ndarray, length: float, waveguide_input: float = 0.5, taper_length: float = 3.0, taper_input: float = 1.0, resolution: int = 20, layer: int = 1, write: bool = False) Library

Creates a splitter where its main body consists of multiple sections of different widths.

Parameters:
  • widths (np.ndarray) – Array of widths in the taper section.

  • length (float) – Total length of the splitter body

  • waveguide_input (float, optional) – Input port width. Defaults to 0.5.

  • taper_length (float, optional) – Length of the taper section of the connected waveguides. Defaults to 3.0.

  • taper_input (float, optional) – The width of the taper connected to the splitter body. Defaults to 1.00.

  • resolution (int, optional) – The order of the polynomial used to smooth the body section widths. Defaults to 20.

  • layer (int, optional) – Defines the layer number of the device.

  • write (bool, optional) – Use to write the generated gds. Defaults to False.

Returns:

A gdstk Library of the created device.

Return type:

gdstk.Library