Cl- homeostasis in immature hippocampal CA3 neurons (Kolbaev et al 2020)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:266811
Model used for the revision of the manuscript. Insertion of a passive Cl- flux and an active Cl-accumulation. Parameters adapted to match the properties of [Cl-]i determined in immature rat CA3 neurons in-vitro.
Reference:
1 . Kolbaev SN, Mohapatra N, Chen R, Lombardi A, Staiger JF, Luhmann HJ, Jedlicka P, Kilb W (2020) NKCC-1 mediated Cl- uptake in immature CA3 pyramidal neurons is sufficient to compensate phasic GABAergic inputs. Sci Rep 10:18399 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell; Synapse;
Brain Region(s)/Organism: Hippocampus;
Cell Type(s):
Channel(s): NKCC1;
Gap Junctions:
Receptor(s): GabaA;
Gene(s):
Transmitter(s): Gaba;
Simulation Environment: NEURON;
Model Concept(s): Synaptic Plasticity; Homeostasis;
Implementer(s): Jedlicka, Peter [jedlicka at em.uni-frankfurt.de]; Kilb, Werner [wkilb at uni-mainz.de];
Search NeuronDB for information about:  GabaA; NKCC1; Gaba;
/
Models_Kolbaev et al Scientific Reports Revision
Readme.txt
asin.mod *
cldif_CA3_NKCC1_HCO3.mod *
gabaA_Cl_HCO3.mod *
tonic.mod *
vecevent.mod *
Add_tonic_Cl-current.hoc
anyl.m
Block-Tonic-Cl-current.ses
Cell_1_SciRep_ShrinkCorr.hoc
Determine_cl-Flux_w-o_NKCC1_rig.ses
Determine_R_input_rig.ses
Determine_tau_NKCC1_rig.ses
Display_Phasic-Cl-current.ses
Display_Phasic-Cl-current_for_Charge_Transfer.ses
Display_Phasic-Cl-current_forFreq.ses
Phasic_GABA_activity_Div_Freq.hoc
Phasic_GABA_activity_Div_gGABA.hoc
Phasic_GABA_activity_only_soma_Backregul.hoc
Phasic_GABA_activity_only_soma_Div_Freq.hoc
Phasic_GABA_activity_only_soma_Div_gGABA.hoc
Phasic_GABA_activity_only_soma_for_Charge_Transfer.hoc
Phasic_GABA_activity_only_soma_PlaceSynapsesForFigure.hoc
start_Add_Tonic_Cl-currents.hoc
start_Block_Tonic_Cl-currents.hoc
start_Phasic_Cl-currents.hoc
start_Phasic_Cl-currents_for _Change-transfer.hoc
start_Phasic_GABA_activity_Div_Freq.hoc
start_Phasic_GABA_activity_only_soma_Backregul.hoc
start_Phasic_GABA_activity_only_soma_Div_Freq.hoc
start_Phasic_GABA_activity_only_soma_Div_gGABA.hoc
Switch_off_tonic_Cl-current.hoc
                            
COMMENT

Chloride accumulation and diffusion with decay (time constant tau) to resting level cli0.
The decay approximates a reversible chloride pump with first order kinetics.
To eliminate the chloride pump, just use this hoc statement
To make the time constant effectively "infinite".
tau and the resting level are both RANGE variables

Diffusion model is modified from Ca diffusion model in Hines & Carnevale:
Expanding NEURON with NMODL, Neural Computation 12: 839-851, 2000 (Example 8)

ENDCOMMENT

NEURON {
	SUFFIX cldif_CA3_NKCC1_HCO3
	USEION cl READ icl WRITE cli VALENCE -1 : Ion cl, use cl current to calculate cl internal concentration
	USEION hco3 READ ihco3 WRITE hco3i VALENCE -1: Ion HCO3, use HCO3 internal concentration to calculate the external concentration
	GLOBAL vrat		:vrat must be GLOBAL, so it does not change with position. vrat = volumes of concentric shells
	RANGE tau, cli0, clo0, hco3i0, hco3o0, egaba, delta_egaba, init_egaba, ehco3_help, ecl_help : all of these change with position
}

DEFINE Nannuli 4

UNITS {
	(molar) = (1/liter)
	(mM) = (millimolar)
	(um) = (micron)
	(mA) = (milliamp)
	(mV)    = (millivolt)
	FARADAY = (faraday) (10000 coulomb)
	PI = (pi) (1)
	F = (faraday) (coulombs)
	R = (k-mole)  (joule/degC)
}

PARAMETER {
	DCl = 2 (um2/ms) : Kuner & Augustine, Neuron 27: 447 : diffusion coefficient of cl
	tau_NKCC1 = 174000 (ms)   : 174 s From Kolbaev, Lombardi kilb (in Prep) - kinetics after Cl decline
	tau_passive = 321000 (ms) : 321 s From Kolbaev, Lombardi Kilb (in prep) - kinetics after bumetanid washin
        tau_hco3 = 1000 (ms) : tau for Bicarbonate, just an arbitrary value
	cli0 = 50 (mM) : basal Cl internal concentration
	cli_Start = 10 (mM) :Cl- concentration at start
	clo0 = 133.5 (mM) : basal Cl external concentration
	hco3i0 = 16	(mM) : basal HCO3 internal concentration
	hco3o0 = 26	(mM) : basal HCO3 external concentration
	hco3i_Start = 16 (mM) : Cl- concentration at start
	celsius = 31    (degC)

}

ASSIGNED {
	diam 	(um)
	icl 	(mA/cm2) : Cl current
        ihco3 	(mA/cm2) : HCO3- current current
	cli 	(mM) : Cl internal concentration
	hco3i	(mM) : HCO3 internal concentration
	hco3o	(mM) : HCO3 external concentration
	vrat[Nannuli]	: numeric value of vrat[i] equals the volume
			: of annulus i of a 1um diameter cylinder
			: multiply by diam^2 to get volume per um length
	ehco3_help 	(mV)
	ecl_help	(mV)
	ActPump   :Binary value that defines if active inward pumping of passive outward diffusion
}

STATE {
	: cl[0] is equivalent to cli
	: cl[] are very small, so specify absolute tolerance
	cl[Nannuli]	(mM) <1e-10>
        hco3[Nannuli]	(mM) <1e-10>
}


BREAKPOINT {
		SOLVE state METHOD sparse
		ecl_help = log(cli/clo0)*(1000)*(celsius + 273.15)*R/F
                ehco3_help = log(hco3i/hco3o0)*(1000)*(celsius + 273.15)*R/F
}

LOCAL factors_done

INITIAL {
	if (factors_done == 0) {  	: flag becomes 1 in the first segment
		factors_done = 1	: all subsequent segments will have
		factors()		: vrat = 0 unless vrat is GLOBAL. We make sure that vrat is applied to the shell volumes
	}
	cli = cli_Start
	hco3i = hco3i0
	hco3o = hco3o0
	FROM i=0 TO Nannuli-1 { : So that at the begining the Cl [] is the same in all shells ( steady state)
		cl[i] = cli
	}
        FROM i=0 TO Nannuli-1 { : So that at the begining the HCO3 [] is the same in all shells ( steady state)
		hco3[i] = hco3i
	}
	ehco3_help = log(hco3i/hco3o)*(1000)*(celsius + 273.15)*R/F : Nerst eq for HCO3 at time 0
	ecl_help = log(cli/clo0)*(1000)*(celsius + 273.15)*R/F
}

LOCAL frat[Nannuli]	: scales the rate constants for model geometry

PROCEDURE factors() {
	LOCAL r, dr2
	r = 1/2			: starts at edge (half diam), diam = 1, length = 1
	dr2 = r/(Nannuli-1)/2	: full thickness of outermost annulus,
				: half thickness of all other annuli
	vrat[0] = 0
	frat[0] = 2*r		: = diam
	FROM i=0 TO Nannuli-2 {
		vrat[i] = vrat[i] + PI*(r-dr2/2)*2*dr2	: interior half
		r = r - dr2
		frat[i+1] = 2*PI*r/(2*dr2)	: outer radius of annulus Ai+1/delta_r=2PI*r*1/delta_r
						: div by distance between centers
		r = r - dr2
		vrat[i+1] = PI*(r+dr2/2)*2*dr2	: outer half of annulus
	}
}

KINETIC state {
    if (cli0 >= cl[0]) { : Under this condition the NKCC1 mediates active Cl- uptake ( positive inward flux)
		  ActPump = 1
		}
		else {     : Under this condition NKCC1 should be not functional ( negative inward flux)
		  ActPump = 0
		}

  	COMPARTMENT i, diam*diam*vrat[i] {cl}
		LONGITUDINAL_DIFFUSION i, DCl*diam*diam*vrat[i] {cl}
				~ cl[0] << ((icl*PI*diam/FARADAY) + ActPump*(diam*diam*vrat[0]*(cli0 - cl[0])/tau_NKCC1) + (diam*diam*vrat[0]*(cli0 - cl[0])/tau_passive)) : icl is Cl- influx
	 	FROM i=0 TO Nannuli-2 {
		~ cl[i] <-> cl[i+1]	(DCl*frat[i+1], DCl*frat[i+1])
                }
	        cli = cl[0]

        COMPARTMENT i, diam*diam*vrat[i] {hco3}
		LONGITUDINAL_DIFFUSION i, DCl*diam*diam*vrat[i] {hco3}
				~ hco3[0] << ((ihco3*PI*diam/FARADAY)  + (diam*diam*vrat[0]*(hco3i0 - hco3[0])/tau_hco3)) : ihco3 is HCO3- influx
	 	FROM i=0 TO Nannuli-2 {
		~ hco3[i] <-> hco3[i+1]	(DCl*frat[i+1], DCl*frat[i+1])
                }
	        hco3i = hco3[0]
}