Neuron

Version 57.1 by abonard on 2025/04/10 15:08

Beginner

A NEURON Programming Tutorial - part C

Level: beginner  Type: user documentation

After this tutorial, students will be able to replicate neurons using templates and connect these neurons together.

A NEURON Programming Tutorial - Part A

Level: beginner  Type: user documentation

After this tutorial, students will be able to know how to create a single compartment neuron model with Hodgkin-Huxley conductances, how to run the simulator and how to display the simulation results

A NEURON Programming Tutorial - Part B

Level: beginner  Type: user documentation

After this tutorial, students will be able to work with more advanced topics of building multi-compartmental neurons and using different types of graphs to display the results

A NEURON Programming Tutorial - Part D

Level: beginner  Type: user documentation

After this tutorial, students will be able to add new membrane mechanisms to the simulator and incorporate them in our neurons.

Construction and Use of Models: Part 1. Elementary tools

Level: beginner  Type: user documentation

A good beginner's tutorial to get an introduction to some of NEURON's basic GUI tools.

A NEURON Programming Tutorial - Introduction

Level: beginner  Type: user documentation

This is a web based tutorial in the NEURON Simulation package. It will hopefully take you step by step, through the process of creating a complex simulation of a small network of neurons.
Starting by creating a single compartment neuron model with Hodgkin-Huxley conductances, how to run the simulator and how to display the simulation results, building multi-compartmental neurons, using different types of graphs to display the results, how to replicate neurons using templates, add new membrane mechanisms to the simulator and incorporate them into our neurons, increasing simulation speed and ways of getting data out of NEURON.

Outline of "Construction and Use of Models: Part 1. Elementary tools"

Level: beginner  Type: interactive tutorial

In this beginner tutorial you will learn how to make a simple model using hoc and how to use NEURON's graphical tools to create an interface for running simulations and to modify the model itself.

The hoc programming language

Level: beginner  Type: slide deck

Slides from a presentation on hoc syntax. Clear and concise. Includes an example of program analysis (walkthrough of code for a model cell generated by the CellBuilder).

A NEURON Programming Tutorial - Part E

Level: beginner  Type: user documentation

After this tutorial, students will be able to save data from the simulations and methods for increasing simulation speed.

Advanced

Reaction-Diffusion – Radial Diffusion

Level: advanced  Type: -

Using NEURON Radial diffusion can be implemented in rxd using multicompartment reactions. By creating a series of shells and borders with reactions between them dependent the diffusion coefficient.

Reaction-Diffusion Example – Calcium Wave

Level: advanced  Type: interactive tutorial

The model presented in this tutorial generates Ca2+ waves and is a simplification of the model we used in Neymotin et al., 2015.

Reaction-Diffusion – 3D/Hybrid Intracellular Tutorial

Level: advanced  Type: interactive tutorial

This tutorial provides an overview of how to set up a simple travelling wave in both cases.

Reaction-Diffusion – Initialization strategies

Level: advanced  Type: interactive tutorial

In this tutorial you will learn how to implement cell signalling function in the reaction-diffusion system by characterising your problems by the answers to three questions: (1) Where do the dynamics occur, (2) Who are the actors, and (3) How do they interact?

Ball and Stick model part 3

Level: advanced  Type: user documentation

Using the CellBuilder – Introduction

Level: advanced  Type: interactive tutorial

The following tutorials show how to use the CellBuilder, a powerful and convenient tool for constructing and managing models of individual neurons. It breaks the job of model specification into a sequence of tasks:

  1. Setting up model topology (branching pattern).
    2. Grouping sections with shared properties into subsets.
    3. Assigning geometric properties (length, diameter) to subsets or individual sections, and specifying a discretization strategy (i.e. how to set nseg).
    4. Assigning biophysical properties (Ra, cm, ion channels, buffers, pumps, etc.) to subsets or individual sections.

Using Import3D – Exploring morphometric data and fixing problems

Level: advanced  Type: user documentation

Import3D tool can be used to translate common varieties of cellular morphometric data into a CellBuilder that specifies the anatomical properties of a model neuron. This Tutorial will guide you through how to fix problems in your morphometric data.

Randomness in NEURON models– The solution

Level: advanced  Type: user documentation

In this part of the tutorial we will show you how to give NetStim its own random number generator.

Segmentation intro: Dealing with simulations that generate a lot of data

Level: advanced  Type: user documentation

How to deal with simulations that generate a lot of data that must be saved? We will showcase different approaches.

Using the Channel Builder – Creating a channel from an HH-style specification

Level: advanced  Type: interactive tutorial

Our goal is to implement a new voltage-gated macroscopic current whose properties are described by HH-style equations.

Using the Channel Builder – Creating a channel from a kinetic scheme specification

Level: advanced  Type: interactive tutorial

Here we will implement a new voltage-gated macroscopic current whose properties are described by a family of chemical reactions.

Randomness in NEURON models– Source code that demonstrates the solution

Level: advanced  Type: user documentation

Using the Network Builder – Introduction to Network Construction

Level: advanced  Type: user documentation

Python introduction

Level: advanced  Type: user documentation

This page provides a brief introduction to Python syntax, Variables, Lists and Dicts, For loops and iterators, Functions, Classes, Importing modules, Writing and reading files with Pickling.

Reaction-Diffusion Example – RxD with MOD files

Level: advanced  Type: user documentation

NEURON's reaction-diffusion infrastructure can be used to readily allow intracellular concentrations to respond to currents generated in MOD files. This example shows you a simple model with just a single point soma, of length and diameter 10 microns, with Hodgkin-Huxley kinetics, and dynamic sodium (declared using rxd but without any additional kinetics).

Segmenting a simulation of a model network - Introduction

Level: advanced  Type: user documentation

Using the Network Builder – Tutorial 1: Making Networks of Artificial Neurons

Level: advanced  Type: interactive tutorial

Learn how to Artificial Integrate and Fire cell with a synapse that is driven by an afferent burst of spikes.

Reaction-Diffusion Example – Restricting a reaction to part of a region

Level: advanced  Type: user documentation

Implementation example for the restriction of the reaction to part of a region.

Segmenting a simulation of a model cell - Introduction

Level: advanced  Type: user documentation

Scripting NEURON basics

Level: advanced  Type: user documentation

The objectives of this part of the tutorial are to get familiar with basic operations of NEURON using Python. In this worksheet we will: Create a passive cell membrane in NEURON. Create a synaptic stimulus onto the neuron. Modify parameters of the membrane and stimulus. Visualize results with bokeh.

Reaction-Diffusion – Thresholds

Level: advanced  Type: interactive tutorial

Learn how to scale reaction rates by a function of the form f(x) for suitably chosen a and m to approximately threshold them by a concentration.

Randomness in NEURON models

Level: advanced  Type: user documentation

We will touch upon the following subjects in this tutorial:
How to create model specification code that employs randomization to avoid undesired correlations between parameters, and to produce a model cell or network that has the same architecture and biophysical properties, and generates the same simulation results regardless of whether it is run on serial or parallel hardware.
How to generate spike streams or other signals that fluctuate in ways that are statistically independent of each other.

Using the CellBuilder– Specifying parameterized variation of biophysical properties

Level: advanced  Type: interactive tutorial

How to make one or more biophysical properties vary systematically with position in space.

Using Import3D – An introduction

Level: advanced  Type: user documentation

Import3D tool can be used to translate common varieties of cellular morphometric data into a CellBuilder that specifies the anatomical properties of a model neuron. This Tutorial will guide you in reading a morphometric data file and converting it to a NEURON model as well as
exploring morphometric data and fixing problems.

Segmenting a simulation of a model network – 1. Implement and test the computational model itself

Level: advanced  Type: user documentation

Segmenting a simulation of a model network – 2. Run a "complete" simulation and save its results

Level: advanced  Type: user documentation

Segmenting a simulation of a model cell – 2. Run a "complete" simulation and save its results

Level: advanced  Type: user documentation

Segmenting a simulation of a model cell – 1. Implement and test the computational model itself

Level: advanced  Type: user documentation

Using NEURON's Optimization Tools – Tutorial 2 : Fitting a model to data

Level: advanced  Type: user documentation

We will go over how to create an "unoptimized" model, set up a current clamp experiment on this model, configure a MultipleRunFitter to do a "run fitness" optimization, load the Experimental Data into the iclamp Run Fitness Generator, specify the parameters that will be adjusted and finally perform the optimization.

Reaction-Diffusion – Hodgkin-Huxley using rxd

Level: advanced  Type: interactive tutorial

In this tutorial you will learn how to set the proper parameters for the Hodgkin–Huxley model in NEURON.

Using the CellBuilder – Creating a stylised ("stick-figure") model cell

Level: advanced  Type: -

Learn how to build an extremely simplified model of a pyramidal cell.

Ball and Stick model part 2

Level: advanced  Type: user documentation

Reaction-Diffusion Example – Circadian rhythm

Level: advanced  Type: user documentation

Here we develop a NEURON implementation of the Leloup-Goldbeter model for circadian rhythms in Drosophila.  In this example NEURON's h library and its standard run system are being used as well as matplotlib to plot concentrations of circadian proteins over time.

Segmenting a simulation of a model cell – 3. Run a segmented simulation and save its results

Level: advanced  Type: user documentation

ModelView: Compact display of parameters for NEURON models.

Level: advanced  Type: user documentation

This example demonstrates how ModelView can explore a NEURON model.

Segmenting a simulation of a model network – 3. Run a segmented simulation and save its results

Level: advanced  Type: user documentation

Segmenting a simulation of a model network – 4. Reconstitute and verify the "complete" simulation results

Level: advanced  Type: user documentation

Using NEURON's Optimization Tools – Tutorial 1 : Fitting a function to data

Level: advanced  Type: user documentation

We will look into how to bring up a Multiple Run Fitter, load the Experimental Data into the Multiple Run Fitter, specify the function we want to optimize, specify the parameters that will be adjusted, specify the criteria we want the function to satisfy and finally perform the optimization.

Ball and Stick model part 4

Level: advanced  Type: user documentation

Reaction-Diffusion

Level: advanced  Type: interactive tutorial

In this tutorial you will learn how to implement cell signalling function in the reaction-diffusion system by characterising your problems by the answers to three questions: (1) Where do the dynamics occur, (2) Who are the actors, and (3) How do they interact?

Creating a stylized ("stick figure") model cell

Level: advanced  Type: user documentation

Our goal in this tutorial is to build an extremely simplified model of a pyramidal cell using the CellBuilder, a powerful and convenient tool for constructing and managing models of individual neurons. We will be looking into setting up model topology, grouping sections with shared properties into subsets, assigning geometric properties to subsets or individual sections, and specifying a discretization strategy, as well as assigning biophysical properties to subsets or individual sections. 

Randomness in NEURON models– Source code that demonstrates the problem

Level: advanced  Type: user documentation

The tutorial will show you how to declare important constants (model parameters and simulation parameters), load files that other stuff will depend on, create the model itself (just a collection of cells that spike at random times), specify instrumentation (in this case, recording of spike times), specify simulation control and execute one or more simulations with various model parameters in the source code.

Using the Channel Builder – Creating a model of stochastic channel gating

Level: advanced  Type: interactive tutorial

Given a Channel Builder that implements a deterministic channel specified by a kinetic scheme, we create a new one that implements stochastic gating.

Randomness in NEURON models - How to generate independent random spike streams

Level: advanced  Type: user documentation

Learn how to generate random spike streams with the use of NetStim.

Using Import3D – Reading a morphometric data file and converting it to a NEURON model

Level: advanced  Type: user documentation

Import3D tool can be used to translate common varieties of cellular morphometric data into a CellBuilder that specifies the anatomical properties of a model neuron. This Tutorial will guide you through bringing up an Import3d tool, then specifying  a file to be read and finally export the data as a NEURON model.

Reaction-Diffusion – Varying initial concentrations and parameters

Level: advanced  Type: interactive tutorial

This tutorial will show you how to manipulate the rxd.Species attribute to see how the choice of initial conditions affects the dynamics.