Skip to content

gknave/ManifoldID

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ManifoldID

This Python package provides various methods for finding influential manifolds in the phase space of 2-dimensional ordinary differential equations (ODEs) that are time independent (extensions to time-dependent systems are currently underway). Some tools available in this package include:

Example Code

The code operates on functions that take in a two-dimensional vector and return a two-dimensional vector .

def myFunction(y):
    ydot = <something>
    return ydot

Next, we can plot, for instance, the phase portrait using phase_plot

import manifoldid as mid
def duffing(y)
    ydot = [y[1] ,y[0]-y[0]**3]
    return ydot
xlims = [-1.5, 1.5]
ylims = [-1, 1]
mid.phase_plot(duffing, xlims, ylims)

Installation

manifoldid will soon be available on pip, but for now, you need to clone the github repository and run the setup.py file.

git clone https://github.com/gknave/ManifoldID.git
cd manifoldid
python setup.py install

To-do List

  1. Parallelize!
    Many methods in this package require the integration of many trajectories over a grid of initial conditions. Parallelizing the code would speed up performance and make it much more useable.

  2. Extend to non-autonomous systems

  3. Extend to experimental data

Contribute

If you would like to be a part of this project moving forward, there's lots to do! Just send me an email at Gary.Nave@colorado.edu, and we can talk about how to make ManifoldID even more awesome!

License

MIT License

Copyright (c) 2018 Gary Nave

This is research code. There will likely be bugs.

About

Python package with methods to identify attracting and repelling manifolds, particularly within 2D autonomous ODE models.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages