si_fab.all.WaveguideBend
- class si_fab.all.WaveguideBend
A 90-degree waveguide bend. Provide the bend size (distance from the ports to the corner), the bend radius and the rounding algorithm to generate this bend.
- Parameters:
- trace_template: PCell and _TraceTemplate
The trace template of the waveguide bend
- external_port_names: str
Dictionary for remapping of the port names of the contents to the external ports
- name: String that contains only ISO/IEC 8859-1 (extended ASCII py3) or pure ASCII (py2) characters
The unique name of the pcell
- Other Parameters:
- contents: PCell and _Trace, locked
from si_fab import technology
from si_fab.all import WaveguideBend
lo = WaveguideBend().Layout()
lo.visualize(annotate=True)
Ports
Name |
Type |
Position |
Angle |
Waveguide Template |
Inclination |
---|---|---|---|---|---|
in |
Optical |
(0.0, 0.0) |
180.0 |
SWG450 |
0.0 |
out |
Optical |
(10.0, 10.0) |
90.0 |
SWG450 |
0.0 |
Circuit
Parameters
- reflection_phase: ndarray
Polynomial coefficients, reflection phase as a function of wavelength
- reflection: ndarray
Polynomial coefficients, reflection as a function of wavelength
- transmission_phase: ndarray
Polynomial coefficients, transmission phase as a function of wavelength
- transmission: ndarray
Polynomial coefficients, transmission as a function of wavelength
- center_wavelength: float and number > 0
Center wavelength around which the transmission is provided
layout_view: ( _LayoutView ), None allowed
netlist_view: ( NetlistView ), None allowed
- view_name: String that contains only alphanumeric characters from the ASCII set or contains _$. ASCII set is extended on PY3.
The name of the view
Other Parameters
- solver: str and String that contains only ISO/IEC 8859-1 (extended ASCII py3) or pure ASCII (py2) characters, locked
circuit solver to use
Layout
Parameters
- bend_size: float and number > 0
The distance between the corner of the bend and the ports
output_port: TracePort
- trace_template_for_ports: _TraceTemplate.Layout
Trace template to be used for the ports.
- cover_layers: List with type restriction, allowed types: <class ‘ipkiss.primitives.layer.Layer’>
layers that can be used to generate additional coverage of the trace (e.g. manhattan corners)
- reverse_individual_bends: list<( bool, bool_ or int )>
When set to True, it will generate the individual bends backwards. This has only effect when the bend algorithm is not symmetric. Should have length equal to the shape for closed shapes, but equal to shape-2 for open shapes.
- rounding_algorithms:
Rounding algorithm for every individual bend. Can be circular, spline, … Should have length equal to the shape for closed shapes, but equal to shape-2 for open shapes.
- bend_radii: list<number > 0>
Bend radius for every individual bend.
- reverse_bends: ( bool, bool_ or int )
When set to True, it will generate the bends backwards. This has only effect when the bend algorithm is not symmetric.
- remove_straight_angles: ( bool, bool_ or int )
Removes the waypoints with straight angles. Set to False if the algorithm uses waypoint-specific information.
- core_layer: __Layer__
layer used to define the core of the waveguide
input_port: TracePort
- control_shape_layer: __Layer__
layer on which the control shape is drawn
- draw_control_shape: ( bool, bool_ or int )
draws the control shape on top of the waveguide
- contents_transformation: GenericNoDistortTransform
transformation to apply to the contents
- flatten_contents: ( bool, bool_ or int )
if True, it will insert the contents as elements in the layout, rather than as an Instance
- view_name: String that contains only alphanumeric characters from the ASCII set or contains _$. ASCII set is extended on PY3.
The name of the view
- manhattan: ( bool, bool_ or int )
Adds rectangular blocks in the bends to avoid as much as possible non-manhattan angles.
- angle_step: float and number > 0
Angle step for rounding.
- rounding_algorithm:
Rounding algorithm used to generate the bends. Can be circular, spline, ….
- bend_radius: float and number > 0
Bend radius for the auto-generated bends.
Other Parameters
shape: locked
- center_line_shape: locked
Automatically calculated shape of the center line of the trace