Skip to content

analog-system-compiler/asysc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

113 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

asysc is an analog system compiler based on the lightweight Computer Algebra System lightcas.

Similar to the VHDL-AMS language, ASysC allows you to create your own components using algebraic descriptions.

For instance, consider the resistor declaration:

NAME.CR(@1,@2,R) := { 
    NAME.U = ACROSS( @1, @2 ); 
    NAME.I = THROUGH( @1, @2 ); 
    NAME.U = R * NAME.I 
};

Additional component definition examples can be found in component.rule file and examples directories.

Requirements

C++ requirement

  • g++ or clang
  • make

Python requirements

  • numpy
  • matplotlib

Getting source code

git clone https://github.com/analog-system-compiler/asysc.git
cd asysc
git submodule update --init

Code compilation

make clean
make

Run all tests

make run

Run a specific test

To execute a particular test, type:

cd examples
make
cd examples/<directory>
python3 simulation.py

License

This project is licensed under the GNU General Public License - see the LICENSE file for details.

Examples

Some transient analysis examples

Transient examples

Some AC analysis examples

AC examples

About

Computer Algebra-Based Analog Simulator

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •