SingleSpiral¶
-
class
picazzo3.wg.spirals.cell.
SingleSpiral
(*args, **kwargs)¶ Single spiral class going from the inside to the outside. The trace template provided in the property
trace_template
is used to build a chain of waveguides.Parameters: n_o_loops: int and number > 0, optional
Number of loops in the spiral
trace_template: PCell and _TraceTemplate, optional
Trace template used in the chain.
cell_instances: _PCellInstanceDict, optional
name: optional
The unique name of the pcell
traces: List with type restriction, allowed types: <class ‘ipkiss3.pcell.cell.pcell.PCell’>, locked
n_o_traces: int and number > 0, locked
Total number of traces used in the spiral.
Views
-
Layout
¶ Parameters: view_name: str, optional
The name of the view
inner_size: Coord2, optional
Inner size of the the spiral, defaults to 3 * spacing + 2 * bend_radius, in each direction
spacing: float and Real, number and number >= 0, optional
spacing between the individual loops.
spiral_center: Coord2, optional
locatation of the center of the spiral.
shapes: list, optional
List of shapes used to build the traces
flatten: optional
If true the instances are flattened
auto_transform: locked
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
# Example of single spiral using a trace template. from technologies import silicon_photonics from picazzo3.wg.spirals import SingleSpiral from ipkiss3 import all as i3 cell = SingleSpiral(n_o_loops=5, trace_template=i3.TECH.PCELLS.WG.DEFAULT) layout = cell.Layout(inner_size=(20, 15), spacing=5.0, spiral_center=(2, 1)) layout.visualize()
-