mxpic.components.primitives.pic.spiral#
spiral#
- 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:
objectspiral 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#
- 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:
objectspiral 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#
- 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_rectangleSpiral 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#
- 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:
objectspiral 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#
- 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_circleSpiral 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#
- 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_circleSpiral 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.