Kinamax

kinamax is a JAX/Diffrax toolkit for exploring periodic and subharmonic responses of nonlinear driven ODEs.

The documentation is built with Sphinx and MyST, so the pages are written in Markdown while still supporting API autodocumentation.

What is in the package

  • kinamax.integration.core contains the attractor search, clustering, and post-processing utilities.

  • kinamax.integration.models contains data-oriented time-integration models such as H46Problem.

  • kinamax.hbm contains harmonic-balance helpers for Fourier coefficient manipulations.

Install

Install the package in editable mode:

pip install -e .

Install the documentation dependencies:

pip install -e .[docs]

Build The Docs

From the repository root:

make -C docs html

The generated site is written to docs/_build/html.

Serve The Docs Locally

To avoid file:// access issues in the browser, serve the generated site over HTTP:

make -C docs html
make -C docs serve

By default the local site is available at http://127.0.0.1:8000.

You can choose a different host or port:

make -C docs serve HOST=127.0.0.1 PORT=8123

Publish The Docs

The documentation website can be published locally to the gh-pages branch with ghp-import.

To build and publish the current documentation:

make -C docs publish

Important:

  • make -C docs publish rebuilds the documentation locally before publishing.

  • make -C docs publish pushes the generated HTML from docs/_build/html to the gh-pages branch with ghp-import.

  • GitHub Pages must be configured to publish from the gh-pages branch.

  • The ghp-import command is installed with pip install -e .[docs].