Folder structure simplfied
This commit is contained in:
@@ -10,6 +10,66 @@ import nazca.interconnects as IC
|
||||
from ...basic import __list_convert__,__array_convert__
|
||||
|
||||
class waveguide_PIN:
|
||||
"""
|
||||
waveguide PIN primitive component.
|
||||
|
||||
This component builds the waveguide PIN layout cell.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
xs : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'rib'.
|
||||
L_wg : float, optional
|
||||
Length parameter in microns. Default is 100.
|
||||
w_wg : float, optional
|
||||
Width parameter in microns. Default is 1.2.
|
||||
xs_pn_ct : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'strip_cor'.
|
||||
w_itr : float, optional
|
||||
Width parameter in microns. Default is 2.0.
|
||||
w_p : float, optional
|
||||
Width parameter in microns. Default is 4.0.
|
||||
w_n : float, optional
|
||||
Width parameter in microns. Default is 4.0.
|
||||
w_p_ct : float, optional
|
||||
Width parameter in microns. Default is 4.0.
|
||||
w_n_ct : float, optional
|
||||
Width parameter in microns. Default is 4.0.
|
||||
xs_heater : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'heater'.
|
||||
xs_via_h2m : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'via_h2m'.
|
||||
w_metal_pn : float, optional
|
||||
Width parameter in microns. Default is 8.
|
||||
sz_via_i2m : float, optional
|
||||
Value for the sz_via_i2m parameter. Default is 0.25.
|
||||
sp_via_i2m : float, optional
|
||||
Spacing or gap parameter in microns. Default is 0.35.
|
||||
sp_sc : float, optional
|
||||
Spacing or gap parameter in microns. Default is 1.
|
||||
xs_p : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'pw'.
|
||||
xs_n : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'nw'.
|
||||
xs_pcont : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'pp'.
|
||||
xs_ncont : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'np'.
|
||||
xs_sa : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'sa'.
|
||||
xs_via_s2m : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'via_s2m'.
|
||||
xs_metal : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'metal'.
|
||||
rib_taper : bool, optional
|
||||
Value for the rib_taper parameter. Default is True.
|
||||
L_taper : float, optional
|
||||
Length parameter in microns. Default is 30.
|
||||
xs_port : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'strip'.
|
||||
show_pins : bool, optional
|
||||
Whether to draw pin markers in the generated layout. Default is True.
|
||||
"""
|
||||
def __init__(self,
|
||||
xs: str="rib", ## note, this xsection cannot directly mixed iwth 'rib'
|
||||
L_wg: float = 100,
|
||||
@@ -183,6 +243,58 @@ class waveguide_PIN:
|
||||
|
||||
|
||||
class WGDoped():
|
||||
"""
|
||||
WGDoped primitive component.
|
||||
|
||||
This component builds the WGDoped layout cell.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
name : Optional[str], optional
|
||||
Unique identifier for the device cell. Default is None.
|
||||
w_wg : float, optional
|
||||
Width parameter in microns. Default is 0.5.
|
||||
w_port : float, optional
|
||||
Width parameter in microns. Default is 0.5.
|
||||
Ltp_port : int, optional
|
||||
Length parameter in microns. Default is 10.
|
||||
L_wg : int, optional
|
||||
Length parameter in microns. Default is 200.
|
||||
xs_wg : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'rib'.
|
||||
xs_n : list, optional
|
||||
Layer or cross-section name used by the device. Default is ['nld', 'np'].
|
||||
xs_p : list, optional
|
||||
Layer or cross-section name used by the device. Default is ['pld', 'pp'].
|
||||
w_n : list, optional
|
||||
Width parameter in microns. Default is [0.5, 1].
|
||||
w_p : list, optional
|
||||
Width parameter in microns. Default is [0.5, 1].
|
||||
w_ht : float, optional
|
||||
Width parameter in microns. Default is 0.
|
||||
L_ht : Any, optional
|
||||
Length parameter in microns. Default is None.
|
||||
xs_ht : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'heater'.
|
||||
w_mt : Optional[float], optional
|
||||
Width parameter in microns. Default is None.
|
||||
xs_mt : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'metal'.
|
||||
xs_cont_wg : Optional[str], optional
|
||||
Layer or cross-section name used by the device. Default is None.
|
||||
w_i : Optional[float], optional
|
||||
Width parameter in microns. Default is None.
|
||||
dope_offset : int, optional
|
||||
Value for the dope_offset parameter. Default is 0.
|
||||
via_s2m : Any, optional
|
||||
Value for the via_s2m parameter. Default is None.
|
||||
via_h2m : Any, optional
|
||||
Via definition used between heater and metal layers. Default is None.
|
||||
dope_ovlp : float, optional
|
||||
Value for the dope_ovlp parameter. Default is 0.2.
|
||||
cell_xs_transition : Any, optional
|
||||
Cell or component dependency used by this device. Default is None.
|
||||
"""
|
||||
def __init__(self,
|
||||
name: Optional[str]=None,
|
||||
w_wg: float = 0.5,
|
||||
|
||||
Reference in New Issue
Block a user