A neural model for V1 that incorporates dendritic nonlinearities and back-propagating action potentials
The repository includes code that runs the simulations that reproduce the figures in Rentzeperis, Ilias, Dario Prandi, and Marcelo Bertalmío. "A neural model for v1 that incorporates dendritic nonlinearities and back-propagating action potentials." Journal of Neuroscience (2025).
We propose a model for V1 cells that can be considered an extension of the point neuron model, where in addition to a term corresponding to linear integration of inputs, as in the standard model, there are also two other terms corresponding to different types of dendritic nonlinearities, both including backpropagating action potentials (bAPs).
Our model equation of the membrane potential
where
The first term in the equation represents the filtering operation performed by linear dendrites,
The second term represents the contribution of dendrites producing the XOR operation. When dendrites
of this type receive inputs from two pathways, they produce a high response only when one of these
pathways is active, i.e. the dendrites act as an XOR logical gate. In this term,
The third term includes lateral interactions between cortical units within a nonlinearity,
Figure 1. Schematic of a neuron and the different ways of integrating the input modelled here
We create a virtual environment withconda. Other virtual environments will do as well.
- From the root directory, create a conda virtual environment (named neuronmodel here):
conda create -n neuronmodel - Activate the environment:
conda activate neuronmodel - Install pip:
conda install pip - Install the dependencies with pip:
pip install -r requirements.txt - Deactivate the virtual environment so that you use your base environment
conda deactivate - From your base environment create a jupyter kernel named after your virtual environment (you need to have ipykernel and jupyter installed before):
python -m ipykernel install --user --name neuronmodel
Each Jupyter notebook is associated with a separate experiment in the study that runs the model for the specific conditions saves the necessary variables, and subsequently loads them, and performs the necessary analysis to produce the associated Figures. There is an additional jupyter notebook, SpatialReceptiveField.ipynb that reproduces the figures related to the estimation of the receptive field from the model. Note that in certain cases, because of the random seeds, the Figures may slightly deviate from the ones shown in the paper, but the trend is the same.
Note that before running each jupyter notebook, you select from a dropdown the kernel associated with the virtual environment, neuronmodel if you named it such.
Around 70 MB are needed for the reproduction of all the Figures, main and supplementary.

