PyData Global 2025

Time series analysis for coupled neurons.
2025-12-10 , General Track

The complex nervous system provides a repertoire of evolutionary properties like neuron spiking, bursting, and chaos that are yet to be fully understood. One approach is to tackle these time-dependent properties using the technique of "dynamical systems”, such as ordinary differential equations. Since the popular work by Hodgkin and Huxley, many dynamical systems models of neurons have been proposed, of which FitzHugh–Nagumo and Morris–Lecar models draw special attention. The nervous system is made of a network of neurons, possessing a complex structural and functional topology. This topology is a function of different parameters, among which the coupling strength plays a major role. Our focus would be to systematically study the effect of various coupling strategies on the firing patterns exhibited by a collection of neurons. In this workshop, my goal is to popularize a reduced-order model of neuron dynamics known as the “denatured Morris–Lecar” system and to teach how Python can be efficiently used to perform research on time series analysis of coupled neurons.


This is a tutorial on hands-on time series analysis of coupled neuron models. We will build mathematical models of coupled neurons, and then utilize tools from nonlinear dynamics to analyze simulated time series. We will discuss various empirically informed coupling strategies and statistically efficient time series measures. This workshop is 100% Jupyter notebook and will have room to openly brainstorm ideas to extend and improve the studies. Let’s unravel some complex dynamics together!

The pipeline of this tutorial will be the following:
(i) Start by building a coupled neuron system based on different coupling strategies,
(ii) Simulate the system and generate time series data,
(iii) Perform time series analysis by computing various metrics from the nonlinear dynamics literature,
(iv) Finally, discuss what these metrics tell us about the temporal behavior of neurons.

Coupling strategies we are going to look at:
(i) Gap junction coupling
(ii) Chemical coupling
(iii) A hybrid coupling influenced by a superconductor model in physics
(iv) Electromagnetic coupling
(iv) Coupling, which is not pairwise but higher-order (A bit of background on graph theory is recommended)
(v) A random coupling strategy

We will implement the following methodologies/algorithms for time series analysis of coupled neuron models:
(i) Hurst exponent: measuring persistence of time series,
(ii) Sample entropy: measuring the complexity of time series,
(iii) 0–1 test: measuring chaos,
(iv) Kuramoto order-parameter: measuring synchrony between the neurons.

This tutorial is 100% Python. And I will be utilizing Jupyter Notebooks to deliver the workshop. Packages that need to be downloaded beforehand are:
(i) matplotlib for plotting,
(ii) numpy and scipy for scientific computations,
(iii) nolds for nonlinear measure for dynamical systems,
(iv) pandas for data handling.

The audience would find this interesting because it would be a hands-on introduction to how the mechanisms of neurons can be explored using different tools from the nonlinear dynamics literature. Mathematically modelling the dynamics of neurons has attracted several researchers in recent years because of the popularity of artificial intelligence. This field of neuron dynamics is booming, and delivering this workshop would be timely. I would also ensure to leave some room for brainstorming further ideas with the audience and how this study could be potentially extended and improved, thus an interactive session.

The goal is to attract applied mathematicians, computer scientists, data scientists, engineers, and statisticians alike and provide them with a battery of tools to add to their knowledge base. The audience would then be able to apply these tools in domains other than neurodynamics, for example, climate, finance, or social science. The only technical background I would expect from the audience is familiarity with matplotlib, numpy and pandas, and some basic statistics (regression, correlation coefficient), linear algebra (matrix operations), and graphs (as in networks). After the tutorial, the audience will leave with a newly built insight into the mathematical modeling of neuron dynamics.

Here is the breakdown of the tutorial:

0–15 mins: Introduction to neurons as dynamical systems and why we care about their behavior over time. We will talk about a single neuron's behavior and the selection of a mathematical model. We will also talk about the bursting phenomenon in neurons.

15-30 mins: We will then mathematically model a coupled system of neurons. We will cover the topic of “small networks” of neurons and what they teach us about the bigger picture: a complex, connected nervous system.

30-45 mins: Next, we will introduce various empirically informed coupling mechanisms. We will talk about how these couplings incorporate different firing patterns in the coupled neurons, ranging from regular behavior to chaotic firing.

45-75 mins: Finally, I will introduce time series analysis of neuron data. We will then implement the algorithms mentioned above to realize different dynamical properties of the neurons.

75-90 mins: Open the room to QA and brainstorm further ideas to improve/extend the analysis of neuron-time series data.

Code repository: https://github.com/indrag49/TS-SlowFast-dML


Prior Knowledge Expected:

Yes

Indra is a postdoctoral fellow in applied mathematics at Massey University, New Zealand, working on all things "dynamical systems". He takes a computational approach to tackle complex problems, and his current research is focused on understanding collective behaviour exhibited by coupled neurons. He is an avid Python user and has been a speaker at multiple Python-related conferences before. More information can be found in his website: https://indrag49.github.io/.