Disentangling astroglial physiology with a realistic cell model in silico (Savtchenko et al 2018)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:243508
"Electrically non-excitable astroglia take up neurotransmitters, buffer extracellular K+ and generate Ca2+ signals that release molecular regulators of neural circuitry. The underlying machinery remains enigmatic, mainly because the sponge-like astrocyte morphology has been difficult to access experimentally or explore theoretically. Here, we systematically incorporate multi-scale, tri-dimensional astroglial architecture into a realistic multi-compartmental cell model, which we constrain by empirical tests and integrate into the NEURON computational biophysical environment. This approach is implemented as a flexible astrocyte-model builder ASTRO. As a proof-of-concept, we explore an in silico astrocyte to evaluate basic cell physiology features inaccessible experimentally. ..."
Reference:
1 . Savtchenko LP, Bard L, Jensen TP, Reynolds JP, Kraev I, Medvedev N, Stewart MG, Henneberger C, Rusakov DA (2018) Disentangling astroglial physiology with a realistic cell model in silico. Nat Commun 9:3554 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Glia;
Brain Region(s)/Organism: Hippocampus;
Cell Type(s): Astrocyte;
Channel(s): I Calcium; I Potassium; Kir;
Gap Junctions: Gap junctions;
Receptor(s):
Gene(s):
Transmitter(s): Glutamate;
Simulation Environment: NEURON; MATLAB; C or C++ program;
Model Concept(s): Calcium waves; Calcium dynamics; Potassium buffering; Volume transmission; Membrane Properties;
Implementer(s): Savtchenko, Leonid P [leonid.savtchenko at ucl.ac.uk];
Search NeuronDB for information about:  I Calcium; I Potassium; Kir; Glutamate;
// Number of Gaps distributed in the model astrocyte
GapJunctionMaxNumber = NumberDendrites+1
objref gaps[GapJunctionMaxNumber]

NumberListSoma = 1
// Total number of geometrical objects
// NumberDendrites is a Number in the file of 3D reconstruction
SizeTotal = (NumberDendrites+NumberListSoma)*NumberLeaves+1
// Leaves
create LargeGlia[SizeTotal]
create SmallGlia[SizeTotal]

// Sets default initial params to soma and dendrites which doesn't depend on simulation.
proc setSomaDendrCommonParams() {
    for i = 1, NumberDendrites-SeedNumber-1 {
        dendrite[i] connect dendrite[i+SeedNumber](0), 1
        access dendrite[i+SeedNumber]
        { L = 0.1 diam = 3 }    // L and dim in um define the geometry of small seeds
        pt3dclear()
    }

    soma {
        Ra = 100                // Ohm cm
        cm = 0.8                // uF/cm2
        nseg = 10
        insert pas
		e_pas = -85             // mV 
        g_pas = 1/11150         // mS/cm2
		insert k_ion
		ko_k_ion=3
		ki_k_ion=110
        
		//insert ip3diffus
		insert kir4
		gkir_kir4=0
        
        for i = 2, NumberDendrites {
            gaps[i] = new Gap(0.5)
            gaps[i].r = 100000
            setpointer gaps[i].vgap, v(0.5)
        }
    }
// LengthControl=0
// diameterControl=0
    for i = 0, NumberDendrites-1 dendrite[i] {
	// if (i < 132 ) {
	// LengthControl=LengthControl+dendrite[i].L
	
	// print i,LengthControl, diameterControl, dendrite[i].diam
	// }
        Ra = 100                // Ohm cm
        cm = 0.8                // uF/cm2
        nseg = 10
        
		insert pas
        e_pas = -85             // mV
        g_pas = 1/11150         // mS/cm2
		
		insert k_ion
		ko_k_ion=3
		ki_k_ion=110
		
		insert kir4
		gkir_kir4=0 
		
		//insert ip3diffus
        gaps[1] = new Gap(0.5)
        gaps[1].r = 100000
        setpointer gaps[1].vgap, v(0.5)
    }

    // Gap junction inside the astrocite
    for i = 0, NumberDendrites-2 dendrite[i] {
        setpointer gaps[2+i].vgap, dendrite[i].v(0.5)
    }
    setpointer gaps[1].vgap, soma.v(0.5)
}

// This part defines the topology of Astrocyte
// Connects leaves and stalks.
proc addLeaves() {
    connect LargeGlia[0](0), dendrite[0](1)

    for i = 0, NumberLeaves-1 {
        connect SmallGlia[i](0), LargeGlia[i](1)
        connect LargeGlia[i+1](0), SmallGlia[i](1)
    }

    for i =  1, NumberDendrites-1 {
        connect LargeGlia[NumberLeaves*i+1](0), dendrite[i](1)
    }

    for i = NumberLeaves+1, NumberLeaves+NumberLeaves-1 {
        for j =  0, NumberDendrites-2 {
            connect SmallGlia[NumberLeaves*j+i](0), LargeGlia[NumberLeaves*j+i](1)
            connect LargeGlia[NumberLeaves*j+i+1](0), SmallGlia[NumberLeaves*j+i](1)
        }
    }
}

// Sets default initial params to stalks and leaves which doesn't depend on simulation.
proc setLeavesCommonParams() {
    for i = 0, SizeTotal-1 LargeGlia[i] {
        insert pas
        nseg = 1
        Ra = 100        // Ohm cm
        cm = 0.8        // uF/cm2
        e_pas = -85     // mV
		
		insert k_ion
		ko_k_ion=3
		ki_k_ion=110
		
		insert kir4
		gkir_kir4=0
		
    }

    for i = 0, SizeTotal-1 SmallGlia[i] {
        insert pas
        nseg = 1
        Ra = 100        // Ohm cm
        cm = 0.8        // uF/cm2
        e_pas = -85     // mV
		
		insert k_ion
		ko_k_ion=3
		ki_k_ion=110
		
		insert kir4
		gkir_kir4=0
       // g_pas = 1/11150 // mho/cm2
    }
}

// Initial all the astrocyte parameters.
proc initCell() {
    setSomaDendrCommonParams()
    addLeaves()
    setLeavesCommonParams()
}

// initCell()

Loading data, please wait...