DoubleSpiral¶
-
class
picazzo3.wg.spirals.cell.
DoubleSpiral
(*args, **kwargs)¶ Double spiral class with both access waveguides on the outside of the spiral. 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
Number of loops in the spiral
trace_template: PCell and _TraceTemplate
Trace template used in the chain.
name:
The unique name of the pcell
Other Parameters: 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: shapes: list
List of shapes used to build the traces
stub_direction:
view_name: str and ( Alphanumeric string or Contains _$ )
The name of the view
inner_size: Coord2
Inner size of the the spiral, defaults to 3 * spacing + 2 * bend_radius, in each direction
spacing: float and Real, number and number >= 0
spacing between the individual loops.
spiral_center: Coord2
locatation of the center of the spiral.
flatten: ( bool, bool_, bool or int )
If true the instances are flattened
Other Parameters: auto_transform: locked
Examples
from technologies import silicon_photonics from picazzo3.wg.spirals import DoubleSpiral from ipkiss3 import all as i3 cell = DoubleSpiral(n_o_loops=2, trace_template=i3.TECH.PCELLS.WG.DEFAULT) layout = cell.Layout(inner_size=(15.0, 15.0), spacing=1.0, stub_direction="H", # either H or V spiral_center=(0, 0)) layout.visualize(annotate=True)
-