pre-Bötzinger complex variability (Fietkiewicz et al. 2016)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:184732
" ... Based on experimental observations, we developed a computational model that can be embedded in more comprehensive models of respiratory and cardiovascular autonomic control. Our simulation results successfully reproduce the variability we observed experimentally. The in silico model suggests that age-dependent variability may be due to a developmental increase in mean synaptic conductance between preBötC neurons. We also used simulations to explore the effects of stochastic spiking in sensory relay neurons. Our results suggest that stochastic spiking may actually stabilize modulation of both respiratory rate and its variability when the rate changes due to physiological demand. "
Reference:
1 . Fietkiewicz C, Shafer GO, Platt EA, Wilson CG (2016) Variability in respiratory rhythm generation: In vitro and in silico models Communications in Nonlinear Science and Numerical Simulation 32:158-168
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism:
Cell Type(s): Respiratory column neuron;
Channel(s):
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Noise Sensitivity; Development;
Implementer(s):
/* Use run.hoc to start simulation. Creates a raster plot similar to Figure 2C in "Variability in respiratory rhythm generation: in vitro and in silico models", C Fietkiewicz, GO Shafer, EA Platt, CG Wilson, Communications in Nonlinear Science and Numerical Simulation, Volume 32, March 2016, Pages 158–168 (doi: 10.1016/j.cnsns.2015.08.018).
NOTE: To get more bursts, increase the simulation time.
Author contact: chris.fietkiewicz@case.edu
Author website: http://filer.case.edu/cxf47
*/

//******************************Pacemaker Template***************************
begintemplate PM
public is_art
public init, topol, basic_shape, subsets, geom, biophys, geom_nseg, biophys_inhomo
public synlist, x, y, z, position, connect2target

public soma
public all

objref synlist

proc init() {
  topol()
  subsets()
  geom()
  biophys()
  geom_nseg()
  synlist = new List()
  synapses()
  x = y = z = 0 // only change via position
}

create soma

proc topol() { local i
  basic_shape()
}
proc basic_shape() {
  soma {pt3dclear() pt3dadd(0, 0, 0, 1) pt3dadd(15, 0, 0, 1)}
}

objref all
proc subsets() { local i
  objref all
  all = new SectionList()
    soma all.append()

}
proc geom() {
  forsec all {  /*area = 3000 */ L = diam = 30.9019  }
  soma {  /*area = 3000 */ L = diam = 30.9019  }
}
//external lambda_f
proc geom_nseg() {
//  forsec all { nseg = int((L/(0.1*lambda_f(100))+.9)/2)*2 + 1  }
}
proc biophys() {
  soma {
    Ra = 100
	cm = 0.7
    insert na
      gmax_na = 0.0013333
    insert nap
      gmax_nap = 0.00002907
    insert k
      gmax_k = 0.000533333
    insert leak
      gmax_leak = 0.00003091
  }
}
proc biophys_inhomo(){}
proc position() { local i
  soma for i = 0, n3d()-1 {
    pt3dchange(i, $1-x+x3d(i), $2-y+y3d(i), $3-z+z3d(i), diam3d(i))
  }
  x = $1  y = $2  z = $3
}
obfunc connect2target() { localobj nc //$o1 target point process, optional $o2 returned NetCon
  soma nc = new NetCon(&v(1), $o1)
  nc.threshold = 0
  if (numarg() == 2) { $o2 = nc } // for backward compatibility
  return nc
}
objref syn_
proc synapses() {
  /* Itonic0 */   soma syn_ = new ExpSyn(0.5)  synlist.append(syn_)
    syn_.tau = 5
  /* Isyn1 */   soma syn_ = new ExpSyn(0.5)  synlist.append(syn_)
    syn_.tau = 5
}
func is_art() { return 0 }

endtemplate PM

//***********************TONIC CELL TEMPLATE***************************

begintemplate NoisyTonicECells_NetStim
public pp, connect2target, x, y, z, position, is_art
objref pp

proc init() {
	pp = new NetStim()
    pp.number = 1e+09
    pp.start = $1
    pp.noise = $2
	pp.seed($3)
	pp.interval = $4
	
}
func is_art() { return 1 }
obfunc connect2target() { localobj nc
  nc = new NetCon(pp, $o1)
  if (numarg() == 2) { $o2 = nc }
  return nc
}
proc position(){x=$1  y=$2  z=$3}
endtemplate NoisyTonicECells_NetStim

Loading data, please wait...