mxpic.components.primitives.pic.YBS#

YBranch#

../../../../_images/YBranch.png
class mxpic.components.primitives.pic.YBS.YBranch(name=None, xs='strip', w=[1.2, 1.0, 1.8, 1.2, 1.0, 1.2, 1.2], L=6, R_att=10, A_att=10, w_port=0.45, show_pins=False, sharp_patch=True, res=0.1)#

Bases: object

YBranch primitive component.

This component builds the YBranch layout cell.

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

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

  • w (list or np.ndarray, optional) – Width parameter in microns. Default is [1.2, 1.0, 1.8, 1.2, 1.0, 1.2, 1.2].

  • L (float, optional) – Length parameter in microns. Default is 6.

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

  • A_att (float, optional) – Angle parameter in degrees. Default is 10.

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

  • 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.

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

generate_gds(show_pins=False, sharp_patch=True)#

Ybranch_3wg#

../../../../_images/Ybranch_3wg.png
class mxpic.components.primitives.pic.YBS.Ybranch_3wg(name=None, w0=0.4, w1=0.2, gap=0.18, Lcp=20, xs='strip', w_wg=0.45, R0=10, angle=20, L_attach=3, L_in_tp=3, sharp_patch=True)#

Bases: object

Ybranch 3wg primitive component.

This component builds the Ybranch 3wg layout cell.

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

  • w0 (float, optional) – Width parameter in microns. Default is 0.4.

  • w1 (float, optional) – Width parameter in microns. Default is 0.2.

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

  • Lcp (float, optional) – Length parameter in microns. Default is 20.

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

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

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

  • angle (float, optional) – Angle parameter in degrees. Default is 20.

  • L_attach (float, optional) – Length parameter in microns. Default is 3.

  • L_in_tp (float, optional) – Length parameter in microns. Default is 3.

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

generate_gds(sharp_patch, err_asy=0)#
generate_test_gds(gc, dX_gc2gc=400, dY_gc2gc=80, sharp_patch=True, Rbend=15)#