Edb#

class pyedb.dotnet.edb.Edb(edbpath: str | None = None, cellname: str | None = None, isreadonly: bool = False, edbversion: str | None = None, isaedtowned: bool = False, oproject=None, student_version: bool = False, use_ppe: bool = False, technology_file: str | None = None, remove_existing_aedt: bool = False)[source]#

Provides the EDB application interface.

This module inherits all objects that belong to EDB.

Parameters:
edbpathstr, optional

Full path to the aedb folder. The variable can also contain the path to a layout to import. Allowed formats are BRD, MCM, XML (IPC2581), GDS, and DXF. The default is None. For GDS import, the Ansys control file (also XML) should have the same name as the GDS file. Only the file extension differs.

cellnamestr, optional

Name of the cell to select. The default is None.

isreadonlybool, optional

Whether to open EBD in read-only mode when it is owned by HFSS 3D Layout. The default is False.

edbversionstr, int, float, optional

Version of EDB to use. The default is None. Examples of input values are 232, 23.2, 2023.2, "2023.2".

isaedtownedbool, optional

Whether to launch EDB from HFSS 3D Layout. The default is False.

oprojectoptional

Reference to the AEDT project object.

student_versionbool, optional

Whether to open the AEDT student version. The default is False.

technology_filestr, optional

Full path to technology file to be converted to xml before importing or xml. Supported by GDS format only.

Examples

Create an Edb object and a new EDB cell.

>>> from pyedb.dotnet.edb import Edb
>>> app = Edb()

Add a new variable named “s1” to the Edb instance.

>>> app['s1'] = "0.25 mm"
>>> app['s1'].tofloat
>>> 0.00025
>>> app['s1'].tostring
>>> "0.25mm"

or add a new parameter with description:

>>> app['s2'] = ["20um", "Spacing between traces"]
>>> app['s2'].value
>>> 1.9999999999999998e-05
>>> app['s2'].description
>>> 'Spacing between traces'

Create an Edb object and open the specified project.

>>> app = Edb("myfile.aedb")

Create an Edb object from GDS and control files. The XML control file resides in the same directory as the GDS file: (myfile.xml).

>>> app = Edb("/path/to/file/myfile.gds")

Methods

Edb.add_design_variable(variable_name, ...)

Add a variable to edb.

Edb.add_project_variable(variable_name, ...)

Add a variable to edb database (project).

Edb.are_port_reference_terminals_connected([...])

Check if all terminal references in design are connected.

Edb.attach(hdb)

Attach the database to existing AEDT instance.

Edb.auto_parametrize_design([layers, ...])

Assign automatically design and project variables with current values.

Edb.build_simulation_project(simulation_setup)

Build a ready-to-solve simulation project.

Edb.calculate_initial_extent(expansion_factor)

Compute a float representing the larger number between the dielectric thickness or trace width multiplied by the nW factor.

Edb.change_design_variable_value(...)

Change a variable value.

Edb.close()

Close the database.

Edb.close_edb()

Close EDB and cleanup variables.

Edb.copy_cells(cells_to_copy)

Copy Cells from other Databases or this Database into this Database.

Edb.copy_zones([working_directory])

Copy multizone EDB project to one new edb per zone.

Edb.create(db_path)

Create a Database at the specified file location.

Edb.create_current_source(terminal, ref_terminal)

Create a current source.

Edb.create_edb()

Create EDB.

Edb.create_hfss_setup([name])

Create an HFSS simulation setup from a template.

Edb.create_port(terminal[, ref_terminal, ...])

Create a port.

Edb.create_raptorx_setup([name])

Create an RaptorX simulation setup from a template.

Edb.create_siwave_dc_setup([name])

Create a setup from a template.

Edb.create_siwave_syz_setup([name])

Create a setup from a template.

Edb.create_voltage_probe(terminal, ref_terminal)

Create a voltage probe.

Edb.create_voltage_source(terminal, ref_terminal)

Create a voltage source.

Edb.cutout([signal_list, reference_list, ...])

Create a cutout using an approach entirely based on PyAEDT.

Edb.cutout_multizone_layout(zone_dict[, ...])

Create a multizone project cutout.

Edb.delete(db_path)

Delete a database at the specified file location.

Edb.edb_exception(ex_value, tb_data)

Write the trace stack to AEDT when a Python error occurs.

Edb.edb_value(val)

Convert a value to an EDB value.

Edb.execute(func)

Execute a function.

Edb.export_hfss(path_to_output[, net_list, ...])

Export EDB to HFSS.

Edb.export_maxwell(path_to_output[, ...])

Export EDB to Maxwell 3D.

Edb.export_q3d(path_to_output[, net_list, ...])

Export EDB to Q3D.

Edb.export_siwave_dc_results(siwave_project, ...)

Close EDB and solve it with Siwave.

Edb.export_to_ipc2581([ipc_path, units])

Create an XML IPC2581 file from the active EDB.

Edb.find_by_id(db_id)

Find a database by ID.

Edb.get_bounding_box()

Get the layout bounding box.

Edb.get_conformal_polygon_from_netlist([netlist])

Return an EDB conformal polygon based on a netlist.

Edb.get_connected_objects(layout_object_instance)

Get connected objects.

Edb.get_point_terminal(name, net_name, ...)

Place a voltage probe between two points.

Edb.get_product_property(prod_id, attr_it)

Get the product-specific property value.

Edb.get_product_property_ids(prod_id)

Get a list of attribute ids corresponding to a product property id.

Edb.get_statistics([compute_area])

Get the EDBStatistics object.

Edb.get_variable(variable_name)

Return Variable Value if variable exists.

Edb.import_cadence_file(inputBrd[, WorkDir, ...])

Import a board file and generate an edb.def file in the working directory.

Edb.import_gds_file(inputGDS[, WorkDir, ...])

Import a GDS file and generate an edb.def file in the working directory.

Edb.import_layout_pcb(input_file, working_dir)

Import a board file and generate an edb.def file in the working directory.

Edb.import_material_from_control_file(...[, ...])

Import materials from the provided control file.

Edb.new_simulation_configuration([filename])

New SimulationConfiguration Object.

Edb.number_with_units(value[, units])

Convert a number to a string with units.

Edb.open(db_path, read_only)

Open an existing Database at the specified file location.

Edb.open_edb()

Open EDB.

Edb.open_edb_inside_aedt()

Open EDB inside AEDT.

Edb.point_3d(x, y[, z])

Compute the Edb 3d Point Data.

Edb.point_data(x[, y])

Compute the Edb Point Data.

Edb.run_as_standalone(flag)

Set if Edb is run as standalone or embedded in AEDT.

Edb.save()

Save any changes into a file.

Edb.save_as(path[, version])

Save this Database to a new location and older EDB version.

Edb.save_edb()

Save the EDB file.

Edb.save_edb_as(fname)

Save the EDB file as another file.

Edb.scale(scale_factor)

Uniformly scale all geometry and their locations by a positive factor.

Edb.set_product_property(prod_id, attr_it, ...)

Set the product property associated with the given product and attribute ids.

Edb.solve_siwave()

Close EDB and solve it with Siwave.

Edb.variable_exists(variable_name)

Check if a variable exists or not.

Edb.write_export3d_option_config_file(...[, ...])

Write the options for a 3D export to a configuration file.

Attributes

Edb.active_cell

Active cell.

Edb.active_db

Database object.

Edb.active_layout

Active layout.

Edb.apd_bondwire_defs

Get all APD bondwire definitions in this Database.

Edb.api_class

Return Ansys.Ansoft.Edb class object.

Edb.api_object

Return Ansys.Ansoft.Edb object.

Edb.cell_names

Cell name container.

Edb.circuit_cells

Get all circuit cells in the Database.

Edb.component_defs

Get all component definitions in the database.

Edb.components

Edb Components methods and properties.

Edb.configuration

Edb project configuration from file.

Edb.database

Edb Dotnet Api Database.

Edb.dataset_defs

Get all dataset definitions in the database.

Edb.db

Active database object.

Edb.definition

Edb Dotnet Api Database Edb.Definition.

Edb.definitions

Definitions class.

Edb.design_options

Edb Design Settings and Options.

Edb.design_variables

Get all edb design variables.

Edb.differential_pairs

Get all differential pairs.

Edb.directory

Get the directory of the Database.

Edb.edb_api

Edb Dotnet Api class.

Edb.edb_uid

Get ID of the database.

Edb.excitations

Get all layout excitations.

Edb.excitations_nets

Get all excitations net names.

Edb.extended_nets

Get all extended nets.

Edb.footprint_cells

Get all footprint cells in the Database.

Edb.hfss

Core HFSS methods and properties.

Edb.hfss_setups

Active HFSS setup in EDB.

Edb.is_read_only

Determine if the database is open in a read-only mode.

Edb.jedec4_bondwire_defs

Get all JEDEC4 bondwire definitions in this Database.

Edb.jedec5_bondwire_defs

Get all JEDEC5 bondwire definitions in this Database.

Edb.layout

Layout object.

Edb.layout_instance

Edb Layout Instance.

Edb.layout_validation

pyedb.dotnet.edb_core.edb_data.layout_validation.LayoutValidation.

Edb.logger

Logger for EDB.

Edb.material_defs

Get all material definitions in the database.

Edb.materials

Material Database.

Edb.modeler

Core primitives modeler.

Edb.net_classes

Get all net classes.

Edb.nets

Core nets.

Edb.package_defs

Get all Package definitions in this Database.

Edb.padstack_defs

Get all Padstack definitions in this Database.

Edb.padstacks

Core padstack.

Edb.ports

Get all ports.

Edb.probes

Get all layout probes.

Edb.project_variables

Get all project variables.

Edb.setups

Get the dictionary of all EDB HFSS and SIwave setups.

Edb.siwave

Core SIWave methods and properties.

Edb.siwave_ac_setups

Active Siwave SYZ setups.

Edb.siwave_dc_setups

Active Siwave DC IR Setups.

Edb.source

Get source name for this Database.

Edb.source_version

Get the source version for this Database.

Edb.sources

Get all layout sources.

Edb.stackup

Stackup manager.

Edb.student_version

Set the student version flag.

Edb.terminals

Get terminals belonging to active layout.

Edb.top_circuit_cells

Get top circuit cells.

Edb.variables

Get all Edb variables.

Edb.version

Get version of the Database.