mxpic.components.primitives.pic.spiral#

spiral#

../../../../_images/spiral.png
class mxpic.components.primitives.pic.spiral.spiral(name=None, shape='circle', Dmin=50, R_bend=10, Rmin_euler=10, Lmin=50, width=2, w_port=0.45, w_bend_center=1, Rmin_bend_center=10, gap=1, cycles=20, xs='strip', layer=None, w_bend_port=None, Ltp_port=10, res=0.5, rib2strip=True, port_angle=180, Euler_bend=False, show_pins=False, sharp_patch=True)#

Bases: object

spiral primitive component.

This component builds the spiral layout cell.

Parameters:
  • name (str, optional) – Unique identifier for the device cell. Default is None.

  • shape (str, optional) – Value for the shape parameter. Default is ‘circle’.

  • Dmin (float, optional) – Value for the Dmin parameter. Default is 50.

  • R_bend (float, optional) – Radius parameter in microns. Default is 10.

  • Rmin_euler (float, optional) – Radius parameter in microns. Default is 10.

  • Lmin (float, optional) – Length parameter in microns. Default is 50.

  • width (float, optional) – Width parameter in microns. Default is 2.

  • w_port (float, optional) – Width parameter in microns. Default is 0.45.

  • w_bend_center (float, optional) – Width parameter in microns. Default is 1.

  • Rmin_bend_center (float, optional) – Radius parameter in microns. Default is 10.

  • gap (float, optional) – Spacing or gap parameter in microns. Default is 1.

  • cycles (float, optional) – Count or repetition parameter. Default is 20.

  • xs (str, optional) – Layer or cross-section name used by the device. Default is ‘strip’.

  • layer (str, optional) – Layer or cross-section name used by the device. Default is None.

  • w_bend_port (Optional[float], optional) – Width parameter in microns. Default is None.

  • Ltp_port (int, optional) – Length parameter in microns. Default is 10.

  • res (float, optional) – Value for the res parameter. Default is 0.5.

  • rib2strip (bool, optional) – Value for the rib2strip parameter. Default is True.

  • port_angle (float, optional) – Value for the port_angle parameter. Default is 180.

  • Euler_bend (bool, optional) – Value for the Euler_bend parameter. Default is False.

  • show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.

  • sharp_patch (bool, optional) – Whether to add geometry patches for sharp corners or cladding continuity. Default is True.

generate_gds(show_pins)#

spiral_rectangle#

../../../../_images/spiral_rectangle.png
class mxpic.components.primitives.pic.spiral.spiral_rectangle(name=None, Dmin=50, Rmax_bend=10, Rmin_bend=10, wmin_bend=10, Lmin=50, width=2, w_port=None, gap=1, cycles=20, xs='strip', layer=None, w_bend_port=None, Lport=10, Ltp=10, res=0.5, cell_xs_transition=None, port_angle=180, show_pins=False, sharp_patch=True, in_out_align=True, Lpatch=0.05)#

Bases: object

spiral rectangle primitive component.

This component builds the spiral rectangle layout cell.

Parameters:
  • name (str, optional) – Unique identifier for the device cell. Default is None.

  • Dmin (float, optional) – Value for the Dmin parameter. Default is 50.

  • Rmax_bend (float, optional) – Radius parameter in microns. Default is 10.

  • Rmin_bend (float, optional) – Radius parameter in microns. Default is 10.

  • wmin_bend (float, optional) – Value for the wmin_bend parameter. Default is 10.

  • Lmin (float, optional) – Length parameter in microns. Default is 50.

  • width (float, optional) – Width parameter in microns. Default is 2.

  • w_port (float, optional) – Width parameter in microns. Default is None.

  • gap (float, optional) – Spacing or gap parameter in microns. Default is 1.

  • cycles (float, optional) – Count or repetition parameter. Default is 20.

  • xs (str, optional) – Layer or cross-section name used by the device. Default is ‘strip’.

  • layer (str, optional) – Layer or cross-section name used by the device. Default is None.

  • w_bend_port (Optional[float], optional) – Width parameter in microns. Default is None.

  • Lport (int, optional) – Length parameter in microns. Default is 10.

  • Ltp (int, optional) – Length parameter in microns. Default is 10.

  • res (float, optional) – Value for the res parameter. Default is 0.5.

  • cell_xs_transition (Any, optional) – Cell or component dependency used by this device. Default is None.

  • port_angle (float, optional) – Value for the port_angle parameter. Default is 180.

  • show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.

  • sharp_patch (bool, optional) – Whether to add geometry patches for sharp corners or cladding continuity. Default is True.

  • in_out_align (bool, optional) – Value for the in_out_align parameter. Default is True.

  • Lpatch (float, optional) – Length parameter in microns. Default is 0.05.

generate_gds(show_pins)#

Spiral_Rect_STD#

../../../../_images/Spiral_Rect_STD.png
class mxpic.components.primitives.pic.spiral.Spiral_Rect_STD(name=None, Dmin=50, R_bend=10, Lmin=50, width=2, w_port=0.45, gap=1, cycles=20, xs='strip', layer=None, Lport=10, in_out_align=True, res=0.5, cell_xs_transition=None, port_angle=180, show_pins=False, sharp_patch=True)#

Bases: spiral_rectangle

Spiral Rect STD primitive component.

This component builds the Spiral Rect STD layout cell.

Parameters:
  • name (str, optional) – Unique identifier for the device cell. Default is None.

  • Dmin (float, optional) – Value for the Dmin parameter. Default is 50.

  • R_bend (float, optional) – Radius parameter in microns. Default is 10.

  • Lmin (float, optional) – Length parameter in microns. Default is 50.

  • width (float, optional) – Width parameter in microns. Default is 2.

  • w_port (float, optional) – Width parameter in microns. Default is 0.45.

  • gap (float, optional) – Spacing or gap parameter in microns. Default is 1.

  • cycles (float, optional) – Count or repetition parameter. Default is 20.

  • xs (str, optional) – Layer or cross-section name used by the device. Default is ‘strip’.

  • layer (str, optional) – Layer or cross-section name used by the device. Default is None.

  • Lport (int, optional) – Length parameter in microns. Default is 10.

  • in_out_align (bool, optional) – Value for the in_out_align parameter. Default is True.

  • res (float, optional) – Value for the res parameter. Default is 0.5.

  • cell_xs_transition (Any, optional) – Cell or component dependency used by this device. Default is None.

  • port_angle (float, optional) – Value for the port_angle parameter. Default is 180.

  • show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.

  • sharp_patch (bool, optional) – Whether to add geometry patches for sharp corners or cladding continuity. Default is True.

spiral_circle#

../../../../_images/spiral_circle.png
class mxpic.components.primitives.pic.spiral.spiral_circle(name=None, Dmin=50, width=2, w_port=0.45, w_bend_center=1, gap=1, cycles=20, xs='strip', layer=None, Lport=10, res=0.5, rib2strip=True, port_angle=180, Euler_Sbend=False, show_pins=False, sharp_patch=True, strict_condition=False, R_ratio_mamnual=None)#

Bases: object

spiral circle primitive component.

This component builds the spiral circle layout cell.

Parameters:
  • name (str, optional) – Unique identifier for the device cell. Default is None.

  • Dmin (float, optional) – Value for the Dmin parameter. Default is 50.

  • width (float, optional) – Width parameter in microns. Default is 2.

  • w_port (float, optional) – Width parameter in microns. Default is 0.45.

  • w_bend_center (float, optional) – Width parameter in microns. Default is 1.

  • gap (float, optional) – Spacing or gap parameter in microns. Default is 1.

  • cycles (float, optional) – Count or repetition parameter. Default is 20.

  • xs (str, optional) – Layer or cross-section name used by the device. Default is ‘strip’.

  • layer (str, optional) – Layer or cross-section name used by the device. Default is None.

  • Lport (int, optional) – Length parameter in microns. Default is 10.

  • res (float, optional) – Value for the res parameter. Default is 0.5.

  • rib2strip (bool, optional) – Value for the rib2strip parameter. Default is True.

  • port_angle (float, optional) – Value for the port_angle parameter. Default is 180.

  • Euler_Sbend (bool, optional) – Value for the Euler_Sbend parameter. Default is False.

  • show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.

  • sharp_patch (bool, optional) – Whether to add geometry patches for sharp corners or cladding continuity. Default is True.

  • strict_condition (bool, optional) – Value for the strict_condition parameter. Default is False.

  • R_ratio_mamnual (Any, optional) – Radius parameter in microns. Default is None.

cell#

Optimizing the bend radius for the minimum and central

generate_gds(show_pins)#
opt_euler(R, R0)#

Spiral_Cicle_MM#

../../../../_images/Spiral_Cicle_MM.png
class mxpic.components.primitives.pic.spiral.Spiral_Cicle_MM(name=None, Dmin=50, width=2, w_port=0.45, w_bend_center=1, gap=1, cycles=20, xs='strip', layer=None, Lport=10, res=0.5, rib2strip=True, port_angle=180, show_pins=False, sharp_patch=True, strict_condition=False)#

Bases: spiral_circle

Spiral Cicle MM primitive component.

This component builds the Spiral Cicle MM layout cell.

Parameters:
  • name (str, optional) – Unique identifier for the device cell. Default is None.

  • Dmin (float, optional) – Value for the Dmin parameter. Default is 50.

  • width (float, optional) – Width parameter in microns. Default is 2.

  • w_port (float, optional) – Width parameter in microns. Default is 0.45.

  • w_bend_center (float, optional) – Width parameter in microns. Default is 1.

  • gap (float, optional) – Spacing or gap parameter in microns. Default is 1.

  • cycles (float, optional) – Count or repetition parameter. Default is 20.

  • xs (str, optional) – Layer or cross-section name used by the device. Default is ‘strip’.

  • layer (str, optional) – Layer or cross-section name used by the device. Default is None.

  • Lport (int, optional) – Length parameter in microns. Default is 10.

  • res (float, optional) – Value for the res parameter. Default is 0.5.

  • rib2strip (bool, optional) – Value for the rib2strip parameter. Default is True.

  • port_angle (float, optional) – Value for the port_angle parameter. Default is 180.

  • show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.

  • sharp_patch (bool, optional) – Whether to add geometry patches for sharp corners or cladding continuity. Default is True.

  • strict_condition (bool, optional) – Value for the strict_condition parameter. Default is False.

Spiral_Cicle_STD#

../../../../_images/Spiral_Cicle_STD.png
class mxpic.components.primitives.pic.spiral.Spiral_Cicle_STD(name=None, Dmin=50, width=2, w_port=0.45, gap=1, cycles=20, xs='strip', layer=None, Lport=10, res=0.5, rib2strip=True, port_angle=180, show_pins=False, sharp_patch=True, strict_condition=False)#

Bases: spiral_circle

Spiral Cicle STD primitive component.

This component builds the Spiral Cicle STD layout cell.

Parameters:
  • name (str, optional) – Unique identifier for the device cell. Default is None.

  • Dmin (float, optional) – Value for the Dmin parameter. Default is 50.

  • width (float, optional) – Width parameter in microns. Default is 2.

  • w_port (float, optional) – Width parameter in microns. Default is 0.45.

  • gap (float, optional) – Spacing or gap parameter in microns. Default is 1.

  • cycles (float, optional) – Count or repetition parameter. Default is 20.

  • xs (str, optional) – Layer or cross-section name used by the device. Default is ‘strip’.

  • layer (str, optional) – Layer or cross-section name used by the device. Default is None.

  • Lport (int, optional) – Length parameter in microns. Default is 10.

  • res (float, optional) – Value for the res parameter. Default is 0.5.

  • rib2strip (bool, optional) – Value for the rib2strip parameter. Default is True.

  • port_angle (float, optional) – Value for the port_angle parameter. Default is 180.

  • show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.

  • sharp_patch (bool, optional) – Whether to add geometry patches for sharp corners or cladding continuity. Default is True.

  • strict_condition (bool, optional) – Value for the strict_condition parameter. Default is False.