Skip to content

ansys/pyedb

Repository files navigation

PyEDB

PyAnsys PythonVersion MIT

What is PyEDB?

PyEDB is Python client library for processing complex and large layout designs in the Ansys Electronics Database (EDB) format, which stores information describing designs for Ansys Electronics Desktop (AEDT).

While you can also use the PyEDB-Core API to automate EDB workflows, using it requires a deep comprehension of the EDB architecture and class inheritances, resulting in a learning curve not always compatible with daily work loads.

To speed up EDB adoption and improve user experience, PyEDB provides high-level classes that call the PyEDB-Core API. Thanks to PyEDB's application-oriented architecture, you can start using EDB faster and easier.

About PyEDB

PyEDB is part of the larger PyAnsys effort to facilitate the use of Ansys technologies directly from Python. It is intended to consolidate and extend all existing functionalities around scripting for EDB to allow reuse of existing code, sharing of best practices, and increased collaboration.

PyEDB includes functionality for interacting with Ansys electromagnetic simulators: : HFSS, HFSS 3D Layout, Icepak, Maxwell, Q3D, and SIwave.

What is EDB?

EDB provides a proprietary database file format (AEDB) for efficient and fast layout design handling and processing for building ready-to-solve projects. EDB addresses signal integrity (SI), power integrity (PI-DC), and electro-thermal work flows. You can import an AEDB file into AEDT to modify the layout, assign materials, and define ports, simulations, and constraints. You can then launch any of the Ansys electromagnetic simulators.

EDB runs as a standalone API, which means that you don't need to open a user interface (UI). Because EDB opens the aedb folder for directly querying and manipulating layout design in memory, it provides the fastest and most efficient way to handle a large and complex layout.

You can also parse an AEDB file from a command line in batch in an Ansys electromagnetic simulator like HFSS or SIwave. Thus, you can deploy completely non-graphical flows, from layout translation through simulatiom results.

Additionally, you can use PyAEDT to import an AEDB file into AEDT to view a project, combine 3D designs, or perform simulation postprocessing. EDB also supports 3D component models.

Documentation and issues

Documentation for the latest stable release of PyEDB is hosted at PyEDB documentation. The documentation has five sections:

  • Getting started: Describes how to install PyEDB in user mode.
  • User guide: Describes how to use PyEDB.
  • API reference: Provides API member descriptions and usage examples.
  • Examples: Provides examples showing end-to-end workflows for using PyEDB.
  • Contribute: Describes how to install PyEDB in developer mode and how to contribute to this PyAnsys library.

In the upper right corner of the documentation's title bar, there is an option for switching from viewing the documentation for the latest stable release to viewing the documentation for the development version or previously released versions.

On the PyEDB Issues page, you can create issues to report bugs and request new features. On the PyEDB Discussions page or the Discussions page on the Ansys Developer portal, you can post questions, share ideas, and get community feedback.

To reach the project support team, email [email protected].

License

PyEDB is licensed under the MIT License.

PyEDB makes no commercial claim over Ansys whatsoever. This library extends the functionality of EDB by adding a Python interface to PyEDB-Core without changing the core behavior or license of the original software. The use of PyEDB requires a legally licensed local copy of AEDT.

To get a copy of AEDT, see the Ansys Electronics page on the Ansys website.

back to top