Document Actions


The nervous system is composed of neurons connected by synapses that form networks. Neurons receive input and generate output that propagates through the network. Neural networks carry out signal processing. Information flows through the nervous system starting from sensory input or originating from internal neural activity.

To better elucidate the biophysical processes underlying neuronal signaling it is useful to develop mathematical models that describe neuronal behavior and use computers to simulate model systems. With computer simulations it is possible to carry out experiments that are not possible otherwise. Modeling also provides a means of organizing in a coherent manner the vast amount of data collected from experiments and may lead to new hypotheses and experiments.

SNNAP is a tool for developing and simulating models of neurons and neural networks. The use of SNNAP does not require any programming knowledge. A graphical user interface (GUI) provides users with editors to build models, run simulations and visualize results. SNNAP allows users to simulate many features of neuronal function, including ionic currents and their modulation by intracellular ions and/or second messengers, and synaptic transmission and synaptic plasticity. SNNAP is written in Java and runs on most computers.

Several examples are provided to illustrate the capabilities of SNNAP and the ways in which this tool may be used to model neural processes and simulate network behavior. The Hodgkin-Huxley (HH) model describes the flux of sodium, potassium, and leak ions through the cell membrane to produce an action potential. This model is the fundamental building block of most biophysical models of neurons developed today. Students can simulate the HH model and examine various fundamental concepts such as the nonlinear dynamics that lead to the threshold phenomenon. Building small neural networks with HH models provides the student with the opportunity to examine various synaptic models. Various forms of synaptic plasticity, e.g., facilitation and depression, can be modeled with SNNAP. Two examples are shown with mathematical functions for facilitation and depression as well as modulation by intracellular ions. A particular area of research in neuroscience is the role of vesicle pools in synaptic depression. A model providing access to vesicle pools and receptor models allows the student to examine the dynamics of vesicle pools and the role of intracellular calcium. Lastly, a network model of the Aplysia feeding circuit is presented which combines multiple types of neuron models, using various synaptic connections, e.g., electrical, excitatory and inhibitory.

Each example described in the paper is illustrated with computer simulations using code that is provided either with the SNNAP download or through the model database site ModelDB ( ). Also, each simulation example is accompanied by a task proposed for further investigation of the neuroscience subject by students and as a hands-on practice to familiarize them with SNNAP.

SNNAP Online

The neurosimulator SNNAP ( Baxter and Byrne 2007 ; Ziv et al. 1994 ) can be found online at (see Fig. 1). The site provides downloads with the latest version including over 100 examples and a Tutorial Manual.

Figure 1: SNNAP website main page.


Hodgkin-Huxley Model Simulation

The study of neural activity is based primarily on the research of Alan L. Hodgkin and Andrew Huxley, who received the 1963 Nobel Prize in Physiology or Medicine for their work. Hodgkin and Huxley showed that sodium and potassium ions traverse the cell membrane to bring about the electric signal, action potential, that propagates through the neuron. The Hodgkin-Huxley model (HH model, Hodgkin and Huxley 1952 ) consists of four nonlinear ordinary differential equations (ODEs) that describe the flux of sodium and potassium ions through the cell membrane. The model describes the change of membrane potential (V) with respect to time (i.e., dV/dt). Three ODEs describe the activation (m and n) and inactivation (h) variables of the sodium and potassium channels. The Hodgkin-Huxley (HH) model is described in the SNNAP tutorial and in ( Av-Ron et al. 2006 ), which illustrate how to develop models with SNNAP. The SNNAP implementation of the HH model is also provided as part of the tutorial download.

The HH model was developed to describe the propagation of an action potential in a nerve cell. This model exhibits nonlinear dynamics such as oscillations and threshold phenomenon. The model has two possible states, a stable resting state at approximately -60 mV and a stable oscillatory state. Figure 2A illustrates the oscillations of the HH model at 86 Hz (red curve). The oscillatory state was achieved by reducing the maximal potassium conductance from the HH value of 36 mS/cm2 to 20 mS/cm2. This change in potassium conductance alters the dynamics of the model to exhibit a stable oscillatory behavior, as seen by the red curve in Fig. 2A. In mathematical terms, the stable oscillations is due to a stable limit cycle, seen on the (V,n) phase plane in Fig. 2B. The time course of Fig. 2A is overlayed on the (V,n) phase plane in Fig. 2B. The model system is actually bistable, with both a stable steady state point (SSP), i.e., the resting potential, and a stable limit cycle, i.e., the oscillatory behavior (see Av-Ron et. al. 1991 for discussion). The stable SSP is surrounded by a small basin of attraction, delineated by the blue curve in Fig. 2B. The boundary of the basin of attraction represents the threshold of the model. Starting the system with an initial condition within the basin of attraction will lead to the stable resting potential, at (V,n) = ( 57.3, 0.36) on the V-n phase plane, seen by the spiraling trajectory in Fig. 2B. The two time courses differ in the initial condition. With membrane potential V = -62.06, the system goes to the stable SSP. With initial condition V = -62.07, the trajectory goes to the stable limit cycle. This difference in behavior is due to the nonlinearity of the model and the existence of two stable solutions, the stable SSP and stable limit cycle.

An important issue in studying neural activity is what affects the threshold of a nerve cell. Students can experiment with the HH model by altering various parameters to examine the change in threshold, e.g., by altering the intensity of stimulus current or the duration of stimulation. Students can also examine the dynamics of the HH model by using the intensity of the stimulus current as a bifurcation parameter to determine at what values of I the HH model exhibits bistability, and at what intensities only a single steady state exists, either a stable SSP or stable limit cycle. Although beyond the scope of the present article, other mathematical tools, such as AUTO ( Ermentrout 2002 ), allow the illustration of bifurcation diagrams, an important method to visualize system dynamics.

Figure 2: Hodgkin-Huxley model simulations. A. HH model membrane potential is plotted versus time and illustrates oscillations (red) and stable resting potential (blue) for two initial conditions, V = -62.07 and -62.06 respectively. B. Phase plane (V,n) of time course from A (blue time course was extended to 90 msec).

Network Model

Studying the biophysical mechanisms involved in the activity of a single neuron is fundamental to understanding neural behavior. Another branch of neuroscience research involves the study of neural network behavior. Neural activity results from the interaction of many neurons in a network. By linking several HH models with synaptic connections, students can form a neural network as illustrated in Fig. 4. The equation panel of Fig. 3 displays some of the equations that SNNAP provides to describe synaptic transfer functions. The equations vary from a single or dual exponential alpha functions, to both single and dual exponential second-order differential equations. Finally a driver function Xt is provided that may be used to indicate whether a presynaptic spike occurred (0 or 1) or may be used to simulate homosynaptic plasticity by linking the value of the Xt function to presynaptic activity or to the concentration of a specific modulator.

Figure 3: Window with choice of synaptic equations.

The SNNAP tutorial provides a chapter on building a network of HH neurons using single exponential alpha-functions for synaptic connections. Here we examined the behavior of the network when using a second-order synaptic transformation equation (i.e., the third equation in Fig. 3). Figure 4 illustrates the SNNAP network window, which displays a network of, three neurons connected in a ring. Neuron_1 has a synaptic connection to Neuron_2, Neuron_2 has a synaptic connection to Neuron_3, and Neuron_3 has a synaptic connection to Neuron_1. The response of the network is illustrated in Fig. 4B, with Neuron_1 stimulated by a brief current injection at time 0. The network oscillates because each neuron transmits a synaptic current to the adjacent neuron using the synaptic connection described by the third equation in Fig. 3. Figure 4B illustrates a neuronal network oscillation of 140 Hz. The time courses of the membrane potential of the three neurons are overlayed in Fig. 4B (top) and the synaptic current produced by Neuron_1 is displayed in Fig. 4B (bottom). This synaptic current causes Neuron_2 to fire an action potential. The frequency may vary from 60 Hz to 240 Hz, for different values of u (which determines the time course of the synaptic potential), from 0.00435 to 0.0001 respectively.

Neurons and neural networks exhibit many forms plasticity, which enable animals to adapt and learn. Two common types of homosynaptic plasticity are synaptic depression and facilitation. Repetitive presynaptic activity can cause a decrease (depression) or increase (facilitation) in amplitude of the postsynaptic potential (PSP). Students can incorporate homosynaptic plasticity by altering the function Xt and investigate how depression (or facilitation) affects the behavior of the network.

Figure 4: Network model consisting of three neurons. A. Network editor display. B. Simulaiton of network oscillations. Top: membrane potential (mV) of Neuron_1 (blue), Neuron_2 (red) and Neuron_3 (violet). Bottom: synaptic potential ( A/cm2) from Neuron_1 to Neuron_2. Time course is shown in seconds.

Ion Modulation

Another mechanism of plasticity in neural networks involves changes in ionic conductances due to the release of neuromodulators. Modulatory neurons can alter the behavior of other neurons by releasing modulators, which alter the properties of ionic conductances in the postsynaptic cell. SNNAP provides users with various means of simulating modulation of both ionic conductance and synaptic transmission. For example, activity in Cell_A can cause the accumulation of a second messenger in Cell_B, which in turn, can alter the ionic conductances and/or synaptic strength of Cell_B. The SNNAP Tutorial manual describes the role of intracellular Ca2+ in modulating the behavior of a bursting neuron through Ca2+-dependent K+ channels. Figure 5A illustrates an example of model neuron in which intracellular ion (Na) concentration modulates the amount of transmitter (5-HT) available for release from a neuron. This example is provided with the SNNAP download, as part of the example set. Two neurons are connected with chemical synapses that are modulated by the influx of Na+ ions that regulates the quantity of the transmitter 5-HT (i.e., serotonin).

Figure 5A illustrates the SNNAP neuron window, with the components that comprise the neuron, including three currents (marked by circles), sodium, potassium and leak, and a pool of sodium ions (marked by the word ion within square brackets) which interact with a pool of serotonin (marked by the word 5-HT within square brackets). The arrows in Fig. 5A designate relations between the components. The sodium channel provides ions to the ion pool, and the sodium ion pool regulates the pool of serotonin. The different elements and functions of the neuron are also displayed in the various panels of the Edit Neuron window: the three voltage-dependent conductances, 5-HT transmitter, sodium ion pool, sodium current to ion pool function and sodium ion pool to serotonin pool function. Figure 5B exhibits the time course of a simulation, showing neurons a (blue) and b (red), with the membrane potential, serotonin concentration and sodium ion concentration from top to bottom respectively. The network architecture consists of neuron a connecting to neuron b with an excitatory connection while neuron b has an inhibitory connection to neuron a. In the simulation, neuron a is stimulated with a constant current pulse which causes the neuron to fire continuously. The action potentials cause an increase in intracellular sodium ions, seen in the lower panel of Fig. 5B. The sodium ion pool is linked to the serotonin release, as sodium concentration increases, the quantity of serotonin release increases. The release of serotonin causes the slow depolarization of neuron b (red time course, Fig. 5B upper panel). Eventually neuron b fires which causes the inhibition of neuron a, for a brief period.

The input-output response of a neuron may be complex. The neurons displayed in Fig. 5B are not limited to a linear response as in Fig. 4B, but can display more complex behavior due to modulation by certain transmitters. Students can examine the input-output relation by altering various rates of ion flow and neurotransmitter release, the duration of firing of neurons a and b may be varied. Students can examine the robustness of the model, determine the range of parameter values for which the model exhibits oscillatory behavior and which parameters are most sensitive to perturbation.

Figure 5: Ion modulation example. A. Neuron editor displaying the ionic channels (K, Na, leak), ion pool ([Na] and a pool of transmitter available for release ([5HT].. B. Simulation of two cell network with Neuron_A (blue) and Neuron_B (red). In the network Neuron_A excites Neuron_B and Neuron_B inhibites Neuron_A. Several variables of the model were selected for display, including the membrane potential (top), concentration of 5HT (middle) and the concentration of Na (bottom). Beginning ~0.7 s into the simulation, a stimulus is applied to Neuron_A and the cell begin to spike. The infux of Na during the activity leads to increasing amounts of 5HT and thus facilitation of the PSP in Neuron_B. The facilitating PSP eventually elicit spike activity in Neuron_B, which in turn inhibites Neuron_A, causing a brief disruption on the spike activity in Neuron_A.

Vesicle Pool Dynamics

SNNAP includes equations that describe pools of vesicles, vesicle mobilization and release of transmitter from a presynaptic terminal ( Gingrich and Byrne 1985 ). A Markovian model of a an AMPA-type receptor was also added that describes transmitter binding to a postsynaptic receptor ( Jonas et al. 1993 ). The simulations illustrated in Fig. 6 have 10 repeated stimuli delivered at either 1 Hz (Fig. 6A) or 10 Hz (Fig. 6B). Depolarization of the presynaptic terminal leads to an influx of Ca2+ into the presynaptic terminal and the exocytosis of vesicles in the ready releasable pool (RRP). Transmitter in the synaptic cleft increases as vesicles exocytose. Vesicle mobilization from a reserve pool to the RRP is driven by intracellular Ca2+ concentration. The buildup of Ca2+ after each stimulus increases mobilization that replenishes vesicles in the RRP. On the postsynaptic membrane, transmitter binds to an AMPA receptor, and current flow into the postsynaptic terminal is a function of the number of open receptors and the conductance.

Figure 6: Simulation of vesicle pool model. Depicted are calcium concentration (blue), concentration of transmitter in the ready releasable pool occupation (red), postsynaptic current (black). A. 1Hz stimulation. B. 10Hz stimulation. Note different time scales of the two simulations.

Stimulation of this system at different frequencies can produce a variety of results. At 10 Hz (Fig. 6B), there is a greater buildup of intracellular Ca2+ and therefore more mobilization. However, there is also less time for mobilization to replenish the pool and thus greater depression of the PSP. At 1 Hz (Fig. 6A), there is less Ca2+ but more time for replenishment of vesicles into the RRP and thus less depression.

SNNAP provides model equations that can be used to develop receptor models (e.g., \snnap8_1\examples\GB10). Students can use this model as a basis to examine properties and dynamics of vesicle pools of various animals e.g., frog and rat, described in the literature (e.g., see Rizzoli and Betz 2005 ).

Central Pattern Generator

A central pattern generator (CPG) is a network of neurons that produces a rhythmic motor pattern that underlie repetitive movement such a breathing. CPGs have been studied by neuroscientists in an effort to elucidate neural function, interaction and modulation (see Abbott and Marder 1998 ). One well studied CPG is the feeding circuit of the mollusk Aplysia ( Elliott and Susswein 2002 ). Figure 7A presents a diagram of the feeding CPG. A SNNAP model for the feeding circuit CPG has been developed ( Cataldo et al. 2006 ). This CPG was modeled using SNNAP (Fig. 7b) and simulation results are shown in Fig. 8a. The SNNAP input files for this model (and several others) can be downloaded from the model database at .

Figure 7: Aplysia feeding circuit. A. Diagram of neurons grouped by their functional role in generating the neural output in Fig. 8. B. The network editor in SNNAP with its diagram of model.

The model of feeding CPG is comprised of 10 neurons. The different neurons play various roles in the feeding sequence of the animal. When feeding, the Aplysia extends a radula (a tongue-like structure) to grab food, e.g. sea weed, and then retracts the radula with food into its mouth. Various neurons play a role in this movement, as designated in Fig. 7A. Figure 7B illustrates an implementation of this network in SNNAP.

Figure 8A displays the firing pattern of five neurons (B31, B63 B35, B4, and B64) of the feeding network. It is clear that neurons B31, B63 and B35 fire in a synchronous manner. The wiring diagram (Fig. 7A) shows that the three neurons are electrically coupled and part of the protraction group.

One advantage of model circuits is the ability to carry out experiments and test various hypotheses. For example, it is simple to eliminate a neuron from the network and observe its effect on the network behavior. Figure 8B shows a simulation with neuron B35 disconnected from the network. The neuron received input but did not contribute any synaptic potential to any other cell. It is clear that neuron B35 contributes to the burst duration of the protraction neurons and its removal reduced the burst duration to 40% of the original (compare with Fig. 8A). When the excitatory connection between B35 and B31 was reduced to zero, the network behavior did not change, but when the electrical coupling between the two cells was eliminated, B35 did not fire, and the protraction group showed the behavior seen in Fig. 8B.

The network model described here is complex and difficult to understand in terms of the input-output relations between the various neurons. Students can examine the influence of various synaptic connections on network dynamics, propose hypotheses and carrying out simulations as virtual experiments.

Figure 8: Simulation of the Aplysia feeding model circuit. A. Simulation using default parameters. B. Simulation of circuit with neuron B35 elliminated.

Downloading and launching SNNAP

SNNAP is a Java application that will run on any machine that has a Java Runtime Environment (JRE) installed. You can check if your system has a JRE by opening the Command Prompt window and running java -version. The SNNAP download is a zipped folder that can be unzipped by Windows XP, Winzip application or Linux unzip command. The SNNAP folder contains two subfolders, Examples and Tutorial and two applications, SNNAPx.jar and CellMatrix.jar. Launch the SNNAP application by double-clicking the jar file or running java -jar SNNAPx.jar, where x stands for the version number, currently 8.1. The main SNNAP window provides buttons to the various editors and simulator windows, as seen in Fig. 9, that may be opened by clicking the appropriate button.

Figure 9. SNNAP application main menu.


Educators teaching neuroscience can benefit from the use of neurosimulators. Neuroscientists study the behavior of nerve cells and the information processing of neural circuits. Using mathematical models to describe biophysical processes, computers can be used to carry out simulations of models and visualization of results. Students using neurosimulators can study the behavior of cells and circuits by carrying out virtual experiments.

SNNAP is a neurosimulator that was designed for users who are non programmers who wish to develop models and run simulations. The graphical user interface (GUI) allows users to run simulations by clicking the appropriate buttons and menu items. SNNAP provides libraries of standard models for electrical activities of neurons and chemical interactions of receptors that students can combine to simulate neural processes and network circuits.

Several examples using SNNAP are provided in this paper ranging form single cell dynamics to networks and synaptic functions to vesicle dynamics modeling. The SNNAP neurosimulator can be downloaded with a Tutorial manual and code to simulate the HH model, an extended ( Rinzel and Ermentrout 1998 ) Morris-Lecar model ( Morris and Lecar 1981 ) that describes bursting behavior, and a network circuit of HH models. The SNNAP download also provides over 100 simulations illustrating the functionality of the neurosimulator from single cells to networks, including examples of biophysical mechanisms of neural modulation and plasticity. This rich suite of examples can form the basis of a virtual lab using SNNAP.


This work was supported by National Institutes of Health grants R01 RR11626 and P01 NS38310.


Abbott L, Marder E (1998). Modeling small networks. In: Methods in Neuronal Modeling: From Ions to Networks, 2nd edition (Koch C, Segev I, eds), pp 363-410. Cambridge, MA: The MIT Press.

Av-Ron E, Parnas H, Segel LA (1991). A minimal biophysical model for an excitable and oscillatory neuron. Biol. Cybern. 65: 487-500.

Av-Ron E, Byrne JH, Baxter DA (2006). Teaching basic principles of neuroscience with computer simulations. JUNE 4: A40-A52.

Baxter DA, Byrne JH (2007). Simulator for neural networks and action potentials: Description and application. In: Methods in Molecular Biology: Neuroinformatics (Crasto CJ, ed), pp 127-154, Totowa, NJ: Humana Press.

Cataldo E, Byrne JH and Baxter DA (2006). Computational model of a central pattern generator. Lec. Not. Comput. Sci. 4210: 242-256.

Elliott CJ, Susswein AJ (2002). Comparative neuroethology of feeding control in molluscs. J. Exp. Biol. 205, 877-896.

Gingrich KJ, Byrne JH (1985). Simulation of synaptic depression, posttetanic potentiation and presynaptic facilitation of synaptic potentials from sensory neurons mediating gill-withdrawal reflexes in Aplysia. J. Neurophysiol. 53, 652-669.

Ermentrout, B (2002). Simulating, Analyzing and Animating Dynamical Systems, pp161-194, Philadelphia, PA: SIAM.

Hodgkin AL, Huxley AF (1952). A quantitative description of membrane current and its application to conduction and excitation in nerve. J. Physiol. (Lond.) 117:500-544.

Jonas P, Major G, Sakmann B (1993). Quantal components of unitary EPSCs at the mossy fibre synapse on CA3 pyramidal cells of rat hippocampus. J. Physiol. (Lond.) 472: 615-63.

Morris C, Lecar H (1981). Voltage oscillations in the barnacle giant muscle fiber. Biophys. J 35:193-213.

Rinzel J, Ermentrout GB (1998). Analysis of neural excitability and oscillations. In: Methods in Neuronal Modeling: From Ions to Networks, 2nd edition (Koch C, Segev I, eds) pp 251-292. Cambridge, MA: The MIT Press.

Rizzoli AO, Betz WJ (2005). Synaptic vesicle pools. Nature Rev. Neurosci. 6:57-69.

Ziv I, Baxter DA and Byrne JH (1994). Simulator for neural networks and action potentials: description and application. J. Neurophysiol. 71: 294-308, 1994.


Any party may pass on this Work by electronic means and make it available for download under the terms and conditions of the Digital Peer Publishing License. The text of the license may be accessed and retrieved via Internet at