Giter VIP home page Giter VIP logo

pyplane's Introduction

WARNING: This software is archived and only kept for historical reasons. The official most recent version of PyPlane is available at https://github.com/TUD-RST/pyplane.


About

PyPlane is a free software for phase plane analysis of second order dynamical systems written in PYTHON and QT4 (compare MATLAB's pplane).

Screenshot

Features:

  • Vector fields and streamlines for second order nonlinear dynamical systems of the form x'=f(x,y), y'=g(x,y)
  • Forward and backward solution trajectories for arbitrary initial conditions in the phase plane
  • Time dependent solutions x(t) and y(t)
  • 3D visualization t(x,y)
  • Nullclines
  • Find equilibrium points and calculate the corresponding Jacobian
  • Linearize a system around equilibrium points, characterize and plot eigenvectors
  • Add arbitrary function into the phase plane area (i.e. contour lines of Ljapunov-functions)

Originally, it has been developed by Klemens Fritzsche in 2013 and 2014 at the Institute of Control Theory [1], Technische Universität Dresden. Supervisors: Carsten Knoll, Jan Winkler. Since 2015 it has been maintained and developed by Klemens Fritzsche and Jan Winkler at the Institute of Control Theory [1].

It is published under the GNU GENERAL PUBLIC LICENSE Version 3.

[1] http://www.et.tu-dresden.de/rst/

Notes

PyPlane runs either natively in a fully functional Python environment under Linux/Windows/OSX or as a stand-alone executable under MS Windows.

Prerequisites for running natively under Python

PyPlane runs under Python version 2.7 with the following packages installed:

  • NumPy (tested under version 1.9)
  • SciPy (tested under version 0.15)
  • Matplotlib (tested under verison 1.4.3)
  • SymPy (tested under verison 0.7.6)
  • PyQt4 (tested under version 4.11.3)

An optionally installed and accessible LaTeX/dvipng environment produces much prettier results in the linearization tabs. If no LaTeX is installed the program is still fully functional.

Call "python main.py" in the base directory of PyPlane in order to launch the application.

Prerequisites for the stand-alone version

The stand-alone version is only available for MS Windows operating systems on which no Python is installed. You just need to run the provided installer file PyPlane_Setup.exe. It will create a directory on your desktop in which all required files will be stored. A shortcut for launching PyPlane will be placed on the desktop. No modifications in the system registry will be done. As in the native Python version a functional LaTeX installation will produce better formatting results in the linearization tabs. But even without LaTeX the program is fully functional.

Double-click on the PyPlane icon on the desktop in order to launch the application. Start-up may take some time.

Open issues in version 1.0

  • PyPlane will not launch if it detects a fully functional LaTeX-environment in which the package type1cm.sty is missing. Please place this style package in your LaTeX-installation.

Important files in the base directory

main.py

Run python main.py in order to launch the application

make_ui.py

Run this script in order to convert ui-files created by QT4 Designer to py-files and to generate the resource file icons_rc.py

build_exe.py

Run this Python script on windows machines in order to build a stand-alone executable for MS Windows (which does not require a separate Python installation)

InstallerPyPlane.nsi

Run this script from Nullsoft installer to build an installation package for the stand-alone executable created by buid_exe.py

pyplane's People

Contributors

cknoll avatar jcwinkler avatar klim- avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

pyplane's Issues

Proposal: archive this repo

The PR #6 triggers the following thought: imho it would be sensible to define https://github.com/tud-RST/pyplane/ as the canonical repo for pyplane. Of course it emerged as a project of @klim-. However, I think now it is more a project of the institute as a whole. That would also avoid potential confusion which repo is the "correct" one for new users (e.g. our students): the original one or the fork.

I suggest the following:

  1. Making a (final) commit to the master branch of this repo announcing that the project is continued as https://github.com/tud-RST/pyplane/ prominently at the top of the README and then archive this repo here.

  2. At https://github.com/tud-RST/pyplane/ we can then remove the "fork-property" to avoid confusion.

We can also add a History section to the README that the project was started by @klim- (if desired).

What do you mean @jcwinkler @klim-?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.