Hello,
First of all, I'm entirely new to NEURON. I'm trying to implement Holt and Koch's modification of Mainen and Sejnowski's model i.e. remove the electrode and distribute synaptic input uniformly throughout the dendrites. I have the original model working (http://senselab.med.yale.edu/ModelDb/sh ... model=2488) and I see how to change the soma-injected current. However I'm completely clueless about how to 'distribute the synaptic input uniformly throughout the dendrites'.
Please feel free to just direct me to the right info page. Thanks in advance.
Modifying Mainen & Sejnowski a la Holt and Koch 1999
-
- Posts: 38
- Joined: Sun Oct 16, 2011 1:58 pm
-
- Site Admin
- Posts: 6299
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Modifying Mainen & Sejnowski a la Holt and Koch 1999
The Mainen & Sejnowski model didn't have any synaptic input. What kind of synaptic input did Holt & Koch implement?
-
- Posts: 38
- Joined: Sun Oct 16, 2011 1:58 pm
Re: Modifying Mainen & Sejnowski a la Holt and Koch 1999
Holt and Koch removed the somatic stimulation and "scattered synaptic input uniformly throughout the dendrites". From their paper:
"We used the same approximation as Bernander et al. (1991): synapses were not explicitly modeled, but the leak resistance and reversal potential was changed to reflect the time-averaged synaptic conductance. A synaptic conductance of 0.2 times the leak conductance and a reversal potential of 0 mV in every compartment supplied enough current to make the cell fire after 35 ms."
I'm not sure how or where the model deals with these parameters (e.g. leak resistance). Any help at all would be informative.
"We used the same approximation as Bernander et al. (1991): synapses were not explicitly modeled, but the leak resistance and reversal potential was changed to reflect the time-averaged synaptic conductance. A synaptic conductance of 0.2 times the leak conductance and a reversal potential of 0 mV in every compartment supplied enough current to make the cell fire after 35 ms."
I'm not sure how or where the model deals with these parameters (e.g. leak resistance). Any help at all would be informative.
-
- Site Admin
- Posts: 6299
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Modifying Mainen & Sejnowski a la Holt and Koch 1999
The Mainen & Sejnowski model already has a pas mechanism that has its own conductance density and reversal potential, not necessarily uniform over the entire cell. H&K's statement can't mean that they simply changed these parameters to 0.2*original conductance and 0 mV, respectively. Either they inserted an additonal mechanism into the affected sections, or they changed g_pas and e_pas to the electrical equivalent of a parallel combination of the original pas mechanism and their "tonic synaptic conductance." The latter would mean, in pseudocode,
where ts is the time at which synaptic input starts.
Assuming they did this in all sections called dend_something_or_other, a hoc procedure that emulate synaptic input would be
This leaves two questions:
1. How to tell NEURON to execute synhack() at the desired time. You don't want this to start at t=0, because it is important to see that the model is at rest (steady state) before synaptic onset.
2. How to undo these changes at initialization, so you can repeat simulations without having to exit NEURON and restaring
The answers to both of these involves using an instance of the FInitializeHandler class.
Code: Select all
at time ts
for each affected section
change g_pas to 1.2*g_pas
change e_pas to e_pas*5/6
Assuming they did this in all sections called dend_something_or_other, a hoc procedure that emulate synaptic input would be
Code: Select all
proc synhack() {
forsec "dend" {
g_pas *= 1.2
e_pas *= 5/6
}
}
1. How to tell NEURON to execute synhack() at the desired time. You don't want this to start at t=0, because it is important to see that the model is at rest (steady state) before synaptic onset.
2. How to undo these changes at initialization, so you can repeat simulations without having to exit NEURON and restaring
The answers to both of these involves using an instance of the FInitializeHandler class.
Code: Select all
///// after model setup and proc synhack(), but before calling run()
// assumes all dendrites have same value for g_pas and e_pas
// replace "some_secname" with the name of a real dendrite
some_secname {
GPAS0 = g_pas // save for future re-use
EPAS0 = e_pas
}
ts = some_value_you_choose // time of synaptic onset
objref cvode
cvode = new CVode()
proc hkhack_setup() {
forsec "dend" {
g_pas = GPAS0 // restore resting values
e_pas = EPAS0
}
cvode.event("synhack(ts)")
}
objref fih
fih = new FInitializeHandler("hkhack_setup(ts)")
-
- Posts: 38
- Joined: Sun Oct 16, 2011 1:58 pm
Re: Modifying Mainen & Sejnowski a la Holt and Koch 1999
Thanks so much. What do you mean by pas mechanism? Is this the passive i.e. leak current? Do you know where this is found in the code?
-
- Site Admin
- Posts: 6299
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Modifying Mainen & Sejnowski a la Holt and Koch 1999
Time to learn something about NEURON. You need to know about sections, density mechanisms (AKA "distributed mechanisms"), point processes, how NEURON deals with spatial discretization, and where to find stuff in the Programmer's Reference. Suggest you read "The NEURON simulation environment"--specifically the paper we published in Neural Computation. You'll also want to start browsing through the Programmer's Reference, especially all the keywords used in the code in my previous post. The Programmer's Reference is already on your machine if you're using MSWin, but it's also viewable online and downloadable as a zip file if you are using UNIX/Linux/OS X and want your own local copy. You'll also want to learn how to use the ModelView tool. Get all of this from http://www.neuron.yale.edu/neuron/docs
-
- Posts: 38
- Joined: Sun Oct 16, 2011 1:58 pm
Re: Modifying Mainen & Sejnowski a la Holt and Koch 1999
Yes it is. Thanks for your help. I'll get started with the basics.
Thanks again.
Thanks again.