gdsfactory.routing.add_pads_bot#
- gdsfactory.routing.add_pads_bot(component: ComponentSpec = functools.partial(<function straight_heater_metal_undercut>, with_undercut=False, length_straight_input=0.1, length_undercut=5, length_undercut_spacing=0), select_ports: ~collections.abc.Callable = functools.partial(<function select_ports>, port_type='electrical'), port_names: tuple[str, ...] | None = None, component_name: str | None = None, cross_section: CrossSectionSpec = 'xs_metal_routing', get_input_labels_function: ~collections.abc.Callable | None = None, layer_label: LayerSpec = 'TEXT', pad_port_name: str = 'e1', pad_port_labels: tuple[str, ...] | None = None, pad: ComponentSpec = functools.partial(<function pad>, size='pad_size'), bend: ComponentSpec = 'wire_corner', straight_separation: float = 20.0, pad_spacing: float | str = 'pad_spacing', optical_routing_type: int | None = 1, with_loopback: bool = False, min_length: float | None = None, **kwargs) Component [source]#
Returns new component with ports connected bottom pads.
- Parameters:
component – component spec to connect to.
select_ports – function to select_ports.
port_names – optional port names. Overrides select_ports.
component_name – optional for the label.
cross_section – cross_section spec.
get_input_labels_function – function to get input labels. None skips labels.
layer_label – optional layer for grating coupler label.
pad_port_name – pad input port name.
pad_port_labels – pad list of labels.
pad – spec for route terminations.
bend – bend spec.
straight_separation – from wire edge to edge.
pad_spacing – in um. Defaults to pad_spacing constant from the PDK.
optical_routing_type – None: auto, 0: no extension, 1: standard, 2: check.
with_loopback – True, adds loopback structures.
min_length – minimum length for the straight section.
- Keyword Arguments:
straight – straight spec.
taper – taper spec.
get_input_label_text_loopback_function – function to get input label test.
get_input_label_text_function – for labels.
fanout_length – if None, automatic calculation of fanout length.
max_y0_optical – in um.
list_port_labels – None, adds TM labels to port indices in this list.
connected_port_list_ids – names of ports only for type 0 optical routing.
nb_optical_ports_lines – number of grating coupler lines.
force_manhattan – False
excluded_ports – list of port names to exclude when adding gratings.
grating_indices – list of grating coupler indices.
routing_straight – function to route.
routing_method – get_route.
gc_rotation – fiber coupler rotation in degrees. Defaults to -90.
input_port_indexes – to connect.
import gdsfactory as gf c = gf.c.nxn( xsize=600, ysize=200, north=2, south=3, wg_width=10, layer="M3", port_type="electrical", ) cc = gf.routing.add_pads_bot(component=c, port_names=("e1", "e4"), fanout_length=50) cc.plot()
(
Source code
,png
,hires.png
,pdf
)