Folder structure simplfied

This commit is contained in:
=
2026-06-06 16:43:26 +08:00
parent 8da92ced57
commit 8a17f1dde0
138 changed files with 10429 additions and 1432 deletions
+62 -2
View File
@@ -4,15 +4,43 @@ import numpy as np
import math
from ...routing import Route
from ...structures import *
from ...geometry import *
from ....technologies import *
import pandas as pd
from ...structures import _my_polygon
from ...geometry import _my_polygon
from scipy.interpolate import CubicSpline
from ...basic import __cell_arg__
class YBranch:
"""
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.
"""
def __init__(self,
name : str = None,
xs : str = 'strip',
@@ -105,6 +133,38 @@ class YBranch:
class Ybranch_3wg:
"""
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.
"""
def __init__(self,
name: Optional[str] = None,
w0:float=0.4,