-
Notifications
You must be signed in to change notification settings - Fork 135
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Raster plot colored by phase + bug fixes
**New features** - Raster plot colored by phase - Examples based on the CA3 model using the 'colorbyPhase' option in the plotRaster **Bug fixes** - Fix voltage movie tutorial - Fix to automatically include netstims in the sim.allSimData object when plotRaster 'include' selects 'all'
- Loading branch information
Showing
23 changed files
with
1,590 additions
and
42 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
{ | ||
"mod_folder": "mod", | ||
"simConfig": "src/cfg.py", | ||
"python_run": "src/init.py", | ||
"netParams": "src/netParams.py" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
: $Id: CA1ih.mod,v 1.4 2010/12/13 21:35:47 samn Exp $ | ||
TITLE Ih CA3 | ||
|
||
UNITS { | ||
(mA) = (milliamp) | ||
(mV) = (millivolt) | ||
} | ||
|
||
NEURON { | ||
SUFFIX hcurrent | ||
NONSPECIFIC_CURRENT ih | ||
RANGE g, e, v50, htau, hinf | ||
RANGE gfactor | ||
} | ||
|
||
PARAMETER { | ||
celsius (degC) | ||
g= 0.0001 (mho/cm2) | ||
e= -30 (mV) | ||
v50=-82 (mV) | ||
gfactor = 1 | ||
} | ||
|
||
STATE { | ||
h | ||
} | ||
|
||
ASSIGNED { | ||
ih (mA/cm2) | ||
hinf | ||
htau (ms) | ||
v (mV) | ||
} | ||
|
||
PROCEDURE iassign () { ih=g*h*(v-e)*gfactor } | ||
|
||
BREAKPOINT { | ||
SOLVE states METHOD cnexp | ||
iassign() | ||
} | ||
|
||
DERIVATIVE states { | ||
rates(v) | ||
h'= (hinf- h)/ htau | ||
} | ||
|
||
INITIAL { | ||
rates(v) | ||
h = hinf | ||
iassign() | ||
} | ||
|
||
PROCEDURE rates(v (mV)) { | ||
UNITSOFF | ||
: HCN1 | ||
:hinf = 1/(1+exp(0.151*(v-v50))) | ||
:htau = exp((0.033*(v+75)))/(0.011*(1+exp(0.083*(v+75)))) | ||
|
||
: HCN2 | ||
hinf = 1/(1+exp((v-v50)/10.5)) | ||
htau = (1/(exp(-14.59-0.086*v)+exp(-1.87+0.0701*v))) | ||
UNITSON | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
: $Id: CA1ika.mod,v 1.2 2010/12/01 05:06:07 samn Exp $ | ||
TITLE Ika CA1 | ||
|
||
UNITS { | ||
(mA) = (milliamp) | ||
(mV) = (millivolt) | ||
} | ||
|
||
NEURON { | ||
SUFFIX kacurrent | ||
NONSPECIFIC_CURRENT ika, ikad | ||
RANGE g, gd, e, ninf, ntau, ndinf, ndtau, linf, ltau | ||
} | ||
|
||
PARAMETER { | ||
celsius (degC) | ||
g= 0.048 (mho/cm2) | ||
gd= 0 (mho/cm2) | ||
e= -90 (mV) | ||
} | ||
|
||
STATE { | ||
n | ||
nd : distal | ||
l | ||
} | ||
|
||
ASSIGNED { | ||
v (mV) | ||
ika (mA/cm2) | ||
ikad (mA/cm2) | ||
ninf | ||
ntau (ms) | ||
ndinf | ||
ndtau (ms) | ||
linf | ||
ltau (ms) | ||
} | ||
|
||
PROCEDURE iassign () { | ||
ika=g*n*l*(v-e) | ||
ikad=gd*nd*l*(v-e) | ||
} | ||
|
||
BREAKPOINT { | ||
SOLVE states METHOD cnexp | ||
iassign() | ||
} | ||
|
||
DERIVATIVE states { | ||
rates(v) | ||
n'= (ninf- n)/ ntau | ||
l'= (linf- l)/ ltau | ||
nd'= (ndinf-nd)/ndtau | ||
} | ||
|
||
INITIAL { | ||
rates(v) | ||
n = ninf | ||
l = linf | ||
iassign() | ||
} | ||
|
||
PROCEDURE rates(v (mV)) { | ||
LOCAL a, b | ||
UNITSOFF | ||
a = exp(-0.038*(1.5+1/(1+exp(v+40)/5))*(v-11)) | ||
b = exp(-0.038*(0.825+1/(1+exp(v+40)/5))*(v-11)) | ||
ntau=4*b/(1+a) | ||
if (ntau<0.1) {ntau=0.1} | ||
ninf=1/(1+a) | ||
|
||
a=exp(-0.038*(1.8+1/(1+exp(v+40)/5))*(v+1)) | ||
b=exp(-0.038*(0.7+1/(1+exp(v+40)/5))*(v+1)) | ||
ndtau=2*b/(1+a) | ||
if (ndtau<0.1) {ndtau=0.1} | ||
ndinf=1/(1+a) | ||
|
||
a = exp(0.11*(v+56)) | ||
ltau=0.26*(v+50) | ||
if (ltau<2) {ltau=2} | ||
linf=1/(1+a) | ||
UNITSON | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
: $Id: CA1ikdr.mod,v 1.2 2010/12/01 05:10:52 samn Exp $ | ||
TITLE IKDR CA1 | ||
|
||
UNITS { | ||
(mA) = (milliamp) | ||
(mV) = (millivolt) | ||
} | ||
|
||
NEURON { | ||
SUFFIX kdrcurrent | ||
NONSPECIFIC_CURRENT ik | ||
RANGE g, e, ninf, ntau | ||
} | ||
|
||
PARAMETER { | ||
celsius (degC) | ||
g = 0.010 (mho/cm2) | ||
e = -90 (mV) | ||
} | ||
|
||
STATE { | ||
n | ||
} | ||
|
||
ASSIGNED { | ||
v (mV) | ||
ik (mA/cm2) | ||
ninf | ||
ntau (ms) | ||
} | ||
|
||
PROCEDURE iassign () { ik=g*n*(v-e) } | ||
|
||
BREAKPOINT { | ||
SOLVE states METHOD cnexp | ||
iassign() | ||
} | ||
|
||
DERIVATIVE states { | ||
rates(v) | ||
n'= (ninf- n)/ ntau | ||
} | ||
|
||
INITIAL { | ||
rates(v) | ||
n = ninf | ||
iassign() | ||
} | ||
|
||
PROCEDURE rates(v (mV)) { | ||
LOCAL a, b | ||
UNITSOFF | ||
a = exp(-0.11*(v-13)) | ||
b = exp(-0.08*(v-13)) | ||
ntau=50*b/(1+a) | ||
if (ntau<2) {ntau=2} | ||
ninf=1/(1+a) | ||
UNITSON | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
: $Id: CA1ina.mod,v 1.4 2010/11/30 19:50:00 samn Exp $ | ||
TITLE INa CA1 | ||
|
||
UNITS { | ||
(mA) = (milliamp) | ||
(mV) = (millivolt) | ||
} | ||
|
||
NEURON { | ||
SUFFIX nacurrent | ||
NONSPECIFIC_CURRENT ina | ||
RANGE g, e, vi, ki | ||
RANGE minf,hinf,iinf,mtau,htau,itau : testing | ||
} | ||
|
||
PARAMETER { | ||
: v (mV) | ||
celsius (degC) | ||
g = 0.032 (mho/cm2) | ||
e = 55 (mV) | ||
vi = -60 (mV) | ||
ki = 0.8 | ||
} | ||
|
||
STATE { | ||
m | ||
h | ||
I : i | ||
} | ||
|
||
ASSIGNED { | ||
i (mA/cm2) | ||
ina (mA/cm2) | ||
minf | ||
mtau (ms) | ||
hinf | ||
htau (ms) | ||
iinf | ||
itau (ms) | ||
v (mV) : testing | ||
} | ||
|
||
: PROCEDURE iassign () { ina=g*m*m*m*h*i*(v-e) } | ||
PROCEDURE iassign () { i=g*m*m*m*h*I*(v-e) ina=i} | ||
|
||
BREAKPOINT { | ||
SOLVE states METHOD cnexp | ||
iassign() | ||
} | ||
|
||
DERIVATIVE states { | ||
rates(v) | ||
m' = (minf - m) / mtau | ||
h' = (hinf - h) / htau | ||
: i' = (iinf - i) / itau | ||
I' = (iinf - I) / itau | ||
} | ||
|
||
INITIAL { | ||
rates(v) | ||
h = hinf | ||
m = minf | ||
: i = iinf | ||
I = iinf | ||
iassign() : testing | ||
} | ||
|
||
|
||
PROCEDURE rates(v (mV)) { | ||
LOCAL a, b | ||
UNITSOFF | ||
a = 0.4*(v+30)/(1-exp(-(v+30)/7.2)) | ||
b = 0.124*(v+30)/(exp((v+30)/7.2)-1) | ||
mtau=0.5/(a+b) | ||
if (mtau<0.02) {mtau=0.02} | ||
minf=a/(a+b) | ||
a = 0.03*(v+45)/(1-exp(-(v+45)/1.5)) | ||
b = 0.01*(v+45)/(exp((v+45)/1.5)-1) | ||
htau=0.5/(a+b) | ||
if (htau<0.5) {htau=0.5} | ||
hinf=1/(1+exp((v+50)/4)) | ||
a = exp(0.45*(v+66)) | ||
b = exp(0.09*(v+66)) | ||
itau=3000*b/(1+a) | ||
if (itau<10) {itau=10} | ||
iinf=(1+ki*exp((v-vi)/2))/(1+exp((v-vi)/2)) | ||
UNITSON | ||
} | ||
|
67 changes: 67 additions & 0 deletions
67
examples/CA3model_RasterColoredbyPhase/mod/MyExp2SynBB.mod
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
: $Id: MyExp2SynBB.mod,v 1.4 2010/12/13 21:27:51 samn Exp $ | ||
NEURON { | ||
: THREADSAFE | ||
POINT_PROCESS MyExp2SynBB | ||
RANGE tau1, tau2, e, i, g, Vwt, gmax | ||
NONSPECIFIC_CURRENT i | ||
} | ||
|
||
UNITS { | ||
(nA) = (nanoamp) | ||
(mV) = (millivolt) | ||
(uS) = (microsiemens) | ||
} | ||
|
||
PARAMETER { | ||
tau1=.1 (ms) <1e-9,1e9> | ||
tau2 = 10 (ms) <1e-9,1e9> | ||
e=0 (mV) | ||
gmax = 1e9 (uS) | ||
Vwt = 0 : weight for inputs coming in from vector | ||
} | ||
|
||
ASSIGNED { | ||
v (mV) | ||
i (nA) | ||
g (uS) | ||
factor | ||
etime (ms) | ||
} | ||
|
||
STATE { | ||
A (uS) | ||
B (uS) | ||
} | ||
|
||
INITIAL { | ||
LOCAL tp | ||
|
||
Vwt = 0 : testing | ||
|
||
if (tau1/tau2 > .9999) { | ||
tau1 = .9999*tau2 | ||
} | ||
A = 0 | ||
B = 0 | ||
tp = (tau1*tau2)/(tau2 - tau1) * log(tau2/tau1) | ||
factor = -exp(-tp/tau1) + exp(-tp/tau2) | ||
factor = 1/factor | ||
} | ||
|
||
BREAKPOINT { | ||
SOLVE state METHOD cnexp | ||
g = B - A | ||
if (g>gmax) {g=gmax}: saturation | ||
i = g*(v - e) | ||
} | ||
|
||
DERIVATIVE state { | ||
A' = -A/tau1 | ||
B' = -B/tau2 | ||
} | ||
|
||
NET_RECEIVE(w (uS)) {LOCAL ww | ||
ww=w | ||
A = A + ww*factor | ||
B = B + ww*factor | ||
} |
Oops, something went wrong.