# WgBend90¶

class picazzo3.wg.bend.cell.WgBend90(*args, **kwargs)

Fixed Waveguide bend of 90 degrees. This is a rounded waveguide, so it takes a rounding algorithm and a bend radius as a parameter, as well as a trace_template.

Parameters: trace_template: PCell and _WaveguideTemplate, optional external_port_names: optional Dictionary for remapping of the port names of the contents to the external ports cell_instances: _PCellInstanceDict, optional name: optional The unique name of the pcell contents: PCell and _Trace, locked

Views

Layout
Parameters: angle_step: float and number > 0, optional angle step for rounding clockwise: optional clockwise or counterclockwise propagation. By default it is calculated from ‘quadrant’ control_shape_layer: __Layer__, optional layer on which the control shape is drawn cover_layers: List with type restriction, allowed types: , optional layers that can be used to generate additional coverage of the trace (e.g. manhattan corners) draw_control_shape: optional draws the control shape on top of the waveguide manhattan: optional adds rectangular blocks in the bends to avoid as much as possible non-manhattan angles quadrant: int, optional quadrant on the circle. (-4=>4)positive numbers is counterclockwise, negative numbers is clockwise start_angle: float, optional start_angle of the bend. By default it is calculated from ‘quadrant’ view_name: str, optional The name of the view contents_transformation: GenericNoDistortTransform, optional rounding_algorithm: optional rounding algorithm used to generate the bends. Can be circular, spline, … core_layer: __Layer__, optional layer used to define the core of the waveguide bend_radii: list 0>, optional bend radius for every individual bend remove_straight_angles: optional removes the waypoints with straight angles. Set to False if the algorithm uses waypoint-specific information. reverse_bends: optional when set to True, it will generate the bends backwards. This has only effect when the bend algorithm is not symmetric. reverse_individual_bends: list<>, optional 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: optional 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 input_port: TracePort, optional output_port: TracePort, optional trace_template_for_ports: _TraceTemplate.Layout, optional Trace template to be used for the ports. shape: Shape, optional Shape from which the Trace is calculated flatten_contents: optional if True, it will insert the contents as elements in the layout, rather than as an Instance bend_radius: float and number > 0, optional bend radius for the auto-generated bends angle: locked angle of the bend (locked at 90 degrees) center_line_shape: locked Automatically calculated shape of the center line of the trace grid: float and number > 0, locked design grid. Extracted by default from TECH.METRICS.GRID grids_per_unit: locked Number of grid cells per design unit units_per_grid: locked Ratio of grid cell and design unit unit: float and number > 0, locked design unit. Extracted by default from TECH.METRICS.UNIT

Examples

from technologies import silicon_photonics
from picazzo3.wg.bend import WgBend90
from picazzo3.traces.wire_wg.trace import WireWaveguideTemplate
import ipkiss3.all as i3
wg_t = WireWaveguideTemplate()
wg_t.Layout(core_width= 0.550,