Python Scripts for 2D, 3D and 4D Flows
These Python programs can be downloaded from GitHub at https://github.itap.purdue.edu/nolte/Python-Programs-for-Nonlinear-Dynamics
-
DWH.py:
- Biased double well.
-
DampedDriven.py:
- Driven-damped oscillators. Options are: driven-damped pendulum and driven-damped double well potential. Plots a two-dimensional Poincaré section.
-
DoublePendulum.py:
- Double pendulum. (See: https://galileo-unbound.blog/2020/10/18/the-ups-and-downs-of-the-compound-double-pendulum/)
-
Duffing.py:
- Duffing oscillator.
-
FlipPhone.py:
- Flipping iPhone simulator. (See https://galileo-unbound.blog/2021/10/10/physics-of-the-flipping-iphone-and-the-fate-of-the-earth/.)
-
Flow2D.py:
- Simple flows for 2D autonomous dynamical systems. Options are: Medio, van der Pol, and Fitzhugh-Nagumo models.
-
Flow2DBorder.py:
- Same as Flow2D.py but with initial conditions set on the boarder of the phase portrait.
-
Flow3D.py:
- Flows for 3D autonomous dynamical systems. Options are: Lorenz, Rössler and Chua’s Circuit.
-
GravSynch.py:
- Synchronization of clocks in a spaceship near a black hole. (See: https://galileo-unbound.blog/2021/05/16/locking-clocks-in-strong-gravity/)
-
gravlens.py:
- Gravitational lensing. (See: https://galileo-unbound.blog/2021/04/05/the-lens-of-gravity-einsteins-rings/)
-
Hamilton4D.py:
- Hamiltonian flows for 4D autonomous systems. Options are: Henon-Heiles potential, and the crescent potential. Plots a two-dimensional Poincaré section. (See: https://galileo-unbound.blog/2019/11/04/the-physics-of-life-the-universe-and-everything-in-one-easy-equation/)
-
Heiles.py:
- Henon-Heiles and also a crescent model
-
HenonHeiles.py:
- Standalone Henon-Heiles model.
-
Hill.py:
- Hill potentials for 3-body problem. (See: https://galileo-unbound.blog/2019/07/19/getting-armstrong-aldrin-and-collins-home-from-the-moon-apollo-11-and-the-three-body-problem/)
-
Kuramoto.py:
- Kuramoto synchronization of phase oscillators on a complete graph. (See: https://galileo-unbound.blog/2019/11/04/the-physics-of-life-the-universe-and-everything-in-one-easy-equation/)
-
logistic.py:
- Logistic discrete map, plus some other choices.
-
Lozi.py:
- Discrete iterated Lozi map conserves volume.
-
NetDynamics.py:
- Coupled phase oscillators on various network topologies. Has more options than coupleNdriver.py.
-
NetSIR.py:
- SIR viral infection model on networks
-
NetSIRS.py:
- SIRS viral infection model on networks
-
PenInverted.py:
-
Perturbed.py:
- Driven undampded oscillators with a plane-wave perturbation. Options are: pendulum and double-well potential. These are driven nonlinear Hamiltonian systems. When driven at small perturbation amplitude near the separatrix, chaos emerges. These systems do not conserve energy, because there is a constant input and output of energy as the system reacts against the drive force. Plots a two-dimensional Poincaré section.
-
raysimple.py:
- Eikonal equation simulator. (See: https://galileo-unbound.blog/2019/05/30/the-iconic-eikonal-and-the-optical-path/)
-
SIR.py:
- SIR homogeneous COVID-19 model (See: https://galileo-unbound.blog/2020/03/22/physics-in-the-age-of-contagion-the-bifurcation-of-covid-19/)
-
SIRS.py:
- SIRS homogeneous COVID-19 model (See: https://galileo-unbound.blog/2020/07/20/physics-in-the-age-of-contagion-part-4-fifty-shades-of-immunity-to-covid-19/)
-
SIRWave.py:
- Covid-19 second wave model (See:https://galileo-unbound.blog/2020/04/06/physics-in-the-age-of-contagion-part-2-the-second-wave-of-covid-19/)
-
StandMap.py:
- The Chirikov map, also known as the standard map, is a discrete itereated map with winding numbers and islands of stability.
-
StandMapHom.py:
- Homoclinic tangle for the standard map. (See: https://galileo-unbound.blog/2020/08/24/henri-poincare-and-his-homoclinic-tangle/)
-
StandMapTwist.py:
- The Standard Map in twist format (See: https://galileo-unbound.blog/2019/10/14/how-number-theory-protects-you-from-the-chaos-of-the-cosmos/)
-
trirep.py:
- Replicator dynamics in 3D simplex format. (See: https://galileo-unbound.blog/2019/11/04/the-physics-of-life-the-universe-and-everything-in-one-easy-equation/)
-
UserFunction.py:
- Growing library of user functions
- linfit.py – linear regression function
- Growing library of user functions
-
WebMap.py:
- The discrete map of a periodically kicked oscillator displays a web of dynamics. (See: https://galileo-unbound.blog/2018/10/27/how-to-weave-a-tapestry-from-hamiltonian-chaos/)
(Selected Python programs can be found at the Galileo Unbound Blog Site: https://galileo-unbound.blog/tag/python-code/)