Status: Beta Version (v0.9.4)
Interactive Python simulator for a modified Morris-Lecar model (Na/K-based), with phase-plane and time-series visualisation.
Clone the repository:
git clone https://github.com/LucaRoR/neuron-ml-simulator.git
cd neuron-ml-simulatorInstall dependencies:
python3 -m pip install -r requirements.txtFrom the repository root:
python3 main.py-
PyQt6 GUI:
- Phase plane (vector field, nullclines, equilibria, bifurcations, separatrix)
- Time series (voltage, recovery variable)
- Parameter controls
-
Model:
- ML equations
- Numerical simulation (SciPy
solve_ivp) - Nullclines, equilibria, and basic bifurcation utilities
neuron-ml-simulator/
├── main.py
├── README.md
├── requirements.txt
├── LICENSE
├── Paper/
│ └── A Dynamical Systems View of a Neuron.pdf
└── ml_app/
├── __init__.py
├── config.py
├── model/
│ ├── __init__.py
│ ├── analysis_engine.py
│ ├── parameters.py
│ ├── ml_equations.py
│ ├── simulation.py
│ ├── nullclines.py
│ ├── equilibria.py
│ ├── bifurcations.py
│ ├── limit_cycle.py
│ └── separatrix.py
├── gui/
│ ├── __init__.py
│ ├── main_window.py
│ ├── controls_panel.py
│ ├── phaseplane_canvas.py
│ ├── math_inspector_window.py
│ ├── equilibria_table_model.py
│ ├── timeseries_canvas.py
│ ├── assets/
│ │ ├── mathjax/
│ │ │ ├── es5/
│ └── tables/
│ │ ├── __init__.py
│ │ └── equilibria_table.py
├── resources/
│ ├── __init__.py
│ ├── styles.qss
│ └── icons/
│ │ └── app_icon.svg
This project is inspired by classical Hodgkin–Huxley and Morris–Lecar neuron models, but all code and the current implementation were independently written.