source: project/release/4/9ML-toolkit/trunk/examples/Brunel00/Brunel_network_alpha.xml @ 30905

Last change on this file since 30905 was 30905, checked in by Ivan Raikov, 6 years ago

9ML-toolkit: a handful more fixes to multi synapse handling

File size: 10.7 KB
Line 
1<?xml version='1.0' encoding='UTF-8'?>
2<NineML xmlns="http://nineml.incf.org/9ML/0.3"
3    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4    xsi:schemaLocation="http://nineml.incf.org/9ML/0.3 ../NineML_v0.3.xsd"
5    name="Brunel (2000) Model A Network with alpha synapses">
6 
7  <Property><!-- Scales the size of the network (total 5*order neurons) -->
8    <label>order</label>
9    <value>2500</value>
10  </Property>
11
12  <Property><!-- Number of excitatory neurons -->
13    <label>Ne</label>
14    <value><MathInline>4 * order</MathInline></value>
15  </Property>
16
17  <Property><!-- Number of inhibitory neurons -->
18    <label>Ni</label>
19    <value><MathInline>1 * order</MathInline></value>
20  </Property>
21
22  <Property><!-- Connectivity probability -->
23    <label>epsilon</label>
24    <value>0.1</value>
25  </Property>
26
27  <Property><!-- Total number of excitatory synapses -->
28    <label>Ce</label>
29    <value><MathInline>epsilon * Ne</MathInline></value>
30  </Property>
31
32  <Property><!-- Total number of inhibitory synapses -->
33    <label>Ci</label>
34    <value><MathInline>epsilon * Ni</MathInline></value>
35  </Property>
36
37  <Property><!-- Total number of external synapses -->
38    <label>Cext</label>
39    <value><MathInline>Ce</MathInline></value>
40  </Property>
41
42  <Property><!-- Global delay for all neurons in the group -->
43    <label>delay</label>
44    <value>1.5</value>
45    <unit>ms</unit>
46  </Property>
47 
48  <Property> <!-- Synaptic weight -->
49    <label>J</label>
50    <value>0.1</value> 
51    <unit>mV</unit> 
52  </Property>
53
54  <Property> 
55    <label>J_max_unit</label>
56    <value><MathInline>1.209</MathInline></value>
57  </Property>
58
59  <Property> 
60    <label>g</label> <!-- Relative strength of inhibitory synapses -->
61    <value>3.0</value> 
62  </Property>
63
64  <Property> <!-- nu_ext / nu_thr -->
65    <label>eta</label>
66    <value>2.0</value> 
67  </Property>
68
69  <Property> <!-- Excitatory weights -->
70    <label>Je</label>
71    <value><MathInline>J / J_max_unit</MathInline></value> 
72  </Property>
73
74  <Property> <!-- Inhibitory weights -->
75   <label>Ji</label>
76    <value><MathInline>-g * Je</MathInline></value> 
77  </Property>
78
79  <Property> <!-- External weights -->
80    <label>Jext</label>
81    <value><MathInline>Je</MathInline></value> 
82  </Property>
83
84  <Property> <!-- Firing threshold -->
85    <label>theta</label>
86    <value>20.0</value>
87    <unit>mV</unit>
88  </Property>
89 
90  <Property><!-- Membrane time constant -->
91    <label>tau</label>
92    <value>20.0</value>
93    <unit>ms</unit>
94  </Property>
95
96  <Property><!-- Synapse time constant -->
97    <label>tau_syn</label>
98    <value>0.5</value>
99  </Property>
100
101  <Property> <!-- Threshold rate -->
102    <label>nu_thresh</label>
103    <value><MathInline>theta / (Je * Ce * tau * exp (1.0) * tau_syn)</MathInline></value> 
104  </Property>
105 
106  <Property><!-- External rate per synapse --> 
107    <label>nu_ext</label>
108    <value><MathInline>eta * nu_thresh</MathInline></value>
109  </Property>
110
111  <Property> <!-- Mean input spiking rate -->
112    <label>input_rate</label>
113    <value><MathInline>1000.0 * nu_ext</MathInline></value>
114    <unit>Hz</unit>
115  </Property>
116 
117  <Component name="E">
118
119    <Definition>
120      <link> BrunelIaF.xml </link>
121    </Definition>
122
123    <properties>
124
125      <Property>
126        <label>tau</label>
127        <value>20.0</value>
128      </Property>
129     
130      <Property>
131        <label>theta</label>
132        <value><MathInline>theta</MathInline></value>
133      </Property>
134
135      <Property>
136        <label>tau_rp</label>
137        <value>2.0</value>
138      </Property>
139     
140      <Property>
141        <label>Vreset</label>
142        <value>10.0</value>
143      </Property>
144     
145      <Property>
146        <label>R</label>
147        <value>1.0</value>
148      </Property>
149     
150      <Initial>
151        <label>Isyn</label>
152        <value>0.0</value>
153      </Initial>
154
155      <Initial>
156        <label>V</label>
157        <value><MathInline>randomUniform ()</MathInline></value>
158      </Initial>
159
160      <Initial>
161        <label>t_rpend</label>
162        <value>0.0</value>
163      </Initial>
164     
165      <Initial>
166        <label>spikeOutput</label>
167        <value>false</value>
168      </Initial>
169     
170      <Initial>
171        <label>refractoryEnd</label>
172        <value>false</value>
173      </Initial>
174
175    </properties>
176
177  </Component>
178
179  <Component name="I">
180
181    <Definition>
182      <link> BrunelIaF.xml </link>
183    </Definition>
184
185    <properties>
186
187      <Property>
188        <label>tau</label>
189        <value>20.0</value>
190      </Property>
191     
192      <Property>
193        <label>theta</label>
194        <value><MathInline>theta</MathInline></value>
195      </Property>
196
197      <Property>
198        <label>tau_rp</label>
199        <value>2.0</value>
200      </Property>
201     
202      <Property>
203        <label>Vreset</label>
204        <value>10.0</value>
205      </Property>
206
207      <Property>
208        <label>R</label>
209        <value>1.0</value>
210      </Property>
211
212      <Initial>
213        <label>Isyn</label>
214        <value>0.0</value>
215      </Initial>
216
217      <Initial>
218        <label>V</label>
219        <value><MathInline>randomUniform ()</MathInline></value>
220      </Initial>
221     
222      <Initial>
223        <label>t_rpend</label>
224        <value>0.0</value>
225      </Initial>
226
227      <Initial>
228        <label>spikeOutput</label>
229        <value>false</value>
230      </Initial>
231     
232      <Initial>
233        <label>refractoryEnd</label>
234        <value>false</value>
235      </Initial>
236     
237     
238    </properties>
239
240  </Component>
241
242
243  <Component name="Ext">
244   
245    <Definition>
246      <link> http://www.NineML.org/stim/Poisson.9ml </link>
247    </Definition>
248   
249    <properties>
250
251      <Property> 
252        <label>rate</label>
253        <value><MathInline>input_rate</MathInline></value>
254      </Property>
255     
256    </properties>
257   
258  </Component>
259
260  <Component name="ISyn">
261   
262    <Definition>
263      <link> AlphaPSR.xml </link>
264    </Definition>
265   
266    <properties>
267
268      <Property> 
269        <label>tau_syn</label>
270        <value><MathInline>tau_syn</MathInline></value>
271      </Property>
272
273      <Initial>
274        <label>A</label>
275        <value>0.0</value>
276      </Initial>
277
278      <Initial>
279        <label>B</label>
280        <value>0.0</value>
281      </Initial>
282
283      <Initial>
284        <label>spike</label>
285        <value>false</value>
286      </Initial>
287
288      <Initial>
289        <label>tspike</label>
290        <value>0.0</value>
291      </Initial>
292
293      <Initial>
294        <label>Ispike</label>
295        <value>0.0</value>
296      </Initial>
297     
298      <Initial>
299        <label>Isyn</label>
300        <value>0.0</value>
301      </Initial>
302     
303    </properties>
304   
305  </Component>
306
307  <Component name="ESyn">
308   
309    <Definition>
310      <link> AlphaPSR.xml </link>
311    </Definition>
312   
313    <properties>
314
315      <Property> 
316        <label>tau_syn</label>
317        <value><MathInline>tau_syn</MathInline></value>
318      </Property>
319
320      <Initial>
321        <label>A</label>
322        <value>0.0</value>
323      </Initial>
324
325      <Initial>
326        <label>B</label>
327        <value>0.0</value>
328      </Initial>
329
330      <Initial>
331        <label>spike</label>
332        <value>false</value>
333      </Initial>
334
335      <Initial>
336        <label>tspike</label>
337        <value>0.0</value>
338      </Initial>
339
340      <Initial>
341        <label>Ispike</label>
342        <value>0.0</value>
343      </Initial>
344     
345      <Initial>
346        <label>Isyn</label>
347        <value>0.0</value>
348      </Initial>
349     
350    </properties>
351   
352  </Component>
353
354
355  <Component name="ExternalPlasticity">
356   
357    <Definition>
358      <link> ConstantPlasticity.xml </link>
359    </Definition>
360   
361    <properties>
362     
363      <Initial>
364        <label>weight</label>
365        <value><MathInline>Jext</MathInline></value>
366      </Initial>
367     
368    </properties>
369   
370  </Component>
371
372  <Component name="ExcitatoryPlasticity">
373   
374    <Definition>
375      <link> ConstantPlasticity.xml </link>
376    </Definition>
377   
378    <properties>
379     
380      <Initial>
381        <label>weight</label>
382        <value><MathInline>Je</MathInline></value>
383      </Initial>
384     
385    </properties>
386   
387  </Component>
388
389  <Component name="InhibitoryPlasticity">
390   
391    <Definition>
392      <link> ConstantPlasticity.xml </link>
393    </Definition>
394   
395    <properties>
396     
397      <Initial>
398        <label>weight</label>
399        <value><MathInline>Ji</MathInline></value>
400      </Initial>
401     
402    </properties>
403   
404  </Component>
405
406
407  <Component name="RandomUniform">
408   
409    <Definition>
410      <link> RandomUniformConnection.xml </link>
411    </Definition>
412   
413    <properties>
414      <Property>
415        <label>epsilon</label>
416        <value><MathInline>epsilon</MathInline></value>
417      </Property>
418    </properties>
419
420  </Component>
421
422  <Group name="BrunelCaseAalpha">
423
424    <Population name="Exc"> <!-- Excitatory population definition --> 
425      <prototype><reference>E</reference></prototype>
426      <number><MathInline>Ne</MathInline></number>
427    </Population>
428
429    <Population name="Inh"> <!-- Inhibitory population definition --> 
430      <prototype><reference>I</reference></prototype>
431      <number><MathInline>Ni</MathInline></number>
432    </Population>
433
434    <Population name="Ext"> <!-- External sources definition --> 
435      <prototype><reference>Ext</reference></prototype>
436      <number><MathInline>Cext</MathInline></number>
437    </Population>
438
439    <Set name="All neurons"> <!-- The set of all neurons --> 
440      <union>
441        <left><singleton>Exc</singleton></left> 
442        <right><singleton>Inh</singleton></right>
443      </union>
444    </Set>
445
446    <!-- Projection from external sources to all neurons --> 
447    <Projection name="External" > 
448      <source><reference>Ext</reference></source>
449      <target><reference>All neurons</reference></target>
450      <rule operator="all-to-all"/>
451      <response><reference>ESyn</reference></response>
452      <plasticity><reference>ExternalPlasticity</reference></plasticity>
453    </Projection>
454
455    <!-- Projection from excitatory neurons to all neurons --> 
456    <Projection name="Excitation" > 
457      <source><reference>Exc</reference></source>
458      <target><reference>All neurons</reference></target>
459      <rule operator="for-each">
460        <reference>RandomUniform</reference>
461        <state>connection</state>
462      </rule>
463      <response><reference>ESyn</reference></response>
464      <plasticity><reference>ExcitatoryPlasticity</reference></plasticity>
465    </Projection>
466
467    <!-- Projection from inhibitory neurons to all neurons --> 
468    <Projection name="Inhibition" > 
469      <source><reference>Inh</reference></source>
470      <target><reference>All neurons</reference></target>
471      <rule operator="for-each">
472        <reference>RandomUniform</reference>
473        <state>connection</state>
474      </rule>
475      <response><reference>ISyn</reference></response>
476      <plasticity><reference>InhibitoryPlasticity</reference></plasticity>
477    </Projection>
478
479    <!-- Record spikes from the given set -->
480    <SpikeRecording set="All neurons"/>
481
482  </Group>
483
484</NineML>
Note: See TracBrowser for help on using the repository browser.