Loading repository data…
Loading repository data…
hanspi42 / repository
This Python tool allows you to draw signal-flow graphs, calculate transfer functions (SymPy code is generated for further use in Jupyter notebooks), do graph manipulations (e.g., node elimination and graph transposition), and save a graph as TikZ for use in LaTeX documentation.

Minor update from 2.1.0: signalflowgrapher-register will now also work on Linux and macOS.
This version can be installed with pip or downloaded and run locally. Please follow the steps in the section Getting started.
Please report all issues you find to hanspeter.schmid@fhnw.ch or create an issue on github, https://github.com/hanspi42/signalflowgrapher/issues
The easiest way is to install it with pip install signalflowgrapher. After that, you can start it with the command signalflowgrapher. On Windows, MacOS and Linux, you can associate .sfg files with the signalflowgrapher by running signalflowgrapher-register, this will also create a shortcut on the desktop. signalflowgrapher-deregister removes the association again.
If you want to download it and run it locally, then clone or download from https://github.com/hanspi42/signalflowgrapher, e.g. using git clone https://github.com/hanspi42/signalflowgrapher. Next:
To install the dependencies, you can use either Miniforge or Python environments.
cd to the top directory of this repository.conda env create --file=requirements/sfg.yml.conda activate sfg.cd src.python -m signalflowgrapher.python -m venv sfgsfg\Scripts\activate.bat or sfg\Scripts\Activate.ps1source sfg/bin/activatepip install -r requirements/base.txtcd src.python -m signalflowgrapher.There is none yet, but to familiarize yourself with signal-flow graphs, you can
See more details in Developer documentation for V2.0.
signalflowgrapher\src\main\python directory in a terminal or an anaconda terminalpython -m unittestflake8 -vThis package is distributed under the Artistic License 2.0, which you find in the file LICENSE and on the internet on https://opensource.org/licenses/Artistic-2.0.
Many people have discussed this, given feedback, reported issues, ...
The largest code contributions are from Simon Näf, Nicolai Wassermann, Michael Saladin, Pascal Gsell, and Hanspeter Schmid.
The first version checked in was the result of a bachelor thesis at the University of Applied Sciences and Arts Northwestern Switzerland, https://www.fhnw.ch/en/. Students: Simon Näf and Nicolai Wassermann. Advisors: Dominik Gruntz and Hanspeter Schmid. Contact author: hanspeter.schmid@fhnw.ch
Implemention of Johnson's algorithm: https://github.com/qpwo/python-simple-cycles