A python package for visualizing non-linear dynamics and chaos. (2D phase portraits, 3D chaotic trajectories, Maps, Cobweb plots...)
Project description
from matplotlib import pyplot
import numpy
import phaseportrait
def pendulum(θ, dθ):
return dθ, - numpy.sin(θ)
SimplePendulum = phaseportrait.PhasePortrait2D(pendulum, [-9, 9], Title='Simple pendulum', xlabel=r"$\Theta$", ylabel=r"$\dot{\Theta}$")
SimplePendulum.plot()
Documentation
To check out phaseportrait's documentation, view some examples and read more about it, check our website or try our Graphical User Interface!
Installation
Installing via pip:
Phaseportrait releases are available as wheel packages for macOS, Windows and Linux on PyPI. Install it using pip:
$ pip install phaseportrait
Installing from source:
Open a terminal on desired route and type the following:
$ git clone https://github.com/phaseportrait/phaseportrait
Manual installation
Visit phase-portrait webpage on GitHub. Click on green button saying Code, and download it in zip format. Save and unzip on desired directory.
What's this?
The idea behind this project was to create a simple way to make phase portraits in 2D and 3D in Python, as we couldn't find something similar on the internet, so we got down to work. (Update: found jmoy/plotdf, offers similar 2D phase plots but it is very limited).
Eventually, we did some work on bifurcations, 1D maps and chaos in 3D trayectories.
This idea came while taking a course in non linear dynamics and chaos, during the 3rd year of physics degree, brought by our desire of visualizing things and programming.
We want to state that we are self-taught into making this kind of stuff, and we've tried to make things as professionally as possible, any comments about improving our work are welcome!
Authors
- Víctor Loras Herrero (vhloras@gmail.com)
- Unai Lería Fortea (unaileria@gmail.com)
Contributing
This proyect is open-source, everyone can download, use and contribute. To do that, several options are offered:
- Fork the project, add a new feature / improve the existing ones and pull a request via GitHub.
- Contact us on our emails:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file phaseportrait-1.3.0.tar.gz
.
File metadata
- Download URL: phaseportrait-1.3.0.tar.gz
- Upload date:
- Size: 34.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0eaebb351250ecd041fec5a60fd0c376bcdf562c8d8873545cedeffd018a62b |
|
MD5 | 55927ce8bcf9525ef6eea41f782c5a26 |
|
BLAKE2b-256 | da8d792fbec8cb4203471e77de7cca350664328cb4a09bf8d51cfe6bacc46d21 |
File details
Details for the file phaseportrait-1.3.0-py3-none-any.whl
.
File metadata
- Download URL: phaseportrait-1.3.0-py3-none-any.whl
- Upload date:
- Size: 45.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b75ee63c93fd24945f6fb3e659a9c4caa32b453f4512f38b488402d7b8bfb9b |
|
MD5 | 0742e743c989fa70dbf15d592cebc275 |
|
BLAKE2b-256 | 2a73a8d4945814023444c879d5f0810a5ca9a2c484ffa6469c980d001c36550e |