Skip to content

1. Introduction

NickV edited this page Oct 11, 2021 · 2 revisions

What is it?

ELABorate is a Circuit Analysis Tool capable of pure symbolic analysis, as well as partial or complete numerical evaluation. Written and run in MATLAB. ELABorate is geared towards circuit analysis and design, but has applications for any general system analysis, such as controller design.

How do I run it?

Currently, it's implemented as a MATLAB toolbox, intended to be used with Matlab live scripts. You just download and double-click the toolbox to install it. It may require that you move it up the list of your path in MATLAB. If anything else is required, MATLAB will notify you.

What does it need?
ELABorate only needs a circuit netlist in the form of a text file or a string. Read up on netlists, if in doubt. The netlist used here are "spice-like". See examples of valid netlists. Create a circuit-object from your netlist like this:

myCircuit = Circuit('path-to-file.txt'); % or just netlist string.

What does it provide?

ELABorate create a circuit-object. This object can be transmuted, analyzed and its behaviour visualized. Here is an overview of the most basic functionality, but for a full run-down, see the features-page.

The static class, ELAB, contain all the tools, you need to understand your circuit. For example: to symbolically analyze the circuit - in other words - finding circuit equations, node voltages, branch currents, element voltages and element currents, you write the following.

ELAB.analyze(myCircuit);

The results can be accessed through the properties of the circuit-object.

myCircuit.equations
myCircuit.symbolic_node_voltages
%...

How is this program made?

The core of the program is the MNA-algorithm. The program is implemented in an object-oriented fashion for modularity and extendability, and it should therefore be easy for other users to extend its functionality. It utilizes MATLAB's Symbolic toolbox and Control Systems toolbox.

Clone this wiki locally