Component#

class pyedb.grpc.database.hierarchy.component.Component(pedb, edb_object)#

Manages EDB functionalities for components.

Parameters:
parentpyedb.grpc.database.components.Components

Components object.

componentobject

Edb Component Object

Overview#

create_package_def

Create a package definition and assign it to the component.

delete

Delete the component from the EDB.

assign_spice_model

Assign Spice model to this component.

assign_s_param_model

Assign S-parameter to this component.

use_s_parameter_model

Use S-parameter model on the component.

assign_rlc_model

Assign RLC to this component.

create_clearance_on_component

Create a Clearance on Soldermask layer by drawing a rectangle.

group_type

is_null

Check if the component is null.

component_type

Component type.

layout_instance

Layout instance object.

component_instance

Component instance.

is_enabled

Component enable.

ic_die_properties

IC Die property.

component_definition

Component definition.

component_def

Component definition.

component_property

Component property.

model

Component model.

package_def

Package definition.

is_mcad

MCad component.

is_mcad_3d_comp

Mcad 3D component.

is_mcad_hfss

MCad HFSS.

is_mcad_stride

MCar stride.

enabled

Component active mode.

spice_model

Assigned Spice model.

s_param_model

Assigned S-parameter model.

netlist_model

Assigned netlist model.

solder_ball_height

Solder ball height if available.

solder_ball_shape

Solder ball shape.

solder_ball_diameter

Solder ball diameter.

solder_ball_placement

Solder ball placement if available..

refdes

Reference Designator Name.

model_type

Retrieve assigned model type.

rlc_values

Get component rlc values.

value

Retrieve discrete component value.

res_value

Resistance value.

cap_value

Capacitance Value.

ind_value

Inductance Value.

is_parallel_rlc

Define if model is Parallel or Series.

center

Compute the component center.

location

Component center.

bounding_box

Component’s bounding box.

rotation

Compute the component rotation in radian.

pinlist

Pins of the component.

nets

Nets of Component.

pins

Component pins.

num_pins

Number of Pins of Component.

type

Component type.

numpins

Number of Pins of Component.

partname

Component part name.

name

Component part name.

ref_des

Reference Designator Name.

part_name

Component part name.

placement_layer

Placement layern name.

layer

Placement layern object.

is_top_mounted

Check if a component is mounted on top or bottom of the layout.

lower_elevation

Lower elevation of the placement layer.

upper_elevation

Upper elevation of the placement layer.

top_bottom_association

Top/bottom association of the placement layer.

Import detail#

from pyedb.grpc.database.hierarchy.component import Component

Property detail#

property Component.group_type#
property Component.is_null#

Check if the component is null.

Returns:
bool

True if the component is null, False otherwise.

property Component.component_type: str#

Component type.

Returns:
str
property Component.layout_instance#

Layout instance object.

Returns:
LayoutInstance
property Component.component_instance#

Component instance.

Returns:
LayoutObjInstance
property Component.is_enabled: bool#

Component enable.

Returns:
bool
property Component.ic_die_properties: any#

IC Die property.

Returns:
ICDieProperty
property Component.component_definition#

Component definition.

Returns:
ComponentDef
property Component.component_def#

Component definition.

deprecated: use component_definition instead.

property Component.component_property#

Component property.

Returns:
ComponentProperty
property Component.model: pyedb.grpc.database.hierarchy.s_parameter_model.SparamModel | pyedb.grpc.database.hierarchy.spice_model.SpiceModel#

Component model.

Returns:
Model
property Component.package_def#

Package definition.

Returns:
PackageDef
property Component.is_mcad: bool#

MCad component.

Returns:
bool
property Component.is_mcad_3d_comp: bool#

Mcad 3D component.

Returns:
bool
property Component.is_mcad_hfss: bool#

MCad HFSS.

Returns:
bool
property Component.is_mcad_stride: bool#

MCar stride.

Returns:
bool
property Component.enabled: bool#

Component active mode.

Returns:
bool
property Component.spice_model: pyedb.grpc.database.hierarchy.spice_model.SpiceModel#

Assigned Spice model.

Returns:
SpiceModel
property Component.s_param_model: pyedb.grpc.database.hierarchy.s_parameter_model.SparamModel#

Assigned S-parameter model.

Returns:
SParameterModel
property Component.netlist_model: ansys.edb.core.hierarchy.netlist_model.NetlistModel#

Assigned netlist model.

Returns:
NetlistModel
property Component.solder_ball_height: float#

Solder ball height if available.

Returns:
float

Balls height value.

property Component.solder_ball_shape: str#

Solder ball shape.

Returns:
str

Solder balls shapes, none, cylinder or spheroid.

property Component.solder_ball_diameter: tuple[float, float] | None#

Solder ball diameter.

Returns:
float

diameter value.

property Component.solder_ball_placement#

Solder ball placement if available..

property Component.refdes: str#

Reference Designator Name.

Returns:
str

Reference Designator Name.

property Component.model_type: str#

Retrieve assigned model type.

Returns:
str

Model type, RLC, `` SParameterModel`` or SPICEModel.

property Component.rlc_values: List[list[float]] | List[float]#

Get component rlc values.

Returns:
list[list[Rvalue(float), Lvalue(float), Cvalue(float)]].
property Component.value: float#

Retrieve discrete component value.

Returns:
float

Value. None if not an RLC Type.

property Component.res_value: float#

Resistance value.

Returns:
float

Resistance value or None if not an RLC type.

property Component.cap_value: float#

Capacitance Value.

Returns:
float

Capacitance Value. None if not an RLC Type.

property Component.ind_value#

Inductance Value.

Returns:
float

Inductance Value. None if not an RLC Type.

property Component.is_parallel_rlc: bool#

Define if model is Parallel or Series.

Returns:
bool

True´ if parallel rlc model. `False series RLC. None if not RLC Type.

property Component.center: tuple[float, float]#

Compute the component center.

Returns:
list

[x value, y value].

property Component.location: tuple[float, float]#

Component center.

Returns:
List[float, float]

[x, y].

property Component.bounding_box: tuple[tuple[float, float], tuple[float, float]]#

Component’s bounding box.

Returns:
List[float]

List of coordinates for the component’s bounding box, with the list of coordinates in this order: [X lower left corner, Y lower left corner, X upper right corner, Y upper right corner].

property Component.rotation: float#

Compute the component rotation in radian.

Returns:
float

Rotation value.

property Component.pinlist: list[pyedb.grpc.database.primitive.padstack_instance.PadstackInstance]#

Pins of the component.

Returns:
list

List of Pins of Component.

property Component.nets#

Nets of Component.

Returns:
list[str]

Component nets names.

property Component.pins: dict[str, pyedb.grpc.database.primitive.padstack_instance.PadstackInstance]#

Component pins.

Returns:
Dic[str,:class:PadstackInstance ]

Component dictionary pins.

property Component.num_pins#

Number of Pins of Component.

Returns:
int

Component pins number.

property Component.type: str#

Component type.

Returns:
str

Type of the component. Options are "resistor", "inductor", "capacitor", "ic", "io" and "other".

property Component.numpins: int#

Number of Pins of Component.

..deprecated:: 0.51.0

Use: func:num_pins instead.

Returns#

int

Component pins number.

property Component.partname: str#

Component part name.

Returns:
str

Component part name.

property Component.name#

Component part name.

Returns:
str

Component part name.

property Component.ref_des#

Reference Designator Name.

Returns:
str

Reference Designator Name.

property Component.part_name: str#

Component part name.

Returns:
str

Component part name.

property Component.placement_layer: str#

Placement layern name.

Returns:
str

Placement layer name.

property Component.layer: pyedb.grpc.database.layers.stackup_layer.StackupLayer#

Placement layern object.

Returns:
pyedb.grpc.database.layers.stackup_layer.StackupLayer

Placement layer.

property Component.is_top_mounted: bool#

Check if a component is mounted on top or bottom of the layout.

Returns:
bool

True component is mounted on top, False on down.

property Component.lower_elevation: float#

Lower elevation of the placement layer.

Returns:
float

Placement layer lower elevation.

property Component.upper_elevation: float#

Upper elevation of the placement layer.

Returns:
float

Placement layer upper elevation.

property Component.top_bottom_association: int#

Top/bottom association of the placement layer.

Returns:
int

Top/bottom association of the placement layer, where:

  • 0 - Top associated

  • 1 - No association

  • 2 - Bottom associated

  • 4 - Number of top/bottom associations.

  • -1 - Undefined

Attribute detail#

Component.core#

Method detail#

Component.create_package_def(name=None, component_part_name=None) bool#

Create a package definition and assign it to the component.

Parameters:
name: str, optional

Name of the package definition

component_part_namestr, optional

Part name of the component.

Returns:
bool

True if succeeded, False otherwise.

Component.delete()#

Delete the component from the EDB.

Returns:
bool

True when successful, False when failed.

Component.assign_spice_model(file_path: str, name: str | None = None, sub_circuit_name: str | None = None, terminal_pairs: list | None = None) pyedb.grpc.database.hierarchy.spice_model.SpiceModel#

Assign Spice model to this component.

Parameters:
file_pathstr

File path of the Spice model.

namestr, optional

Name of the Spice model.

Returns:
SpiceModel

Spice model.

Component.assign_s_param_model(file_path, name=None, reference_net=None) ansys.edb.core.definition.component_model.NPortComponentModel#

Assign S-parameter to this component.

Parameters:
file_pathstr

File path of the S-parameter model.

namestr, optional

Name of the S-parameter model.

reference_netstr, optional

Reference net.

Returns:
NPortComponentModel

ComponentModel.

Component.use_s_parameter_model(name, reference_net=None) bool#

Use S-parameter model on the component.

Parameters:
name: str

Name of the S-parameter model.

reference_net: str, optional

Reference net of the model.

Returns:
bool

True when successful, False when failed.

Examples

>>> edbapp = Edb()
>>>comp_def = edbapp.definitions.components["CAPC3216X180X55ML20T25"]
>>>comp_def.add_n_port_model("c:GRM32_DC0V_25degC_series.s2p", "GRM32_DC0V_25degC_series")
>>>edbapp.components["C200"].use_s_parameter_model("GRM32_DC0V_25degC_series")
Component.assign_rlc_model(res=None, ind=None, cap=None, is_parallel=False) pyedb.grpc.database.hierarchy.pin_pair_model.PinPairModel#

Assign RLC to this component.

Parameters:
resint, float

Resistance. Default is None.

indint, float

Inductance. Default is None.

capint, float

Capacitance. Default is None.

is_parallelbool, optional

Whether it is a parallel or series RLC component. The default is False.

Returns:
Model

Component Model.

Component.create_clearance_on_component(extra_soldermask_clearance=0.0001) bool#

Create a Clearance on Soldermask layer by drawing a rectangle.

Parameters:
extra_soldermask_clearancefloat, optional

Extra Soldermask value in meter to be applied on component bounding box.

Returns:
bool