WgDirectCrossing¶
-
class
picazzo3.wg.crossing.cell.
WgDirectCrossing
(*args, **kwargs)¶ A Direct waveguide crossing, consisting of two identical waveguides at right angles. This design is not particularly efficient for high-contrast waveguides, but is OK for low-contrast waveguides (e.g. silica.)
Parameters: trace_template: PCell and _WaveguideTemplate, optional
Trace template used to define the crossing
waveguides: List with type restriction, allowed types: <class ‘ipkiss3.pcell.cell.pcell.PCell’>, optional
the waveguides through the crossing
cell_instances: _PCellInstanceDict, optional
name: optional
The unique name of the pcell
Views
-
Layout
¶ Parameters: view_name: str, optional
The name of the view
length: float and number > 0, optional
straight_stub: float and number > 0, optional
length of the straigth sections of the crossing
grids_per_unit: locked
Number of grid cells per design unit
units_per_grid: locked
Ratio of grid cell and design unit
grid: float and number > 0, locked
design grid. Extracted by default from TECH.METRICS.GRID
unit: float and number > 0, locked
design unit. Extracted by default from TECH.METRICS.UNIT
Examples
from technologies import silicon_photonics from ipkiss3 import all as i3 from picazzo3.wg.crossing import WgDirectCrossing from picazzo3.traces.wire_wg.trace import WireWaveguideTemplate wg_t = WireWaveguideTemplate(name="my_crossing_wg_template1") wg_t.Layout(core_width=0.550, cladding_width=2 * 2.0 + 0.550, core_process=i3.TECH.PROCESS.WG) C = WgDirectCrossing(name="my_direct_crossing", trace_template=wg_t) layout = C.Layout() layout.visualize()
-