Depolarization step during voltage clamp

When Python is the interpreter, what is a good
design for the interface to the basic NEURON
concepts.

Moderator: hines

Post Reply
alexandrapierri
Posts: 69
Joined: Wed Jun 17, 2015 5:31 pm

Depolarization step during voltage clamp

Post by alexandrapierri »

Hello

I am trying to do the trivial task of adding a depolarization step during pyramidal cell voltage clamp.
The holding potential is at -70mV and after some time I want to depolarize the cell to 0mV for 200ms. I treat this as two separate voltage clamps.
However, the following syntax yields a voltage clamp for t_vec =(0,800) but the cell fires normally for t_vec>800, therefore the second voltage clamp fails. I have tried couple different alternatives to this syntax but any recommendations would be very much appreciated

Code: Select all

    vclamp = h.VClamp(pyr.soma(0.5)) 
    if t_vec <= 800:
        vclamp.amp[0] = -70 #holding_v
        vclamp.dur[0] = 800.
    elif t_vec > 800:     
        vclamp.amp[0] = 0
        vclamp.dur[0] = 200. 
thank you,
Alexandra
ted
Site Admin
Posts: 6287
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Depolarization step during voltage clamp

Post by ted »

The first question to ask yourself is: why use an instance of the VClamp class to do this? In the Programmer's Reference, note that VClamp https://nrn.readthedocs.io/en/latest/py ... tml#VClamp is described as
Two electrode voltage clamp.
Last time I saw anyone using a two electrode voltage clamp, they were using sharp glass microelectrodes to do experiments on muscle cells or the cell bodies of neurons in big invertebrates like Aplysia californica. Also, because of the technical problems involved in such experiments, VClamp comes with a lot of extra complexity (actually emulates some of the properties of the electrode preamp and the feedback amplifier).

None of that is relevant to patch clamp. If your models involve neurons that are typically studied with patch clamp, you should probably use an instance of the the SEClamp class.

Next, your question:
I am trying to do the trivial task of adding a depolarization step during pyramidal cell voltage clamp.
The holding potential is at -70mV and after some time I want to depolarize the cell to 0mV for 200ms. I treat this as two separate voltage clamps.
Easy. Create a single instance of the SEClamp class that is attached to the segment you want to clamp, and use its amp* and dur* parameters to specify what it does. SEClamp implements the classical "three step" protocol, in which
from t==0 to dur1 the command potential is amp1
from t==dur1 to dur1+dur2 the command potential is amp2
from t==dur1+dur2 to dur1+dur2+dur3 the command potential is amp3
for t>dur1+dur2+dur3 the clamp is off (delivers no current to the cell)

SEClamp's rs parameter allows you to specify the value of a series resistance (like the series resistance of a patch electrode).
alexandrapierri
Posts: 69
Joined: Wed Jun 17, 2015 5:31 pm

Re: Depolarization step during voltage clamp

Post by alexandrapierri »

thank you Ted

this works great except that I am facing now an issue holding the potential to the exact voltage defined by the SEClamp.
Here are two examples: in the first case the voltage is held at -70 for 1000ms (but in praxis there are transients and the voltage deviates from -70mV) and in the second case I add a depolarization step to 0mV but the voltage is wiggly.


Links here:
file:///C:/Users/Alexandra/Desktop/transients%20in%20SEClamp_1.PNG
and another example here:
file:///C:/Users/Alexandra/Desktop/transients%20in%20SEClamp_2.PNG
ted
Site Admin
Posts: 6287
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Depolarization step during voltage clamp

Post by ted »

Sounds like the SEClamp's series resistance rs is too high for your particular model cell.

Looking at the documentation of SEClamp I see that the default value of rs is not mentioned. Not a problem--it's very easy to discover. Start python, then execute the following commands at the python prompt

from neuron import h
soma = h.Section(name='soma')
foo = h.SEClamp(soma(0.5))
print(foo.rs)

and the returned value is 1, which means 1 megohm. That would be OK to use with a cell that has a high input impedance, but it could be too big for a large cell or a cell with a very leaky membrane.

So assign a smaller value to rs--maybe 0.1 or 0.01 megohm, or even smaller. Does that take care of the problem?
alexandrapierri
Posts: 69
Joined: Wed Jun 17, 2015 5:31 pm

Re: Depolarization step during voltage clamp

Post by alexandrapierri »

Yes, this fixes the problem. :)

Thank you!
Post Reply