Skip to content

Commit 936ff15

Browse files
committed
More tests on AIY cell
1 parent 5b3b4ac commit 936ff15

6 files changed

Lines changed: 203 additions & 188 deletions

File tree

AIY_simulation_iclamp.py

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# M. Nicoletti et al. PloS ONE, 19(3): e0298105.
33
# https://doi.org/10.1371/journal.pone.0298105
44

5-
def AIY_simulation_iclamp(gAIY_scaled,s1,s2,ns, delay = 1000, duration = 5000, simdur = 7000, transient = 4900, V_init = -45):
5+
def AIY_simulation_iclamp(gAIY_scaled,s1,s2,ns, delay = 1000, duration = 5000, simdur = 7000, transient = 4900, V_init = -45, dt=0.4): # dt set at 0.4ms in original (a bit small)...
66

77

88
from neuron import h,gui
@@ -81,7 +81,7 @@ def AIY_simulation_iclamp(gAIY_scaled,s1,s2,ns, delay = 1000, duration = 5000, s
8181

8282
stim.amp=i
8383
h.tstop=simdur
84-
h.dt=0.4
84+
h.dt=dt
8585
h.finitialize(-60)
8686
h.run()
8787

@@ -106,30 +106,30 @@ def AIY_simulation_iclamp(gAIY_scaled,s1,s2,ns, delay = 1000, duration = 5000, s
106106

107107

108108

109-
# ## SS VOLTAGE-CURRENT RELATION
110-
# ind=numpy.where(numpy.logical_and(time1[0]>=transient, time1[0]<=transient))
111-
# ind_max=numpy.amax(ind)
112-
# ind_min=numpy.amin(ind)
113-
# vi=numpy.mean(v[:,ind_min:ind_max],axis=1)
109+
## SS VOLTAGE-CURRENT RELATION
110+
ind=numpy.where(numpy.logical_and(time1[0]>=5990, time1[0]<=6000))
111+
ind_max=numpy.amax(ind)
112+
ind_min=numpy.amin(ind)
113+
vi=numpy.mean(v[:,ind_min:ind_max],axis=1)
114114

115-
# # PEAK VOLTAGE-CURRENT RELATION
116-
# ind2=numpy.where(numpy.logical_and(time1[0]>=1000, time1[0]<=transient))
117-
# ind2_max=numpy.amax(ind2)
118-
# ind2_min=numpy.amin(ind2)
119-
# vi_peak=numpy.amax(v[:,ind2_min:ind2_max])
120-
# vi_peak=[]
115+
# PEAK VOLTAGE-CURRENT RELATION
116+
ind2=numpy.where(numpy.logical_and(time1[0]>=1000, time1[0]<=1300))
117+
ind2_max=numpy.amax(ind2)
118+
ind2_min=numpy.amin(ind2)
119+
vi_peak=numpy.amax(v[:,ind2_min:ind2_max])
120+
vi_peak=[]
121121

122122

123123

124124

125-
# for j in range(ns):
126-
# if j<=2:
127-
# peak=numpy.amin(v[j,ind2_min:ind2_max])
128-
# else:
129-
# peak=numpy.amax(v[j,ind2_min:ind2_max])
130-
# vi_peak.append(peak)
125+
for j in range(ns):
126+
if j<=2:
127+
peak=numpy.amin(v[j,ind2_min:ind2_max])
128+
else:
129+
peak=numpy.amax(v[j,ind2_min:ind2_max])
130+
vi_peak.append(peak)
131131

132-
return v, time1, ca1
132+
return v, time1, vi_peak, vi, ca1
133133

134134

135135

NeuroML/AIY.cell.nml

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,20 +26,13 @@
2626
</morphology>
2727
<biophysicalProperties id="biophys">
2828
<membraneProperties>
29-
<channelDensity id="leak_chans" ionChannel="leak" condDensity="2.12475338e-04 S_per_cm2" erev="-89.57mV" ion="non_specific"/>
30-
<!-- <channelDensity id="slo1egl19_chans" ionChannel="slo1egl19" condDensity="1.39626650e-03 S_per_cm2" erev="-80mV" ion="k"/> -->
31-
<channelDensity id="kqt1_chans" ionChannel="kqt1" condDensity="3.03536197e-04 S_per_cm2" erev="-80mV" ion="k"/>
32-
<!-- <channelDensity id="slo1iso_chans" ionChannel="slo1iso" condDensity="1.51768098e-04 S_per_cm2" erev="-80mV" ion="k"/> -->
33-
<!-- <channelDensity id="shl1_chans" ionChannel="shl1" condDensity="7.58840492e-04 S_per_cm2" erev="-80mV" ion="k"/> -->
34-
<!-- <channelDensity id="nca_chans" ionChannel="nca" condDensity="9.10608590e-05 S_per_cm2" erev="30mV" ion="non_specific"/> -->
35-
<!-- <channelDensityNernst id="egl19_chans" ionChannel="egl19" condDensity="1.51768098e-04 S_per_cm2" ion="ca"/> -->
36-
29+
<channelDensity id="leak_chans" ionChannel="leak" condDensity="0.00021247533768401888 S_per_cm2" erev="-89.57mV" ion="non_specific"/>
30+
<channelDensity id="kqt1_chans" ionChannel="kqt1" condDensity="0.000303536 S_per_cm2" erev="-80mV" ion="k"/>
3731
<spikeThresh value="0mV"/>
3832
<specificCapacitance value="1.6 uF_per_cm2"/>
39-
<initMembPotential value="-55.2mV"/>
33+
<initMembPotential value="-70mV"/>
4034
</membraneProperties>
4135
<intracellularProperties>
42-
<species id="ca" concentrationModel="CaDynamics_AIY" ion="ca" initialConcentration=".00005 mM" initialExtConcentration="2 mM"/>
4336
<resistivity value="0.1 kohm_cm"/>
4437
</intracellularProperties>
4538
</biophysicalProperties>

NeuroML/AIY_comparison.ipynb

Lines changed: 158 additions & 48 deletions
Large diffs are not rendered by default.

NeuroML/LEMS_Sim_IClamp_AIY.xml

Lines changed: 13 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<!--
44
5-
This LEMS file has been automatically generated using PyNeuroML v1.3.14 (libNeuroML v0.6.6)
5+
This LEMS file has been automatically generated using PyNeuroML v1.3.15 (libNeuroML v0.6.6)
66
77
-->
88

@@ -18,63 +18,19 @@
1818
<Include file="IClamp_AIY.net.nml"/>
1919
<Include file="AIY.cell.nml"/>
2020

21-
<Simulation id="Sim_IClamp_AIY" length="7000.0ms" step="0.1ms" target="IClamp_AIY" seed="12345"> <!-- Note seed: ensures same random numbers used every run -->
22-
<Display id="pop_AIY_0_caConc" title="Plots of pop_AIY_0_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
23-
<Line id="pop_AIY_0_AIY_caConc" quantity="pop_AIY/0/AIY/caConc" scale="1" color="#d54f33" timeScale="1ms"/>
24-
</Display>
25-
26-
<Display id="pop_AIY_10_caConc" title="Plots of pop_AIY_10_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
27-
<Line id="pop_AIY_10_AIY_caConc" quantity="pop_AIY/10/AIY/caConc" scale="1" color="#0534e4" timeScale="1ms"/>
28-
</Display>
29-
30-
<Display id="pop_AIY_1_caConc" title="Plots of pop_AIY_1_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
31-
<Line id="pop_AIY_1_AIY_caConc" quantity="pop_AIY/1/AIY/caConc" scale="1" color="#98e752" timeScale="1ms"/>
32-
</Display>
33-
34-
<Display id="pop_AIY_2_caConc" title="Plots of pop_AIY_2_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
35-
<Line id="pop_AIY_2_AIY_caConc" quantity="pop_AIY/2/AIY/caConc" scale="1" color="#bca074" timeScale="1ms"/>
36-
</Display>
37-
38-
<Display id="pop_AIY_3_caConc" title="Plots of pop_AIY_3_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
39-
<Line id="pop_AIY_3_AIY_caConc" quantity="pop_AIY/3/AIY/caConc" scale="1" color="#632794" timeScale="1ms"/>
40-
</Display>
41-
42-
<Display id="pop_AIY_4_caConc" title="Plots of pop_AIY_4_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
43-
<Line id="pop_AIY_4_AIY_caConc" quantity="pop_AIY/4/AIY/caConc" scale="1" color="#8a5d88" timeScale="1ms"/>
44-
</Display>
45-
46-
<Display id="pop_AIY_5_caConc" title="Plots of pop_AIY_5_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
47-
<Line id="pop_AIY_5_AIY_caConc" quantity="pop_AIY/5/AIY/caConc" scale="1" color="#df5954" timeScale="1ms"/>
48-
</Display>
49-
50-
<Display id="pop_AIY_6_caConc" title="Plots of pop_AIY_6_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
51-
<Line id="pop_AIY_6_AIY_caConc" quantity="pop_AIY/6/AIY/caConc" scale="1" color="#52c8bf" timeScale="1ms"/>
52-
</Display>
53-
54-
<Display id="pop_AIY_7_caConc" title="Plots of pop_AIY_7_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
55-
<Line id="pop_AIY_7_AIY_caConc" quantity="pop_AIY/7/AIY/caConc" scale="1" color="#bf0239" timeScale="1ms"/>
56-
</Display>
57-
58-
<Display id="pop_AIY_8_caConc" title="Plots of pop_AIY_8_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
59-
<Line id="pop_AIY_8_AIY_caConc" quantity="pop_AIY/8/AIY/caConc" scale="1" color="#3f9fe8" timeScale="1ms"/>
60-
</Display>
61-
62-
<Display id="pop_AIY_9_caConc" title="Plots of pop_AIY_9_caConc" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-1" ymax="1">
63-
<Line id="pop_AIY_9_AIY_caConc" quantity="pop_AIY/9/AIY/caConc" scale="1" color="#dda9d2" timeScale="1ms"/>
64-
</Display>
65-
21+
<Simulation id="Sim_IClamp_AIY" length="7000.0ms" step="0.025ms" target="IClamp_AIY" seed="12345"> <!-- Note seed: ensures same random numbers used every run -->
6622
<Display id="pop_AIY_v" title="Plots of pop_AIY_v" timeScale="1ms" xmin="-1100.0" xmax="12100.000000000002" ymin="-80" ymax="40">
67-
<Line id="pop_AIY_0_AIY_v" quantity="pop_AIY/0/AIY/v" scale="1mV" color="#85ad96" timeScale="1ms"/>
68-
<Line id="pop_AIY_1_AIY_v" quantity="pop_AIY/1/AIY/v" scale="1mV" color="#59438f" timeScale="1ms"/>
69-
<Line id="pop_AIY_2_AIY_v" quantity="pop_AIY/2/AIY/v" scale="1mV" color="#5fa56f" timeScale="1ms"/>
70-
<Line id="pop_AIY_3_AIY_v" quantity="pop_AIY/3/AIY/v" scale="1mV" color="#b5b5a2" timeScale="1ms"/>
71-
<Line id="pop_AIY_4_AIY_v" quantity="pop_AIY/4/AIY/v" scale="1mV" color="#2ebe19" timeScale="1ms"/>
72-
<Line id="pop_AIY_5_AIY_v" quantity="pop_AIY/5/AIY/v" scale="1mV" color="#d30150" timeScale="1ms"/>
73-
<Line id="pop_AIY_6_AIY_v" quantity="pop_AIY/6/AIY/v" scale="1mV" color="#55490a" timeScale="1ms"/>
74-
<Line id="pop_AIY_7_AIY_v" quantity="pop_AIY/7/AIY/v" scale="1mV" color="#4bd9d0" timeScale="1ms"/>
75-
<Line id="pop_AIY_8_AIY_v" quantity="pop_AIY/8/AIY/v" scale="1mV" color="#69535e" timeScale="1ms"/>
76-
<Line id="pop_AIY_9_AIY_v" quantity="pop_AIY/9/AIY/v" scale="1mV" color="#27dae9" timeScale="1ms"/>
77-
<Line id="pop_AIY_10_AIY_v" quantity="pop_AIY/10/AIY/v" scale="1mV" color="#6143ed" timeScale="1ms"/>
23+
<Line id="pop_AIY_0_AIY_v" quantity="pop_AIY/0/AIY/v" scale="1mV" color="#d54f33" timeScale="1ms"/>
24+
<Line id="pop_AIY_1_AIY_v" quantity="pop_AIY/1/AIY/v" scale="1mV" color="#0534e4" timeScale="1ms"/>
25+
<Line id="pop_AIY_2_AIY_v" quantity="pop_AIY/2/AIY/v" scale="1mV" color="#98e752" timeScale="1ms"/>
26+
<Line id="pop_AIY_3_AIY_v" quantity="pop_AIY/3/AIY/v" scale="1mV" color="#bca074" timeScale="1ms"/>
27+
<Line id="pop_AIY_4_AIY_v" quantity="pop_AIY/4/AIY/v" scale="1mV" color="#632794" timeScale="1ms"/>
28+
<Line id="pop_AIY_5_AIY_v" quantity="pop_AIY/5/AIY/v" scale="1mV" color="#8a5d88" timeScale="1ms"/>
29+
<Line id="pop_AIY_6_AIY_v" quantity="pop_AIY/6/AIY/v" scale="1mV" color="#df5954" timeScale="1ms"/>
30+
<Line id="pop_AIY_7_AIY_v" quantity="pop_AIY/7/AIY/v" scale="1mV" color="#52c8bf" timeScale="1ms"/>
31+
<Line id="pop_AIY_8_AIY_v" quantity="pop_AIY/8/AIY/v" scale="1mV" color="#bf0239" timeScale="1ms"/>
32+
<Line id="pop_AIY_9_AIY_v" quantity="pop_AIY/9/AIY/v" scale="1mV" color="#3f9fe8" timeScale="1ms"/>
33+
<Line id="pop_AIY_10_AIY_v" quantity="pop_AIY/10/AIY/v" scale="1mV" color="#dda9d2" timeScale="1ms"/>
7834
</Display>
7935

8036
<OutputFile id="Sim_IClamp_AIY_pop_AIY_v_dat" fileName="Sim_IClamp_AIY.pop_AIY.v.dat">
@@ -91,50 +47,6 @@
9147
<OutputColumn id="pop_AIY_10_AIY_v" quantity="pop_AIY/10/AIY/v"/>
9248
</OutputFile>
9349

94-
<OutputFile id="pop_AIY_0_caConc_dat" fileName="pop_AIY_0.caConc.dat">
95-
<OutputColumn id="pop_AIY_0_AIY_caConc" quantity="pop_AIY/0/AIY/caConc"/>
96-
</OutputFile>
97-
98-
<OutputFile id="pop_AIY_1_caConc_dat" fileName="pop_AIY_1.caConc.dat">
99-
<OutputColumn id="pop_AIY_1_AIY_caConc" quantity="pop_AIY/1/AIY/caConc"/>
100-
</OutputFile>
101-
102-
<OutputFile id="pop_AIY_10_caConc_dat" fileName="pop_AIY_10.caConc.dat">
103-
<OutputColumn id="pop_AIY_10_AIY_caConc" quantity="pop_AIY/10/AIY/caConc"/>
104-
</OutputFile>
105-
106-
<OutputFile id="pop_AIY_2_caConc_dat" fileName="pop_AIY_2.caConc.dat">
107-
<OutputColumn id="pop_AIY_2_AIY_caConc" quantity="pop_AIY/2/AIY/caConc"/>
108-
</OutputFile>
109-
110-
<OutputFile id="pop_AIY_3_caConc_dat" fileName="pop_AIY_3.caConc.dat">
111-
<OutputColumn id="pop_AIY_3_AIY_caConc" quantity="pop_AIY/3/AIY/caConc"/>
112-
</OutputFile>
113-
114-
<OutputFile id="pop_AIY_4_caConc_dat" fileName="pop_AIY_4.caConc.dat">
115-
<OutputColumn id="pop_AIY_4_AIY_caConc" quantity="pop_AIY/4/AIY/caConc"/>
116-
</OutputFile>
117-
118-
<OutputFile id="pop_AIY_5_caConc_dat" fileName="pop_AIY_5.caConc.dat">
119-
<OutputColumn id="pop_AIY_5_AIY_caConc" quantity="pop_AIY/5/AIY/caConc"/>
120-
</OutputFile>
121-
122-
<OutputFile id="pop_AIY_6_caConc_dat" fileName="pop_AIY_6.caConc.dat">
123-
<OutputColumn id="pop_AIY_6_AIY_caConc" quantity="pop_AIY/6/AIY/caConc"/>
124-
</OutputFile>
125-
126-
<OutputFile id="pop_AIY_7_caConc_dat" fileName="pop_AIY_7.caConc.dat">
127-
<OutputColumn id="pop_AIY_7_AIY_caConc" quantity="pop_AIY/7/AIY/caConc"/>
128-
</OutputFile>
129-
130-
<OutputFile id="pop_AIY_8_caConc_dat" fileName="pop_AIY_8.caConc.dat">
131-
<OutputColumn id="pop_AIY_8_AIY_caConc" quantity="pop_AIY/8/AIY/caConc"/>
132-
</OutputFile>
133-
134-
<OutputFile id="pop_AIY_9_caConc_dat" fileName="pop_AIY_9.caConc.dat">
135-
<OutputColumn id="pop_AIY_9_AIY_caConc" quantity="pop_AIY/9/AIY/caConc"/>
136-
</OutputFile>
137-
13850
</Simulation>
13951

14052
</Lems>

NeuroML/LEMS_SomaTest2.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,14 @@
1616
<include href="CaDynamics.nml"/>
1717

1818

19-
<pulseGenerator id="stim" delay="100ms" duration="500ms" amplitude="5pA"/>
19+
<pulseGenerator id="stim" delay="1000ms" duration="5000ms" amplitude="35pA"/>
2020

2121
<cell id="TestCell">
2222

2323
<morphology id="morphology">
2424
<segment id="0" name="soma">
25-
<proximal x="0.0" y="0.0" z="0.0" diameter="12.922774419120067"/>
26-
<distal x="0.0" y="12.922774419120067" z="0.0" diameter="12.922774419120067"/>
25+
<proximal x="0.0" y="0.0" z="0.0" diameter="4.57968"/>
26+
<distal x="0.0" y="4.57968" z="0.0" diameter="4.57968"/>
2727
</segment>
2828
<segmentGroup id="soma_group" neuroLexId="GO:0043025">
2929
<notes>Default soma segment group for the cell</notes>
@@ -41,7 +41,7 @@
4141

4242

4343
<spikeThresh value="0mV"/>
44-
<specificCapacitance value="1.5 uF_per_cm2"/>
44+
<specificCapacitance value="1.6 uF_per_cm2"/>
4545
<initMembPotential value="-70mV"/>
4646
</membraneProperties>
4747
<intracellularProperties>
@@ -71,7 +71,7 @@
7171

7272
</network>
7373

74-
<Simulation id="Sim_IClamp" length="700.0ms" step="0.01ms" target="TestNet" seed="12345"> <!-- Note seed: ensures same random numbers used every run -->
74+
<Simulation id="Sim_IClamp" length="7000.0ms" step="0.01ms" target="TestNet" seed="12345"> <!-- Note seed: ensures same random numbers used every run -->
7575

7676
<!--
7777
<Display id="pop_m_h" title="Plots of m" timeScale="1ms" xmin="-50.0" xmax="750" ymin="-.1" ymax="1.1">

Test_Soma2.hoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ objref stim2
4646

4747
Soma {
4848
stim1 = new IClamp(0.5)
49-
stim1.del = 100.0
50-
stim1.dur = 500.0
51-
stim1.amp = 0.005
49+
stim1.del = 1000.0
50+
stim1.dur = 5000.0
51+
stim1.amp = 0.035
5252

5353
//stim2 = new IClamp(0.5)
5454
//stim2.del = 300.0
@@ -58,7 +58,7 @@ Soma {
5858

5959

6060

61-
tstop = 700.0
61+
tstop = 7000.0
6262
dt = 0.01
6363

6464

0 commit comments

Comments
 (0)