Free C++ source code for the firing rate neuron model is available.
Bistable neurons are similar to the flip-flop devices used in electronic circuitry for RAM memory. The brain does not use these types of neurons to store binary information. But they are a simple form of memory that is used in the brain. A bistable neuron has two stable states that it can switch between. Typically these states are quiescence and tonic bursting. It switches between the states when it receives a current stimulus that is sufficient to push it over into the new state. Just as in the pacemaker neuron, bistability arises through some complex dynamical interactions between the various currents that enter the cell. Understanding all of those dynamics is beyond the scope of this discussion and the the bistable neuron essentially abstracts away these complex dynamics. It does not use a complicated set of differential equations to produce its bistability. This has good points and bad points. On the plus side, it greatly reduces the complexity of the system and reduces what users need to understand in order to use it. Also, since we are not using sets of differential equations, but instead are using a simple algorithm, it means that this model can run much more quickly. On the minus side you are eliminating the rich detail that it is possible to get by using the differential equations to specify this type of behavior. But since the goal behind these neural models is to be as fast as possible while still retaining as many of the core biological concepts, using an algorithmic approach makes sense in this case. If you really want to be able to specify the indiviudal equations for each ion channel then you will need to wait until we add a new neural plug-in that allows you to do this, or add your own. We currently have plans to another plug-in that would allow you to do just that, but it is still a little ways off. The way this bistable model works is that if the membrane voltage of the neuron goes above the switch voltage threshold Vsth then the current Ih is injected into the cell. That current will remain on until the membrane voltage is brought back down below Vsth. When the voltage goes below the switch threshold Ih is turned off and the Il current is turned on instead. It is the users responsibility to make sure that the Ih current is sufficient to keep the membrane voltage above Vsth tonically. If this is not done then even though Ih is being injected into the cell the voltage will drop back below the switch threshold and the low current will switch on instead.
The bistable neuron has all of the properties associated with a regular neuron: Cm, Gm, Vth, Fmin, and Gain. For a description of them please see the text that discusses the normal neuron. The properties that are unique for the pacemaker are listed below with a description of each.
Figure 2 shows the output from a bistable neuron. At 2 seconds 3 na of current is injected into the neuron causing its membrane voltage to go above 10 mv. When this happens the Ih = 2 na current comes on and this keeps the membrane voltage above the switch threhsold. At 6 seconds a -3 na current is injected and this is enough to overcome the high current and pull the membrane voltage back down below the switch threshold. Ih shuts off and the low current of 0 na is turned on instead. At 8 seconds a 1 na current is injected. But this is not large enough to make the membrane voltage exceed the switch threhsold and does not trigger the high current to come on. The membrane voltage drains back down to its resting state. In this example we are using externally applied currents to switch the neuron between its two states, but in a real network it would be the synaptic current from another neuron in the network that would be performing this task.
Bistable neurons provide you with a simple form of binary memory for use in your neural circuits. These types of neurons are found in real living systems, but they are not used in the same way that electrical circuit designers use them to store binary numbers. One of the more basic functions that these neurons give you is a simple on/off form of memory. Has something happened or not? By connecting these these neurons to larger networks you can incorporate this type of memory into your neural designs.
This project was supported by: