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

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

9ML-toolkit: adding source and destination port fields to projection

File size: 9.2 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">
6 
7  <Property><!-- Scales the size of the network (total 5*order neurons) -->
8    <label>order</label>
9    <value>250</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
55  <Property> 
56    <label>g</label> <!-- Relative strength of inhibitory synapses -->
57    <value>3.0</value> 
58  </Property>
59
60  <Property> <!-- nu_ext / nu_thr -->
61    <label>eta</label>
62    <value>2.0</value> 
63  </Property>
64
65  <Property> <!-- Excitatory weights -->
66    <label>Je</label>
67    <value><MathInline>J</MathInline></value> 
68  </Property>
69
70  <Property> <!-- Inhibitory weights -->
71    <label>Ji</label>
72    <value><MathInline>-g * Je</MathInline></value> 
73  </Property>
74
75  <Property> <!-- External weights -->
76    <label>Jext</label>
77    <value><MathInline>Je</MathInline></value> 
78  </Property>
79
80  <Property> <!-- Firing threshold -->
81    <label>theta</label>
82    <value>20.0</value>
83    <unit>mV</unit>
84  </Property>
85 
86  <Property><!-- Membrane time constant -->
87    <label>tau</label>
88    <value>20.0</value>
89    <unit>ms</unit>
90  </Property>
91
92  <Property> <!-- Threshold rate -->
93    <label>nu_thresh</label>
94    <value><MathInline>theta / (Je * Ce * tau)</MathInline></value> 
95  </Property>
96 
97  <Property><!-- External rate per synapse --> 
98    <label>nu_ext</label>
99    <value><MathInline>eta * nu_thresh</MathInline></value>
100  </Property>
101
102  <Property> <!-- Mean input spiking rate -->
103    <label>input_rate</label>
104    <value><MathInline>1000.0 * nu_ext</MathInline></value>
105    <unit>Hz</unit>
106  </Property>
107 
108  <Component name="E">
109
110    <Definition>
111      <link> BrunelIaF.xml </link>
112    </Definition>
113
114    <properties>
115
116      <Property>
117        <label>tau</label>
118        <value>20.0</value>
119      </Property>
120     
121      <Field>
122        <label>theta</label>
123        <value><MathInline>theta + randomNormal ()</MathInline></value>
124      </Field>
125
126      <Property>
127        <label>tau_rp</label>
128        <value>2.0</value>
129      </Property>
130     
131      <Property>
132        <label>Vreset</label>
133        <value>10.0</value>
134      </Property>
135     
136      <Property>
137        <label>R</label>
138        <value>1.0</value>
139      </Property>
140     
141      <Initial>
142        <label>Isyn</label>
143        <value>0.0</value>
144      </Initial>
145
146      <Initial>
147        <label>V</label>
148        <value><MathInline>randomUniform ()</MathInline></value>
149      </Initial>
150
151      <Initial>
152        <label>t_rpend</label>
153        <value>0.0</value>
154      </Initial>
155     
156      <Initial>
157        <label>spikeOutput</label>
158        <value>false</value>
159      </Initial>
160     
161      <Initial>
162        <label>refractoryEnd</label>
163        <value>false</value>
164      </Initial>
165
166    </properties>
167
168  </Component>
169
170  <Component name="I">
171
172    <Definition>
173      <link> BrunelIaF.xml </link>
174    </Definition>
175
176    <properties>
177
178      <Property>
179        <label>tau</label>
180        <value>20.0</value>
181      </Property>
182     
183      <Field>
184        <label>theta</label>
185        <value><MathInline>theta + randomNormal ()</MathInline></value>
186      </Field>
187
188      <Property>
189        <label>tau_rp</label>
190        <value>2.0</value>
191      </Property>
192     
193      <Property>
194        <label>Vreset</label>
195        <value>10.0</value>
196      </Property>
197
198      <Property>
199        <label>R</label>
200        <value>1.0</value>
201      </Property>
202
203      <Initial>
204        <label>Isyn</label>
205        <value>0.0</value>
206      </Initial>
207
208      <Initial>
209        <label>V</label>
210        <value><MathInline>randomUniform ()</MathInline></value>
211      </Initial>
212     
213      <Initial>
214        <label>t_rpend</label>
215        <value>0.0</value>
216      </Initial>
217
218      <Initial>
219        <label>spikeOutput</label>
220        <value>false</value>
221      </Initial>
222     
223      <Initial>
224        <label>refractoryEnd</label>
225        <value>false</value>
226      </Initial>
227     
228     
229    </properties>
230
231  </Component>
232
233  <Component name="Ext">
234   
235    <Definition>
236      <link> http://www.NineML.org/stim/Poisson.9ml </link>
237    </Definition>
238   
239    <properties>
240
241      <Property> 
242        <label>rate</label>
243        <value><MathInline>input_rate</MathInline></value>
244      </Property>
245     
246    </properties>
247   
248  </Component>
249
250
251  <Component name="ExternalPlasticity">
252   
253    <Definition>
254      <link> ConstantPlasticity.xml </link>
255    </Definition>
256   
257    <properties>
258     
259      <Initial>
260        <label>weight</label>
261        <value><MathInline>Jext</MathInline></value>
262      </Initial>
263     
264    </properties>
265   
266  </Component>
267
268  <Component name="ExcitatoryPlasticity">
269   
270    <Definition>
271      <link> ConstantPlasticity.xml </link>
272    </Definition>
273   
274    <properties>
275     
276      <Initial>
277        <label>weight</label>
278        <value><MathInline>Je</MathInline></value>
279      </Initial>
280     
281    </properties>
282   
283  </Component>
284
285  <Component name="InhibitoryPlasticity">
286   
287    <Definition>
288      <link> ConstantPlasticity.xml </link>
289    </Definition>
290   
291    <properties>
292     
293      <Initial>
294        <label>weight</label>
295        <value><MathInline>Ji</MathInline></value>
296      </Initial>
297     
298    </properties>
299   
300  </Component>
301
302
303  <Component name="RandomUniform">
304   
305    <Definition>
306      <link> RandomUniformConnection.xml </link>
307    </Definition>
308   
309    <properties>
310      <Property>
311        <label>epsilon</label>
312        <value><MathInline>epsilon</MathInline></value>
313      </Property>
314    </properties>
315
316  </Component>
317
318
319  <Group name="BrunelCaseA">
320
321    <Population name="Exc"> <!-- Excitatory population definition --> 
322      <prototype><reference>E</reference></prototype>
323      <number><MathInline>Ne</MathInline></number>
324    </Population>
325
326    <Population name="Inh"> <!-- Inhibitory population definition --> 
327      <prototype><reference>I</reference></prototype>
328      <number><MathInline>Ni</MathInline></number>
329    </Population>
330
331    <Population name="Ext"> <!-- External sources definition --> 
332      <prototype><reference>Ext</reference></prototype>
333      <number><MathInline>Cext</MathInline></number>
334    </Population>
335
336    <Set name="All neurons"> <!-- The set of all neurons --> 
337      <union>
338        <left><singleton>Exc</singleton></left> 
339        <right><singleton>Inh</singleton></right>
340      </union>
341    </Set>
342
343    <!-- Projection from external sources to all neurons --> 
344    <Projection name="External" 
345                input_event_port="spike" 
346                input_analog_port="Isyn"
347                output_event_port="spikeOutput"
348                input_response_port="Ispike"> 
349      <source><reference>Ext</reference></source>
350      <target><reference>All neurons</reference></target>
351      <rule operator="all-to-all"/>
352      <plasticity><reference>ExternalPlasticity</reference></plasticity>
353    </Projection>
354
355    <!-- Projection from excitatory neurons to all neurons --> 
356    <Projection name="Excitation" 
357                input_event_port="spike" 
358                input_analog_port="Isyn"
359                output_event_port="spikeOutput"
360                input_response_port="Ispike"> 
361      <source><reference>Exc</reference></source>
362      <target><reference>All neurons</reference></target>
363      <rule operator="for-each">
364        <reference>RandomUniform</reference>
365        <state>connection</state>
366      </rule>
367      <plasticity><reference>ExcitatoryPlasticity</reference></plasticity>
368    </Projection>
369
370    <!-- Projection from inhibitory neurons to all neurons --> 
371    <Projection name="Inhibition" 
372                input_event_port="spike" 
373                input_analog_port="Isyn"
374                output_event_port="spikeOutput"
375                input_response_port="Ispike"> 
376      <source><reference>Inh</reference></source>
377      <target><reference>All neurons</reference></target>
378      <rule operator="for-each">
379        <reference>RandomUniform</reference>
380        <state>connection</state>
381      </rule>
382      <plasticity><reference>InhibitoryPlasticity</reference></plasticity>
383    </Projection>
384
385    <!-- Record spikes from the given set -->
386    <SpikeRecording set="All neurons"/>
387
388  </Group>
389
390</NineML>
Note: See TracBrowser for help on using the repository browser.