File Exchange

image thumbnail

Keysight Advanced Design System (ADS) to Matlab interface

version 1.3 (5.89 MB) by Oleg Iupikov
The interface between Matlab and Keysight Advanced Design System (ADS)


Updated 26 May 2020

From GitHub

View license on GitHub

======= ADS-Matlab-Interface =======

Keysight Advanced Design System (ADS) to Matlab interface.

========== Introduction ===========

This **TADSInterface** class allows for communication with Keysight Advanced Design System (ADS) from within MATLAB.
It has been developed and tested **under Windows platform**, but small modifications are expected to adapt it for Linux.

> **Warning!** The interface heavily uses **undocumented** features of ADS! Therefore, there is a chance that it will stop working under a new release of ADS. The current version of the interface **has been tested with ADS 2016.1, 2017 and 2019**.

> **NOTE** also that the interface has been heavily used for simulations using **Harmonic balance** solver in ADS. It should work with other solvers as well, but it is not guaranteed.

=========== Features ===========

This ADS-MATLAB interface allows:
- Set paths and environmental variables required by ADS;
- Change parameters in the ADS project's schematic ("*Var Eqn*" component);
- Change parameters of components (like *SNP*, capacitors, etc.);
- Run simulation;
- Read results from the dataset files generated by the solver (which can be run either from Matlab using this interface, or natively from ADS IDE).

> **NOTE** that all parameter changes made by the interface affect **only** the project's netlist file, and do not affect the schematic. The netlist will be re-generated by ADS if simulation is started within its IDE. So, the parameter changes here make sense only if the simulation is started by means of this interface.

======= Demos / Documentation =======

All functionalities are well documented in the included Live Script demos. MATLAB R2018a or higher is desired in order to not loose code samples in the demos.

======= Bugs / feature requests ========

If you encounter any errors, notice some misfunction while using the interface, or would like to have new functionality, feel free to open an issue [directly in GitHub]( However, I cannot promise fast fix/response due to lack of time for support.

========== Acknowledgment ==========

I would like to thank Jan Simon for his great function `GetFullPath` (, it is very helpful for this interface.

Cite As

Oleg Iupikov (2021). Keysight Advanced Design System (ADS) to Matlab interface (, GitHub. Retrieved .

Comments and Ratings (3)

Oleg Iupikov

@David, With my use cases I had no problems with that. However, sometimes I had issues with external libraries, and keeping the project open in ADS IDE (while running the solver from Matlab) helped. It seems ADS IDE adds some extra path information in the project files when it is open there. Maybe it will help with spetra.raw file as well. If the problem is not with the file location, but with access rights, you may try to start Matlab under admin, so the hpeesofsim is run with the same rights.

David Kortge

I had a similar issue where it can not access the spetra.raw file. It then terminates hpeesofsim with an error. Any ideas? I have done everything I can think of to allow access to the spectra.raw file and it's accessible as far as I can tell. Any thoughts?

Sagar Dhar

Hi, I was trying to run the demo for AC analysis- I find the error:

"Error using TADSInterface/RunSimulation (line 2072)
Cannot run simulation. The exit code is 1"

Any idea? FYI, the environment variables are set, and seems the netlist file is setting properly.


MATLAB Release Compatibility
Created with R2019a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!