Repository navigation
Releases: CesarPerdomoDiaz/xpplab
Release list
XPP Lab v0.1.2
XPP Lab 0.1.2: XPPAUT 8.0's engine, giving the same numbers as XPPAUT, with a desktop app for Windows, macOS and Linux and a Python package. It needs no X server, compiler or Terminal.
New in 0.1.2
- The app and Python together. Each action in the app now appears in the command window as the line of Python (the
xpplabpackage) that does the same, and File > Save session as Python script saves them: the script repeats the session exactly. The command window also takes Python: click its>>prompt, andm.run()runs the open model in the app while its plots follow. On a computer without Python, Install Python downloads one for XPP Lab, with NumPy and Matplotlib (about 55 MB, once). - Drive the open app from outside.
xpplab.app.connect()in a notebook or a script, or a coding agent through the MCP toolsapp_status,app_commandandapp_run, acts in the window you have open, and you watch the plots change. - The rest of XPPAUT's interface: equilibria over a parameter and every equilibrium in a box (Sing pts > Range and Monte Carlo); Range over two parameters; initial values from a file, a formula, Shift and several clicks; frozen and saved nullclines; the Kinescope, with animated GIFs and a film of the Range; statistics over many noisy runs (stocHastic > Compute).
xpplab-batchis XPPAUT's-silentmode, and also runs the app's commands, AUTO included, without a window. - AUTO: diagrams save and load exactly (XPPAUT keeps 6 digits), and an orbit can be imported. Boundary-value and homoclinic starts are now tested, and a homoclinic start answers XPPAUT's info box. A periodic branch that ends on a homoclinic orbit no longer shows spurious limit and branch points on its tail.
- Linearise (Run > Linearise): the A and B matrices at an equilibrium for the inputs you choose, the eigenvalues in the complex plane, and whether the inputs can steer the system. The app and
Model.linearizegive the same numbers. - Plots keep your zoom until a double-click or Fit.
- Learn by example on the website: field tutorials in neuroscience, ecology, chemistry and mechanics. In Jupyter, models, runs, equilibria and AUTO diagrams show as tables.
Download and run
| Your computer | Download | The first time you open it |
|---|---|---|
| Windows 10 or 11, 64-bit | XPPLab-Windows-x64.zip | Unzip it anywhere and run xpplab.exe. If Windows says "Windows protected your PC", click More info, then Run anyway. |
| macOS 11 or later, Apple silicon or Intel | XPPLab-macOS.dmg | Open it and drag the app to Applications. On macOS 15 and later, open the app once, then click Open Anyway in System Settings > Privacy & Security. On macOS 14 and earlier, Control-click the app and choose Open. |
| Linux, x86-64 (built on Ubuntu 22.04) | XPPLab-Linux-x86_64.tar.gz | tar xzf XPPLab-Linux-x86_64.tar.gz, then run XPPLab-Linux-x86_64/xpplab. |
The warnings appear because the apps are not yet signed with a paid certificate. The checksums at the end let you check a download.
Try it: the Morris-Lecar model opens. Press Run, open the Phase Plane tab, tick Nullclines, then drag the iapp slider. The File menu opens the other 150 example models that come with XPPAUT, and F1 opens the manual and its tutorial.
Python
The same engine, with AUTO, from Python 3.9 or newer on any of the three systems:
pip install xpplab==0.1.2
Then see the Python guide.
What's inside
- XPPAUT 8.0's own engine. Every example model gives the same output as unmodified XPPAUT, digit for digit. The only changes fix genuine bugs, listed in upstream-issues.
- Phase plane:
- nullclines and the direction field;
- equilibria by stability, and the manifolds of saddles;
- click-to-start trajectories.
- Bifurcations: AUTO without the dialogs. A table of special points, and for each one the continuations that make sense.
- Workspace: a slider for every parameter, with live re-simulation, plus parameter sweeps, Range, and boundary-value problems.
- 3D view and the Animator: XPPAUT's
.anifiles, played over the run. - Analysis:
- phase response curves and the H function;
- spectra, histograms, correlations and the Liapunov exponent;
- fitting to data.
- Editor, command window and figure export. The editor's errors point at the line, and the command window takes XPPAUT's two-key commands, and Python. Figures export as PNG and SVG, data as CSV.
- Everything as Python. Each action in the app is also a line of Python, and a session saves as a script that repeats it.
Found a problem, or a model that works in XPPAUT but not here? Please open an issue.
XPP Lab is free software under the GPL. It is an independent rebuild of G. Bard Ermentrout's XPPAUT, and is not endorsed by him; see THIRD-PARTY-NOTICES.md for the work of others that it contains.
Checksums (SHA-256)
cbe3e98632cca7caf47699d15b4654ef3ede87bdbb3dacd63720db75139d8771 XPPLab-Linux-x86_64.tar.gz
5ecb9e41e0a3c7bbfa220bfc4f234f14d67d68cafe650063f6b2b109a963662c XPPLab-Windows-x64.zip
879005302d6603b92e074e716723712a079749f48539c3606fa8ee0fe1177314 XPPLab-macOS.dmg
52df4c0a828d98d9fa746fbba84f9b3996e2068040726b0e8d18b4e84b4b21b1 xpplab-0.1.2-py3-none-macosx_10_13_universal2.whl
e4a4631714563650dbd541a4beb3a7f4b9c3f7c2129cb1c2c2afc8ad527945c2 xpplab-0.1.2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
99f44379d309851912df302fd48d88ce6b78ba230d052d6fed3f8834128717eb xpplab-0.1.2-py3-none-win_amd64.whl
What's Changed
- Add a field tutorial: why does a neuron fire? by @limit-cyclist in #24
- AUTO: no spurious limit and branch points on the homoclinic tail of a periodic branch by @CesarPerdomoDiaz in #27
- Docs: working with the maintainer agent by @CesarPerdomoDiaz in #29
- Kinescope: capture figures, play them back, animated GIF, film the Range by @CesarPerdomoDiaz in #19
- Rich HTML display (repr_html) for Model, runs, equilibria and AUTO diagrams by @limit-cyclist in #25
- xpplab-batch: XPPAUT's -silent mode and the app's commands without a window by @CesarPerdomoDiaz in #30
- Ensemble statistics over noisy runs (XPPAUT's stocHastic > Compute) by @CesarPerdomoDiaz in #35
- Plots keep the user's zoom until a double-click or Fit by @CesarPerdomoDiaz in #26
- Drive the running app from Python: a local channel and xpplab.app by @CesarPerdomoDiaz in #32
- Agents work in the researcher's open app: MCP tools through the channel by @CesarPerdomoDiaz in #33
- A Python console in the command window, run in a process of its own by @CesarPerdomoDiaz in #34
- The console fetches its own Python the first time it needs one by @CesarPerdomoDiaz in #36
- Test AUTO BVP and homoclinic starts; fix the homoclinic info box by @limit-cyclist in #28
- Linearise in the app: A, B, eigenvalues in the complex plane, controllability (M7) by @CesarPerdomoDiaz in #38
- Learn by example: field tutorials for neuroscience, ecology, chemistry and mechanics by @limit-cyclist in #39
- Version 0.1.2, and the release fetches the console's Python on each package by @CesarPerdomoDiaz in #40
Full Changelog: v0.1.1...v0.1.2
XPP Lab v0.1.1
XPP Lab 0.1.1: XPPAUT 8.0's engine, giving the same numbers as XPPAUT, with a desktop app for Windows, macOS and Linux and a Python package. It needs no X server, compiler or Terminal.
New in 0.1.1
- A new name: XPP Lab. Another project already goes by XPP Studio, so this one is now XPP Lab. The Python package is
xpplab(pip install xpplab,import xpplab), the MCP serverxpplab-mcp, and the appxpplab. The old repository address leads here. The app keeps the settings and window layout of 0.1.0; examples you edited and saved with 0.1.0 stay in Documents/XPP Studio. - AUTO no longer leaves a model broken. When a continuation failed, XPPAUT's AUTO interface left the parameter at AUTO's last trial value: NaN when it stopped with MX, or a value far outside the window after a jump. Every later run of the model was then wrong. Running AUTO on every example model found this in 39 of them,
coaster2Damong them (#8). The parameters now return to their values after every run. - A singular matrix ends only the continuation. In 7 example models AUTO meets a singular matrix and, as in XPPAUT, tries to end the program; the engine then stopped working until the model was loaded again. Now only the continuation stops, and the points computed so far stay in the diagram.
- The bifurcation plot fits its axes to the points inside the window AUTO was asked to cover, so one stray point no longer sets the scale.
Download and run
| Your computer | Download | The first time you open it |
|---|---|---|
| Windows 10 or 11, 64-bit | XPPLab-Windows-x64.zip | Unzip it anywhere and run xpplab.exe. If Windows says "Windows protected your PC", click More info, then Run anyway. |
| macOS 11 or later, Apple silicon or Intel | XPPLab-macOS.dmg | Open it and drag the app to Applications. On macOS 15 and later, open the app once, then click Open Anyway in System Settings > Privacy & Security. On macOS 14 and earlier, Control-click the app and choose Open. |
| Linux, x86-64 (built on Ubuntu 22.04) | XPPLab-Linux-x86_64.tar.gz | tar xzf XPPLab-Linux-x86_64.tar.gz, then run XPPLab-Linux-x86_64/xpplab. |
The warnings appear because the apps are not yet signed with a paid certificate. The checksums at the end let you check a download.
Try it: the Morris-Lecar model opens. Press Run, open the Phase Plane tab, tick Nullclines, then drag the iapp slider. The File menu opens the other 150 example models that come with XPPAUT, and F1 opens the manual and its tutorial.
Python
The same engine, with AUTO, from Python 3.9 or newer on any of the three systems:
pip install xpplab==0.1.1
Then see the Python guide.
What's inside
- XPPAUT 8.0's own engine. Every example model gives the same output as unmodified XPPAUT, digit for digit. The only changes fix genuine bugs, listed in upstream-issues.
- Phase plane:
- nullclines and the direction field;
- equilibria by stability, and the manifolds of saddles;
- click-to-start trajectories.
- Bifurcations: AUTO without the dialogs. A table of special points, and for each one the continuations that make sense.
- Workspace: a slider for every parameter, with live re-simulation, plus parameter sweeps, Range, and boundary-value problems.
- 3D view and the Animator: XPPAUT's
.anifiles, played over the run. - Analysis:
- phase response curves and the H function;
- spectra, histograms, correlations and the Liapunov exponent;
- fitting to data.
- Editor, command window and figure export. The editor's errors point at the line, and the command window takes XPPAUT's two-key commands. Figures export as PNG and SVG, data as CSV.
Found a problem, or a model that works in XPPAUT but not here? Please open an issue.
XPP Lab is free software under the GPL. It is an independent rebuild of G. Bard Ermentrout's XPPAUT, and is not endorsed by him; see THIRD-PARTY-NOTICES.md for the work of others that it contains.
Checksums (SHA-256)
99693a3cde15563e70692006ce47d400e2651f23883b309d80fb5857ae493fc2 XPPLab-Linux-x86_64.tar.gz
e57385135b0d8044eef5976775b4ba203890eee44804a0a7c147684420832ed8 XPPLab-Windows-x64.zip
3209ea1fd359e97a498a3153f421be00ff0814f5d44ca54c0f61a9e0ceb69e6c XPPLab-macOS.dmg
8021779e597103dff53a331f07ff217c6ac15c4666f6db5f5c8811f54fac8e93 xpplab-0.1.1-py3-none-macosx_10_13_universal2.whl
8d4b88e892fdac969036cdd1ba3f181b5b3c954cf0cd0f12947c3f3b97ec402a xpplab-0.1.1-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
4acd02e2ffb04ab94a4760940a0481396e977fdb53832b69f307456678c0aa35 xpplab-0.1.1-py3-none-win_amd64.whl
Full Changelog: v0.1.0...v0.1.1
XPP Studio v0.1.0
XPP Studio 0.1.0: XPPAUT 8.0's engine, giving the same numbers as XPPAUT, with a desktop app for Windows, macOS and Linux and a Python package. It needs no X server, compiler or Terminal.
Download and run
| Your computer | Download | The first time you open it |
|---|---|---|
| Windows 10 or 11, 64-bit | XPPStudio-Windows-x64.zip | Unzip it anywhere and run xppstudio.exe. If Windows says "Windows protected your PC", click More info, then Run anyway. |
| macOS 11 or later, Apple silicon or Intel | XPPStudio-macOS.dmg | Open it and drag the app to Applications. On macOS 15 and later, open the app once, then click Open Anyway in System Settings > Privacy & Security. On macOS 14 and earlier, Control-click the app and choose Open. |
| Linux, x86-64 (built on Ubuntu 22.04) | XPPStudio-Linux-x86_64.tar.gz | tar xzf XPPStudio-Linux-x86_64.tar.gz, then run XPPStudio-Linux-x86_64/xppstudio. |
The warnings appear because the apps are not yet signed with a paid certificate. The checksums at the end let you check a download.
Try it: the Morris-Lecar model opens. Press Run, open the Phase Plane tab, tick Nullclines, then drag the iapp slider. The File menu opens the other 150 example models that come with XPPAUT, and F1 opens the manual and its tutorial.
Python
The same engine, with AUTO, from Python 3.9 or newer on any of the three systems:
pip install xppstudio
Then see the Python guide.
What's inside
- XPPAUT 8.0's own engine. Every example model gives the same output as unmodified XPPAUT, digit for digit. The only changes fix genuine bugs, listed in upstream-issues.
- Phase plane:
- nullclines and the direction field;
- equilibria by stability, and the manifolds of saddles;
- click-to-start trajectories.
- Bifurcations: AUTO without the dialogs. A table of special points, and for each one the continuations that make sense.
- Workspace: a slider for every parameter, with live re-simulation, plus parameter sweeps, Range, and boundary-value problems.
- 3D view and the Animator: XPPAUT's
.anifiles, played over the run. - Analysis:
- phase response curves and the H function;
- spectra, histograms, correlations and the Liapunov exponent;
- fitting to data.
- Editor, command window and figure export. The editor's errors point at the line, and the command window takes XPPAUT's two-key commands. Figures export as PNG and SVG, data as CSV.
Found a problem, or a model that works in XPPAUT but not here? Please open an issue.
XPP Studio is free software under the GPL. It is an independent rebuild of G. Bard Ermentrout's XPPAUT, and is not endorsed by him; see THIRD-PARTY-NOTICES.md for the work of others that it contains.
Checksums (SHA-256)
77a83ac8576432d6c5e99ef9196b3bf6720974ed4f5fc7af6507acb5dd6e1009 XPPStudio-Linux-x86_64.tar.gz
18bc300f9425b54d022322465b8022cdac2f6e44848dcd11bff16b48b4e8132a XPPStudio-Windows-x64.zip
ffe08c95e659270b32888d495b7622a263cd45ff5ab9da76f947712209b41f00 XPPStudio-macOS.dmg
d75b5dc29b828e88f04d338cfcf60bdcc113123fb28e4fc671cfe5fc0d25e834 xppstudio-0.1.0-py3-none-macosx_10_13_universal2.whl
204850c9da2e04aafded240af08c9f33019e9a7ce5c7410b0ec0145abcd9252d xppstudio-0.1.0-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
55514df22267810111f056ca6c47a41f8e49a47e7b6039c84ed46f38410e39e0 xppstudio-0.1.0-py3-none-win_amd64.whl
Full Changelog: https://github.com/CesarPerdomoDiaz/xppstudio/commits/v0.1.0