XPP model
This model was converted from XPP ode format to SBML using sbmlutils-0.1.5a6
.
# Code for article by N. Huebel and M. A. Dahlem:
# "Dynamics from seconds to hours in Hodgkin–Huxley model with
# time-dependent ion concentrations and buffer reservoirs"
# PLoS Comp Biol (2014)
# email: niklas.huebel@gmail.com
# Oct. 7, 2014
#
#
#
#
# To compute the fixed point continuation of Fig. 2 run xppaut
# with this file. To reach the exact fixed point use (I)nitial
# and (G)o first. Then use (F)ile + (A)UTO to open the AUTO
# interface. (R)un + (S)teady state will start the forward
# continuation. Then change the (N)umerics parameter DS from 0.2
# to -0.2, (G)rab (+ 'Enter') the starting point of the forward
# continuation curve, and (R)un again.
# (Remark: The Hopf line of Fig. 4 can only be obtained by changing
# this code so that also "cli" is a parameter.)
#
########################################
# RATE EQUATIONS FOR 4D BISTABLE MODEL #
########################################
v' = 1000. * v_DOT
n' = 1000. * n_DOT
ki' = 1000. * ki_DOT
cli' = 1000. * cli_DOT
####################################
# PHYSIOLOGICAL RESTING CONDITIONS #
####################################
init v=-67.193253
init n=0.069410823
init ki=129.25764
init cli=9.900239
##############################
# MAIN BIFURCATION PARAMETER #
##############################
par dk=0.
##########
# GATING #
##########
A_N = 0.01 * (v + 34.0) / (1.0 - exp(-0.1 * (v + 34.0)))
B_N = 0.125 * exp(-(v + 44.0) / 80.0)
A_M = 0.1 * (v + 30.0) / (1.0 - exp(-0.1 * (v + 30.0)))
B_M = 4.0 * exp(-(v + 55.0) / 18.0)
m = A_M / (A_M + B_M)
h = 1 - 1. / (1 + exp(-6.5*(n-0.35)))
######################
# ION CONCENTRATIONS #
######################
par vol_i=2.16
par vol_e=0.72
par nai0=25.231485
par ki0=129.25764
par cli0=9.900239
par nae0=125.30555
par ke0=4.
par cle0=123.2716
nai = nai0 + ki0 - ki - cli0 + cli
nae = (nai0 * vol_i + nae0 * vol_e - nai * vol_i) / vol_e
cle = (cli0 * vol_i + cle0 * vol_e - cli * vol_i) / vol_e
ke = (ki0 * vol_i + ke0 * vol_e - ki * vol_i) / vol_e + dk
#####################
# NERNST POTENTIALS #
#####################
EK = 26.64 * log(ke /ki)
ENA = 26.64 * log(nae/nai)
ECL =-26.64 * log(cle/cli)
#####################
# TYPES OF CURRENTS #
#####################
par G_NA_L=0.0175
par G_NA_G=100.
par G_K_L=0.05
par G_K_G=40.
par G_CL_L=0.02
par MAX_PUMP=6.8
par NA_PUMP=25
par K_PUMP=5.5
I_NA_L = G_NA_L * (v - ENA)
I_NA_G = G_NA_G * m**3 * h * (v - ENA)
I_K_L = G_K_L * (v - EK)
I_K_G = G_K_G * n**4 * (v - EK)
I_CL_L = G_CL_L * (v - ECL)
IPUMP = MAX_PUMP / (1.0 + exp((NA_PUMP - nai)/3.)) / (1. + exp(K_PUMP - ke))
#################
# FULL CURRENTS #
#################
I_NA = I_NA_L + I_NA_G + 3. * IPUMP
I_K = I_K_L + I_K_G - 2. * IPUMP
#############################
# RATE FUNCTIONS FOR SOLVER #
#############################
par C=1
par CONV=9.55589e-05
par PHI=3
v_DOT = -1. / C * (I_NA + I_K + I_CL_L)
n_DOT = PHI * (A_N * (1 - n) - B_N * n)
ki_DOT = -1. / vol_i * CONV * I_K
cli_DOT = 1. / vol_i * CONV * I_CL_L
###############
# AUXILIARIES #
###############
aux _nai = nai
aux _nae = nae
aux _cle = cle
aux _ke = ke
aux _EK = EK
aux _ENA = ENA
aux _ECL = ECL
aux _I_NA_L = I_NA_L
aux _I_NA_G = I_NA_G
aux _I_K_L = I_K_L
aux _I_K_G = I_K_G
aux _I_CL_L = I_CL_L
aux _IPUMP = IPUMP
aux _I_NA = I_NA
aux _I_K = I_K
########################
# INTEGRATION NUMERICS #
########################
@ meth=stiff
@ dt=5e-2
@ maxstor=10000000, bounds=10000000
@ total=500
@ bell=0
################################
# AUTO CONTINUATION PARAMETERS #
################################
@ NTST=50, NMAX=900000, NPR=100000
@ DS=0.2, DSMIN=0.1, DSMAX=0.5
@ PARMIN=-100, PARMAX=100
@ AUTOXMIN=-100, AUTOXMAX=100, AUTOYMIN=-150, AUTOYMAX=50
################
# PLOT OPTIONS #
################
@ xhi=500
@ nplot=3, yp1=v, yp2=_EK, yp3=_ENA, ylo=-150, yhi=160
done
Terms of use
Copyright © 2017 Matthias Koenig
Redistribution and use of any part of this model, with or without modification, are permitted provided that
the following conditions are met:
Redistributions of this SBML file must retain the above copyright notice, this list of conditions
and the following disclaimer.
Redistributions in a different form must reproduce the above copyright notice, this list of
conditions and the following disclaimer in the documentation and/or other materials provided
with the distribution.
This model is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Model :
id
name
time
substance
extent
volume
area
length
L3V1
type
FunctionDefinitions [4]
name
math
sbo
cvterm
FunctionDefinition
max
minimum
x
y
x
x
y
y
FunctionDefinition
min
maximum
x
y
x
x
y
y
FunctionDefinition
heav
heavyside
x
0
x
0
0.5
x
0
1
x
0
0
FunctionDefinition
mod
modulo
x
y
x
y
x
y
x
0
y
0
x
y
x
y
type
Parameters [65]
name
constant
value
unit
derived unit
sbo
cvterm
Parameter
v
v = -67.193253
F
-67.193253
None
Parameter
n
n = 0.069410823
F
0.069410823
None
Parameter
ki
ki = 129.25764
F
129.25764
None
Parameter
cli
cli = 9.900239
F
9.900239
None
Parameter
dk
dk = 0.
F
0.0
None
Parameter
vol_i
vol_i = 2.16
F
2.16
None
Parameter
vol_e
vol_e = 0.72
F
0.72
None
Parameter
nai0
nai0 = 25.231485
F
25.231485
None
Parameter
ki0
ki0 = 129.25764
F
129.25764
None
Parameter
cli0
cli0 = 9.900239
F
9.900239
None
Parameter
nae0
nae0 = 125.30555
F
125.30555
None
Parameter
ke0
ke0 = 4.
F
4.0
None
Parameter
cle0
cle0 = 123.2716
F
123.2716
None
Parameter
g_na_l
g_na_l = 0.0175
F
0.0175
None
Parameter
g_na_g
g_na_g = 100.
F
100.0
None
Parameter
g_k_l
g_k_l = 0.05
F
0.05
None
Parameter
g_k_g
g_k_g = 40.
F
40.0
None
Parameter
g_cl_l
g_cl_l = 0.02
F
0.02
None
Parameter
max_pump
max_pump = 6.8
F
6.8
None
Parameter
na_pump
na_pump = 25
F
25.0
None
Parameter
k_pump
k_pump = 5.5
F
5.5
None
Parameter
c
c = 1
F
1.0
None
Parameter
conv
conv = 9.55589e-05
F
9.55589e-05
None
Parameter
phi
phi = 3
F
3.0
None
Parameter
a_n
F
0.0
dimensionless
None
Parameter
b_n
F
0.0
dimensionless
None
Parameter
a_m
F
0.0
dimensionless
None
Parameter
b_m
F
0.0
dimensionless
None
Parameter
m
F
0.0
dimensionless
None
Parameter
h
F
0.0
dimensionless
None
Parameter
nai
F
0.0
dimensionless
None
Parameter
nae
F
0.0
dimensionless
None
Parameter
cle
F
0.0
dimensionless
None
Parameter
ke
F
0.0
dimensionless
None
Parameter
ek
F
0.0
dimensionless
None
Parameter
ena
F
0.0
dimensionless
None
Parameter
ecl
F
0.0
dimensionless
None
Parameter
i_na_l
F
0.0
dimensionless
None
Parameter
i_na_g
F
0.0
dimensionless
None
Parameter
i_k_l
F
0.0
dimensionless
None
Parameter
i_k_g
F
0.0
dimensionless
None
Parameter
i_cl_l
F
0.0
dimensionless
None
Parameter
ipump
F
0.0
dimensionless
None
Parameter
i_na
F
0.0
dimensionless
None
Parameter
i_k
F
0.0
dimensionless
None
Parameter
v_dot
F
0.0
dimensionless
None
Parameter
n_dot
F
0.0
dimensionless
None
Parameter
ki_dot
F
0.0
dimensionless
None
Parameter
cli_dot
F
0.0
dimensionless
None
Parameter
_nai
F
0.0
dimensionless
None
Parameter
_nae
F
0.0
dimensionless
None
Parameter
_cle
F
0.0
dimensionless
None
Parameter
_ke
F
0.0
dimensionless
None
Parameter
_ek
F
0.0
dimensionless
None
Parameter
_ena
F
0.0
dimensionless
None
Parameter
_ecl
F
0.0
dimensionless
None
Parameter
_i_na_l
F
0.0
dimensionless
None
Parameter
_i_na_g
F
0.0
dimensionless
None
Parameter
_i_k_l
F
0.0
dimensionless
None
Parameter
_i_k_g
F
0.0
dimensionless
None
Parameter
_i_cl_l
F
0.0
dimensionless
None
Parameter
_ipump
F
0.0
dimensionless
None
Parameter
_i_na
F
0.0
dimensionless
None
Parameter
_i_k
F
0.0
dimensionless
None
Parameter
t
model time
F
0.0
dimensionless
None
type
Rules [45]
assignment
name
derived units
sbo
cvterm
Rule
d v/dt
=
1000
v_dot
None
Rule
d n/dt
=
1000
n_dot
None
Rule
d ki/dt
=
1000
ki_dot
None
Rule
d cli/dt
=
1000
cli_dot
None
Rule
a_n
=
0.01
v
34
1
0.1
v
34
None
Rule
b_n
=
0.125
v
44
80
None
Rule
a_m
=
0.1
v
30
1
0.1
v
30
None
Rule
b_m
=
4
v
55
18
None
Rule
m
=
a_m
a_m
b_m
None
Rule
h
=
1
1
1
6.5
n
0.35
None
Rule
nai
=
nai0
ki0
ki
cli0
cli
None
Rule
nae
=
nai0
vol_i
nae0
vol_e
nai
vol_i
vol_e
None
Rule
cle
=
cli0
vol_i
cle0
vol_e
cli
vol_i
vol_e
None
Rule
ke
=
ki0
vol_i
ke0
vol_e
ki
vol_i
vol_e
dk
None
Rule
ek
=
26.64
10
ke
ki
None
Rule
ena
=
26.64
10
nae
nai
None
Rule
ecl
=
26.64
10
cle
cli
None
Rule
i_na_l
=
g_na_l
v
ena
None
Rule
i_na_g
=
g_na_g
m
3
h
v
ena
None
Rule
i_k_l
=
g_k_l
v
ek
None
Rule
i_k_g
=
g_k_g
n
4
v
ek
None
Rule
i_cl_l
=
g_cl_l
v
ecl
None
Rule
ipump
=
max_pump
1
na_pump
nai
3
1
k_pump
ke
None
Rule
i_na
=
i_na_l
i_na_g
3
ipump
None
Rule
i_k
=
i_k_l
i_k_g
2
ipump
None
Rule
v_dot
=
1
c
i_na
i_k
i_cl_l
None
Rule
n_dot
=
phi
a_n
1
n
b_n
n
None
Rule
ki_dot
=
1
vol_i
conv
i_k
None
Rule
cli_dot
=
1
vol_i
conv
i_cl_l
None
Rule
_nai
=
nai
None
Rule
_nae
=
nae
None
Rule
_cle
=
cle
None
Rule
_ke
=
ke
None
Rule
_ek
=
ek
None
Rule
_ena
=
ena
None
Rule
_ecl
=
ecl
None
Rule
_i_na_l
=
i_na_l
None
Rule
_i_na_g
=
i_na_g
None
Rule
_i_k_l
=
i_k_l
None
Rule
_i_k_g
=
i_k_g
None
Rule
_i_cl_l
=
i_cl_l
None
Rule
_ipump
=
ipump
None
Rule
_i_na
=
i_na
None
Rule
_i_k
=
i_k
None
Rule
t
=
time
None