Hippocampal CA3 network and circadian regulation (Stanley et al. 2013)

 Download zip file 
Help downloading and running models
This model produces the hippocampal CA3 neural network model used in the paper below. It has two modes of operation, a default mode and a circadian mode. In the circadian mode, parameters are swept through a range of values. This model can be quite easily adapted to produce theta and gamma oscillations, as certain parameter sweeps will reveal (see Figures). BASH scripts interact with GENESIS 2.3 to implement parameter sweeps. The model contains four cell types derived from prior papers. CA3 pyramidal are derived from Traub et al (1991); Basket, stratum oriens (O-LM), and Medial Septal GABAergic (MSG) interneurons are taken from Hajos et al (2004).
1 . Stanley DA, Talathi SS, Parekh MB, Cordiner DJ, Zhou J, Mareci TH, Ditto WL, Carney PR (2013) Phase shift in the 24-hour rhythm of hippocampal EEG spiking activity in a rat model of temporal lobe epilepsy. J Neurophysiol 110:1070-86 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network; Neuron or other electrically excitable cell;
Brain Region(s)/Organism: Hippocampus; Medial Septum;
Cell Type(s): Hippocampus CA3 pyramidal GLU cell; Hippocampus CA3 interneuron basket GABA cell; Hippocampus CA3 stratum oriens lacunosum-moleculare interneuron; Hippocampus septum medial GABAergic neuron;
Channel(s): I Na,t; I A; I K; I h; I K,Ca; I Calcium;
Gap Junctions:
Receptor(s): GabaA; AMPA;
Transmitter(s): Gaba; Glutamate;
Simulation Environment: GENESIS; MATLAB;
Model Concept(s): Epilepsy; Brain Rhythms; Circadian Rhythms;
Implementer(s): Stanley, David A ;
Search NeuronDB for information about:  Hippocampus CA3 pyramidal GLU cell; Hippocampus CA3 interneuron basket GABA cell; GabaA; AMPA; I Na,t; I A; I K; I h; I K,Ca; I Calcium; Gaba; Glutamate;
// genesis 2.2
// Kerstin Menne
// Luebeck, 24.10.2001

functions to create recording sites

// create single efield object
function place_recsite(recording_site_name, x, y, z, scale)
        str recording_site_name 
        float x, y, z // positions of recording_site
	float scale // scale factor for efield object
        create efield {recording_site_name}
        setfield ^ scale {scale} x {x} y {y} z {z}

        // call {recording_site_name} RECALC // calculate distances
	// input_for_electrodes does it now

// create one multisite-electrode
function electrode(electrode_name,recording_site,x,y,zmin,zmax,dz,scale)
	str electrode_name, recording_site 
 	float scale, x, y
	float zmin, zmax, dz // recording sites from zmin to zmax with distance
			     // dz (parallel to neurons)
        float i // help variables
        int count = 0

	if (!({exists {electrode_name}}))
         	create neutral {electrode_name}
	// different recordings sites of electrode "electrode_name" 
	// are installed and 
	// named {electrode_name}{recording_site}[{count}]
	for (i=zmin; i<=zmax; i=i+dz)
        	place_recsite {electrode_name}{recording_site}[{count}] \
				{x} {y} {i} {scale} 
                count = count +1

function dave_electrode(electrode_name,recsite_name)
	str electrode_name
	str recsite_name

	pushe {electrode_name}

	str loop_chan
	foreach loop_chan ({el /pyr_arr/pyr[]/#[TYPE=symcompartment]})
		addmsg {loop_chan} {electrode_name}{recsite_name}[] CURRENT Im 0.0
	call {electrode_name}{recsite_name}[] RECALC // calculate
	//distances to
	//compartments that deliver input


electrode /e90  {e_recsite1} 43e-6 57e-6 \
		{e_z1_min} {e_z1_max} {e_dz1} {e_scale1}

dave_electrode /e90 {e_recsite1} // electrodes.g

Loading data, please wait...