mxpic.components.primitives.passive.unit#
waveguide#
- class mxpic.components.primitives.passive.unit.waveguide(w_heater=2.5, L_wg=150, L_heater=150, w_metal=10, xs_heater='heater', xs_metal='metal', xs_wg='strip', w_wg=0.45, w_port=None, Ltp=None, via_h2m=None, isl=None, euler_bend=False, Rmin=5, thin_attach=False, UPPER_ISL=True, LOWER_ISL=True, shape='strip', R_bend=10, ubend_offset=20, show_pins=False)#
Bases:
objectwaveguide primitive component.
This component builds the waveguide layout cell.
- Parameters:
w_heater (float, optional) – Width parameter in microns. Default is 2.5.
L_wg (int, optional) – Length parameter in microns. Default is 150.
L_heater (int, optional) – Length parameter in microns. Default is 150.
w_metal (float, optional) – Width parameter in microns. Default is 10.
xs_heater (str, optional) – Layer or cross-section name used by the device. Default is ‘heater’.
xs_metal (str, optional) – Layer or cross-section name used by the device. Default is ‘metal’.
xs_wg (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.
w_port (Optional[float], optional) – Width parameter in microns. Default is None.
Ltp (Any, optional) – Length parameter in microns. Default is None.
via_h2m (Any, optional) – Via definition used between heater and metal layers. Default is None.
isl (Any, optional) – Isolation-trench definition used by the electrical layout. Default is None.
euler_bend (bool, optional) – Value for the euler_bend parameter. Default is False.
Rmin (int, optional) – Radius parameter in microns. Default is 5.
thin_attach (bool, optional) – Value for the thin_attach parameter. Default is False.
UPPER_ISL (bool, optional) – Value for the UPPER_ISL parameter. Default is True.
LOWER_ISL (bool, optional) – Length parameter in microns. Default is True.
shape (str, optional) – Value for the shape parameter. Default is ‘strip’.
R_bend (int, optional) – Radius parameter in microns. Default is 10.
ubend_offset (int, optional) – Value for the ubend_offset parameter. Default is 20.
show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.
PS_2st#
- class mxpic.components.primitives.passive.unit.PS_2st(xs_wg='strip', w_wg=0.5, w1=0.7, w2=0.9, L1=10, L2=55, L_wg=0, L_tp=1, L12=None, L_ht=None, xs_heater='heater', xs_metal='metal', w_heater=2.5, w_metal=8, via_h2m=None, isl=None, UPPER_ISL=True, LOWER_ISL=True, R_bend=10, show_pins=False)#
Bases:
objectPS 2st primitive component.
This component builds the PS 2st layout cell.
- Parameters:
xs_wg (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.5.
w1 (float, optional) – Width parameter in microns. Default is 0.7.
w2 (float, optional) – Width parameter in microns. Default is 0.9.
L1 (int, optional) – Length parameter in microns. Default is 10.
L2 (int, optional) – Length parameter in microns. Default is 55.
L_wg (int, optional) – Length parameter in microns. Default is 0.
L_tp (int, optional) – Length parameter in microns. Default is 1.
L12 (Any, optional) – Length parameter in microns. Default is None.
L_ht (Any, optional) – Length parameter in microns. Default is None.
xs_heater (str, optional) – Layer or cross-section name used by the device. Default is ‘heater’.
xs_metal (str, optional) – Layer or cross-section name used by the device. Default is ‘metal’.
w_heater (float, optional) – Width parameter in microns. Default is 2.5.
w_metal (float, optional) – Width parameter in microns. Default is 8.
via_h2m (Any, optional) – Via definition used between heater and metal layers. Default is None.
isl (Any, optional) – Isolation-trench definition used by the electrical layout. Default is None.
UPPER_ISL (bool, optional) – Value for the UPPER_ISL parameter. Default is True.
LOWER_ISL (bool, optional) – Length parameter in microns. Default is True.
R_bend (int, optional) – Radius parameter in microns. Default is 10.
show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.
- generate_gds()#
PS_2st_Straight#
- class mxpic.components.primitives.passive.unit.PS_2st_Straight(xs_wg='strip', w_wg=0.5, w1=0.7, w2=0.9, L1=10, L2=55, L_wg=0, L_tp=1, L12=None, L_ht=None, xs_heater='heater', xs_metal='metal', w_heater=2.5, w_metal=8, via_h2m=None, isl=None, UPPER_ISL=True, LOWER_ISL=True, show_pins=False)#
Bases:
objectPS 2st Straight primitive component.
This component builds the PS 2st Straight layout cell.
- Parameters:
xs_wg (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.5.
w1 (float, optional) – Width parameter in microns. Default is 0.7.
w2 (float, optional) – Width parameter in microns. Default is 0.9.
L1 (int, optional) – Length parameter in microns. Default is 10.
L2 (int, optional) – Length parameter in microns. Default is 55.
L_wg (int, optional) – Length parameter in microns. Default is 0.
L_tp (int, optional) – Length parameter in microns. Default is 1.
L12 (Any, optional) – Length parameter in microns. Default is None.
L_ht (Any, optional) – Length parameter in microns. Default is None.
xs_heater (str, optional) – Layer or cross-section name used by the device. Default is ‘heater’.
xs_metal (str, optional) – Layer or cross-section name used by the device. Default is ‘metal’.
w_heater (float, optional) – Width parameter in microns. Default is 2.5.
w_metal (float, optional) – Width parameter in microns. Default is 8.
via_h2m (Any, optional) – Via definition used between heater and metal layers. Default is None.
isl (Any, optional) – Isolation-trench definition used by the electrical layout. Default is None.
UPPER_ISL (bool, optional) – Value for the UPPER_ISL parameter. Default is True.
LOWER_ISL (bool, optional) – Length parameter in microns. Default is True.
show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.
- generate_gds()#
PSR_1x2#
- class mxpic.components.primitives.passive.unit.PSR_1x2(PSR, MDM, xs='strip', w_wg=0.45, L_tp=15, show_pins=False)#
Bases:
objectPSR 1x2 primitive component.
This component builds the PSR 1x2 layout cell.
- Parameters:
PSR (Any) – Polarization splitter-rotator cell or component used by this composite.
MDM (Any) – Mode multiplexer/demultiplexer cell or component used by this composite.
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.
L_tp (int, optional) – Length parameter in microns. Default is 15.
show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.
- generate_test_gds(gc, gc_IN=None, gc2gc_dX=140, gc2gc_dY=40)#
Brag_WDM#
- class mxpic.components.primitives.passive.unit.Brag_WDM(Brag, MDM, w_wg=0.45, L_tp=30, show_pins=False)#
Bases:
objectBrag WDM primitive component.
This component builds the Brag WDM layout cell.
- Parameters:
Brag (Any) – Bragg grating cell or component used by this composite.
MDM (Any) – Mode multiplexer/demultiplexer cell or component used by this composite.
w_wg (float, optional) – Width parameter in microns. Default is 0.45.
L_tp (int, optional) – Length parameter in microns. Default is 30.
show_pins (bool, optional) – Whether to draw pin markers in the generated layout. Default is False.
- generate_test_gds(gc, gc2gc_dX=140, gc2gc_dY=40, dX_offset=50)#