Skip to main content

Chaos Atlas

Iterated maps, coupled map lattices, and Lyapunov exponents for chaotic dynamical systems. NumPy arrays in, NumPy arrays out.

This is the Python companion to the Chaos Atlas web explorer, which visualises the same systems interactively.

Install

pip install chaos-atlas

Use

Every map shares the same surface, so switching systems is a one-word change.

from chaos_atlas.maps import logistic, henon

orbit = logistic.trajectory(r=3.9, x0=0.5, iterations=1000)
exponent = logistic.lyapunov(r=4.0)          # -> log 2, the Bernoulli shift

points = henon.attractor(a=1.4, b=0.3, iterations=10_000)   # (10000, 2)

Bifurcation diagrams come back as paired flat arrays, ready to scatter:

import matplotlib.pyplot as plt

r, x = logistic.bifurcation(r_min=2.5, r_max=4.0, r_steps=2000)
plt.plot(r, x, ",k", alpha=0.25)

Coupled map lattices return a (time_steps, lattice_size) space-time array:

from chaos_atlas import cml

spacetime = cml.diffusive(r=3.9, epsilon=0.4, lattice_size=256, time_steps=512)
plt.imshow(spacetime, aspect="auto", cmap="magma")

Pass rng= (or initial=) when you need a run to be reproducible.

Maps

Module System Notes
logistic x → rx(1−x) period doubling, bifurcation, cobweb
tent piecewise linear λ = log α exactly, symbolic dynamics
henon (1−ax²+y, bx) strange attractor, λ₁ ≈ 0.419
standard Chirikov area preserving, KAM islands
ikeda optical cavity spiral attractor
arnold cat map area preserving, finite recurrence period
bakers baker's transformation entropy = log 2 exactly
tinkerbell quadratic 2D multi-loop attractor
duffing double well fixed points in closed form
complex_quadratic z² + c Julia and Mandelbrot escape-time

Lyapunov exponents for the nonlinear 2D maps evolve a tangent vector under the analytic Jacobian with renormalisation each step. Where a map has an exact exponent — tent, baker's, Arnold, logistic at r = 4 — the test suite pins the numerical result to it.

Development

uv venv && uv pip install -e ".[dev]"
pytest

License

Apache-2.0. Copyright 2026 Ricardo A S Frantz.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chaos_atlas-0.1.0.tar.gz (54.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chaos_atlas-0.1.0-py3-none-any.whl (22.7 kB view details)

Uploaded Python 3

File details

Details for the file chaos_atlas-0.1.0.tar.gz.

File metadata

  • Download URL: chaos_atlas-0.1.0.tar.gz
  • Upload date:
  • Size: 54.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for chaos_atlas-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c428727c785c856145a77ec8596716747c54255994fc3850378b397eb9b2500d
MD5 75656958936241ae63388ad0c11436dc
BLAKE2b-256 05d1de31a350724838996805e06beb37ab7be995e33f4442b224db1b41b6c1fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for chaos_atlas-0.1.0.tar.gz:

Publisher: release.yml on openfluids/chaos-atlas

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chaos_atlas-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: chaos_atlas-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 22.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for chaos_atlas-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0da68abed26cc98cc68ecead408a94c1a40341a9bdac8387675b8531f273f83d
MD5 02930010a1acf865ed16cf9e9600e803
BLAKE2b-256 185fb6a016d93ba0bfc608e6e10455ab9f3766a5c3fadcae1b41fe8ca2200109

See more details on using hashes here.

Provenance

The following attestation bundles were made for chaos_atlas-0.1.0-py3-none-any.whl:

Publisher: release.yml on openfluids/chaos-atlas

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.3.0

2 files

0.2.0

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page