Code: Select all
COMMENT
Potential in the Intercalated disk
This mechanism should be inserted in the pre-junctional compartment
phi_c = A*Rc*Ro*(-dv_pre/dx+dv_post/dx)
Keivan Moradi, 2013
ENDCOMMENT
NEURON {
POINT_PROCESS vDisk
POINTER v2, vp1, vp2
RANGE vc
}
UNITS {
(nA) = (nanoamp)
(mV) = (millivolt)
(mS) = (millisiemens)
(um) = (micrometer)
(kO) = (kiloohm)
}
PARAMETER {
dx = 2.75 (um) : the length of pre and post junctional compartments that
: should be a fixed value in the pre-junctional and junctional compartments
A = 380 (um2) : The area of the cell cross section
Rc = 1e4 (kO) : 1e3 to 1e5 kilo-ohm the cleft-to-ground resistance
Ro = 6.67 (mS/cm) : mS/cm the cytosolic conductivity
}
ASSIGNED {
v (mV)
v1 (mV) : voltage in the first compartment of the pre-junctional myocyte
v2 (mV) : voltage in the parent compartment of the pre-junctional myocyte
vp1 (mV) : voltage in the first compartment of the post-junctional myocyte
vp2 (mV) : voltage in the parent compartment of the post-junctional myocyte
vc (mV) : the voltage in the cleft
}
BREAKPOINT {
v1 = v
vc = (0.0001)*(Ro*Rc*A*(-v1+v2+vp1-vp2)/dx)
}
I am going to test the effect of different ion channels in the cleft membrane to test their role in the propagation of action potential in a 100*100 grid of cardiac myocytes. This is the hoc code that I have written so far.
Code: Select all
load_file("nrngui.hoc")
begintemplate Myocyte
objref disk, branch, Vdisk
create body, RU, RD, LU, LD, RUd, RDd, LUd, LDd
public body, RU, RD, LU, LD, RUd, RDd, LUd, LDd, conn, disk, branch, Vdisk
proc init() {
// connect section(0or1), parent(x)
connect LU(1), body(0)
connect LD(1), body(0)
connect RU(0), body(1)
connect RD(0), body(1)
connect LUd(1), LU(0)
connect LDd(1), LD(0)
connect RUd(0), RU(1)
connect RDd(0), RD(1)
disk = new SectionList()
LUd disk.append()
LDd disk.append()
RUd disk.append()
RDd disk.append()
branch = new SectionList()
LU branch.append()
LD branch.append()
RU branch.append()
RD branch.append()
body {
nseg = 1
diam = 22
L = 67 // micrometer
Ra = 123.0
insert pas
g_pas = 0.0001666
e_pas = -60.0
}
forsec branch {
nseg = 3
// the branch diameter is half the body
diam = 11
// at L = diam/4 the area of the compartment cross-section is equal
// to the lateral area of the compartment
L = diam * nseg / 4
Ra = 123
insert pas
g_pas = 0.0001666
e_pas = -60.0
}
forsec disk {
nseg = 1
diam = 11
L = diam / 4
insert extracellular
}
}
proc conn() {
RUd Vdisk = new vDisk(0.5)
setpointer Vdisk.v2, RU.v(0.75)
setpointer Vdisk.vp1, $o1.LDd.v(0.5)
setpointer Vdisk.vp2, $o1.LD.v(0.75)
// find a way to connect Vdisk.vc to e_extracellular of RUd and $o1.LDd ???
}
endtemplate Myocyte
objref myocyte[2]
for i=0,1 myocyte[i] = new Myocyte()
for i=1,1 {
myocyte[i-1].conn (myocyte[i])
}