|
|||||||||||
Subsections Making synaptic connectionsNow we want to set up synaptic connections between the neurons in the individual pools. This is done by commands of the form >> [nmc,c_idx] = add(nmc,'conn','dest',<destination>,'src',<source>,...);where <destination> and <source> specify a set of
neurons either by the handle/index of a pool or by specifying a
volume.
Connecting the inputTo see how it works lets start by connecting the spiking inputs to the pool of LifNeurons: >> [nmc,c(1)]=add(nmc,'conn','dest',p_lif,'src',p_sin,... 'Cscale',1,'Wscale',5);Here we used the pool handles/indices as source and destination specification. The additional parameters given specify how to scale the overall connection probability (Cscale) and the synaptic strength (Wscale). To see the actual connectivity pattern generated you can again use the command plot(nmc); and interaktively explore the network structure. By clicking on a neuron you can look at presynaptic as well as postsynaptic connections. Figure shows how the input neurons are connected at the moment. As the next step we connect the spiking input via static synapses (default are dynamic synapses to some subset of the pool of sigmoidal neurons by specifying a certain volume >> [nmc,c(2)]=add(nmc,'conn','dest',[6 1 1; 6 3 6],'src',p_sin,... 'type','StaticSpikingSynapse','Cscale',Inf);The synaptic connection created by this command are shown in Figure . Note that the setting 'Cscale',Inf ensures that there will be a synaptic connection between each pair of neurons in the source region and the destination region. And finaly we connect the analog input to the pool of HHNeurons by means of a StaticAnalogSynapse. This is necessary since StaticSpikingSynapses can not transmit analog signals. >> [nmc,c(3)]=add(nmc,'conn','dest',p_hh,'src',p_ain,... 'type','StaticAnalogSynapse','Wscale',0.2);
Making recurrent connectionsNow we want to create recurrent connections with the pools themselves. The only differene to the previous section is that now the source and destination is the same pool:
>> [nmc,c(4)]=add(nmc,'conn','dest',p_lif,'src',p_lif,... 'SH_W',0.5,'lambda',2.5,'Wscale',2); >> [nmc,c(5)]=add(nmc,'conn','dest',p_sig,'src',p_sig,... 'SH_W',0.5,'lambda',2,'type','StaticAnalogSynapse'); >> [nmc,c(7)]=add(nmc,'conn','dest',p_hh,'src',p_hh,... 'SH_W',0.5,'lambda',1); Again one can specify in addition to the destination and the source other parameters which determine how individual synaptic connections are created. For example the parameter lambda determines the ``average distance'' of synaptic connections and SH_W determines the standard deviation SD of the Gamma distribution used to generate the synaptic weights: . Figure shows a typical postsynaptic connectivity pattern for one neuron generated by the code above.
Connecting poolsIn this example we connect the pool of HHneurons to the LifNeuron pool by static synapses. >> [nmc,c(6)]=add(nmc,'conn','dest',p_hh,'src',p_lif,... 'SH_W',0.5,'lambda',Inf,'type','StaticSpikingSynapse'); Note that using lambda=Inf has the effect that the distance between the neurons dose not matter in determining wheter a synaptic connection will by generated or not.
| |||||||||||
(C) 2003, Thomas Natschläger | last modified 06/12/2006 |