Network Operation
Each time the step button is pressed in the network panel--the
network moves forward in time by one iteration; that is, it takes on a
new state as a result of its current state. This is known as updating the network. However, as
one might imagine, there are multiple ways to go about this given a
construct as complex as an artificial neural network. To this end,
Simbrain includes two built in update types: buffered (default) and
priority-based. For more advanced users Simbrain also includes the
option of creating custom update methods. At the network level update
rules can be changed by going to File > Network Preferences (or
"ctrl + ,"), and selecting the "logic" tab. From there the desired
update method for the network can be selected from a combo-box (see
below).

The differences in these update methods can sometimes be subtle and requires an understaning of how artificial neural networks are simulated on a serial machine (and specifically in simbrain). To this end: Artificial neural networks are essentially graphs, a collection of nodes connected by vertices (the vertices are neurons and the connections are synapses). The whole network has three lists: a list of nodes, a list of connections, and a list of networks ("subnetworks"). The connections have references to the source and target nodes they connect. When a network is updated the program goes through the list of neurons and calls an update function internal to each one, and similarly with the list of synapses. Before these values are actually changed they are stored as a buffer within each network component. In this way, an update method can be thought of as the specific way or order in which buffered values are transformed into actual values.
To reflect the fact that the network has been updated the "time" label is updated as well.
Buffered Update
Buffered update is the default update rule in Simbrain. For every component of the network, the new value at time t is calculated from the attribute values at t - 1 and stored in the buffer. No activation values are changed until every buffer as been calculated. Then all activations are updated simultaneously based on their buffer values.
Priority-Based Update
When using a priority based update, each node is assigned a priority value. The lower this value, the higher the node's priority. Based on this value all the network components are sorted into a queue. The program addresses the head of this queue first calling the component's update method and immediately setting its activation based on its buffer value before moving on to the next component in the queue. Components with the same priority are ordered arbitrarily in this queue.
For more advanced users the option exists to create a custom update rule. Specifying a custom update rule is not availble in the GUI and must be instantiated and defined either within a script (see scripting) or by editing the Simbrain source code.