Folder structure simplfied
This commit is contained in:
@@ -5,7 +5,7 @@ from .couplers import ring_bus_wg
|
||||
|
||||
from .taper import taper_xs2xs
|
||||
|
||||
from ...structures import *
|
||||
from ...geometry import *
|
||||
# import nazca.interconnects as IC
|
||||
from ...routing import Route
|
||||
|
||||
@@ -20,6 +20,76 @@ from ...basic import __cell_arg__
|
||||
""" NOTE: n_points will not be used in any future class, res will be the accurancy parameter """
|
||||
|
||||
class AED_ring :
|
||||
"""
|
||||
AED ring primitive component.
|
||||
|
||||
This component builds the AED ring layout cell.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
name : Optional[str], optional
|
||||
Unique identifier for the device cell. Default is None.
|
||||
ORx : float, optional
|
||||
Value for the ORx parameter. Default is 10.
|
||||
ORy : float, optional
|
||||
Value for the ORy parameter. Default is 10.
|
||||
IRx : float, optional
|
||||
Value for the IRx parameter. Default is 10 - 0.45.
|
||||
IRy : float, optional
|
||||
Value for the IRy parameter. Default is 10 - 0.65.
|
||||
gap1 : float, optional
|
||||
Spacing or gap parameter in microns. Default is 0.2.
|
||||
gap2 : float, optional
|
||||
Spacing or gap parameter in microns. Default is 0.2.
|
||||
w1_bus : float, optional
|
||||
Value for the w1_bus parameter. Default is 0.45.
|
||||
w2_bus : float, optional
|
||||
Value for the w2_bus parameter. Default is 0.45.
|
||||
R1_cp : Any, optional
|
||||
Radius parameter in microns. Default is None.
|
||||
R2_cp : Any, optional
|
||||
Radius parameter in microns. Default is None.
|
||||
A1_cp : int, optional
|
||||
Angle parameter in degrees. Default is 0.
|
||||
A2_cp : int, optional
|
||||
Angle parameter in degrees. Default is 0.
|
||||
offset_X : float, optional
|
||||
Value for the offset_X parameter. Default is 0.
|
||||
offset_Y : float, optional
|
||||
Value for the offset_Y parameter. Default is 0.
|
||||
w_wg : float, optional
|
||||
Width parameter in microns. Default is 0.45.
|
||||
R1_att : float, optional
|
||||
Radius parameter in microns. Default is 20.
|
||||
R2_att : float, optional
|
||||
Radius parameter in microns. Default is 20.
|
||||
R2_att_min : float, optional
|
||||
Radius parameter in microns. Default is 10.
|
||||
R1_att_min : float, optional
|
||||
Radius parameter in microns. Default is 10.
|
||||
A1_att : float, optional
|
||||
Angle parameter in degrees. Default is 30.
|
||||
A2_att : float, optional
|
||||
Angle parameter in degrees. Default is 20.
|
||||
Ltp_bus : int, optional
|
||||
Length parameter in microns. Default is 10.
|
||||
dL_p2p : Optional[float], optional
|
||||
Value for the dL_p2p parameter. Default is None.
|
||||
L_tilt : int, optional
|
||||
Length parameter in microns. Default is 10.
|
||||
xs : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'strip'.
|
||||
sharp_patch : bool, optional
|
||||
Whether to add geometry patches for sharp corners or cladding continuity. Default is True.
|
||||
cell_xs_transition : Any, optional
|
||||
Cell or component dependency used by this device. Default is None.
|
||||
Euler_trasition : bool, optional
|
||||
Value for the Euler_trasition parameter. Default is False.
|
||||
res : float, optional
|
||||
Value for the res parameter. Default is 0.01.
|
||||
show_pins : bool, optional
|
||||
Whether to draw pin markers in the generated layout. Default is False.
|
||||
"""
|
||||
def __init__(self,
|
||||
name: Optional[str]=None,
|
||||
ORx: float = 10,
|
||||
@@ -247,6 +317,72 @@ class AED_ring :
|
||||
return C
|
||||
|
||||
class STD_PIC_Rings(AED_ring):
|
||||
"""
|
||||
STD PIC Rings primitive component.
|
||||
|
||||
This component builds the STD PIC Rings layout cell.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
name : Optional[str], optional
|
||||
Unique identifier for the device cell. Default is None.
|
||||
r_ring : float, optional
|
||||
Radius parameter in microns. Default is 10.
|
||||
w_ring : float, optional
|
||||
Width parameter in microns. Default is 10.
|
||||
gap1 : float, optional
|
||||
Spacing or gap parameter in microns. Default is 0.2.
|
||||
gap2 : float, optional
|
||||
Spacing or gap parameter in microns. Default is 0.2.
|
||||
w1_bus : float, optional
|
||||
Value for the w1_bus parameter. Default is 0.45.
|
||||
w2_bus : float, optional
|
||||
Value for the w2_bus parameter. Default is 0.
|
||||
R1_cp : Any, optional
|
||||
Radius parameter in microns. Default is None.
|
||||
R2_cp : Any, optional
|
||||
Radius parameter in microns. Default is None.
|
||||
A1_cp : int, optional
|
||||
Angle parameter in degrees. Default is 0.
|
||||
A2_cp : int, optional
|
||||
Angle parameter in degrees. Default is 0.
|
||||
offset_X : float, optional
|
||||
Value for the offset_X parameter. Default is 0.
|
||||
offset_Y : float, optional
|
||||
Value for the offset_Y parameter. Default is 0.
|
||||
w_wg : float, optional
|
||||
Width parameter in microns. Default is 0.45.
|
||||
R1_att : float, optional
|
||||
Radius parameter in microns. Default is 20.
|
||||
R2_att : float, optional
|
||||
Radius parameter in microns. Default is 20.
|
||||
R2_att_min : float, optional
|
||||
Radius parameter in microns. Default is 10.
|
||||
R1_att_min : float, optional
|
||||
Radius parameter in microns. Default is 10.
|
||||
A1_att : float, optional
|
||||
Angle parameter in degrees. Default is 30.
|
||||
A2_att : float, optional
|
||||
Angle parameter in degrees. Default is 20.
|
||||
Ltp_bus : int, optional
|
||||
Length parameter in microns. Default is 10.
|
||||
dL_p2p : Optional[float], optional
|
||||
Value for the dL_p2p parameter. Default is None.
|
||||
L_tilt : int, optional
|
||||
Length parameter in microns. Default is 10.
|
||||
xs : str, optional
|
||||
Layer or cross-section name used by the device. Default is 'strip'.
|
||||
sharp_patch : bool, optional
|
||||
Whether to add geometry patches for sharp corners or cladding continuity. Default is True.
|
||||
cell_xs_transition : Any, optional
|
||||
Cell or component dependency used by this device. Default is None.
|
||||
Euler_trasition : bool, optional
|
||||
Value for the Euler_trasition parameter. Default is False.
|
||||
res : float, optional
|
||||
Value for the res parameter. Default is 0.001.
|
||||
show_pins : bool, optional
|
||||
Whether to draw pin markers in the generated layout. Default is False.
|
||||
"""
|
||||
def __init__(self,
|
||||
name: Optional[str] = None,
|
||||
r_ring: float=10,
|
||||
|
||||
Reference in New Issue
Block a user