Response properties of neocort. neurons to temporally modulated noisy inputs (Koendgen et al. 2008)

 Download zip file 
Help downloading and running models
Accession:118631
Neocortical neurons are classified by current–frequency relationship. This is a static description and it may be inadequate to interpret neuronal responses to time-varying stimuli. Theoretical studies (Brunel et al., 2001; Fourcaud-Trocmé et al. 2003; Fourcaud-Trocmé and Brunel 2005; Naundorf et al. 2005) suggested that single-cell dynamical response properties are necessary to interpret ensemble responses to fast input transients. Further, it was shown that input-noise linearizes and boosts the response bandwidth, and that the interplay between the barrage of noisy synaptic currents and the spike-initiation mechanisms determine the dynamical properties of the firing rate. In order to allow a reader to explore such simulations, we prepared a simple NEURON implementation of the experiments performed in Köndgen et al., 2008 (see also Fourcaud-Trocmé al. 2003; Fourcaud-Trocmé and Brunel 2005). In addition, we provide sample MATLAB routines for exploring the sandwich model proposed in Köndgen et al., 2008, employing a simple frequdency-domain filtering. The simulations and the MATLAB routines are based on the linear response properties of layer 5 pyramidal cells estimated by injecting a superposition of a small-amplitude sinusoidal wave and a background noise, as in Köndgen et al., 2008.
References:
1 . Koendgen H, Geisler C, Wang XJ, Fusi S, Luescher HR, Giugliano M (2004) The dynamical response of single cells to noisy time-varying currents Soc Neurosci Abstr :640
2 . Köndgen H, Geisler C, Fusi S, Wang XJ, Lüscher HR, Giugliano M (2008) The dynamical response properties of neocortical neurons to temporally modulated noisy inputs in vitro. Cereb Cortex 18:2086-97 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network; Axon;
Brain Region(s)/Organism: Neocortex;
Cell Type(s): Neocortex L5/6 pyramidal GLU cell; Abstract Wang-Buzsaki neuron;
Channel(s): I Na,t; I K;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON; MATLAB;
Model Concept(s): Parameter Fitting; Methods; Rate-coding model neurons;
Implementer(s): Giugliano, Michele [mgiugliano at gmail.com]; Delattre, Vincent;
Search NeuronDB for information about:  Neocortex L5/6 pyramidal GLU cell; I Na,t; I K;
function y = model(x)
%
% This assumes that the following data structures are declared as global vars: 
%
% time  --> a vector containing the time axis (e.g. time = 0:dt:Tmax, in [s]
% pars  --> a vector or parameters
% Nz    --> the number of parameters called zeros
% Np    --> the number of parameters called poles
%
% The function expects as input 
% a vector, same size of time, containing the input waveform to the 'model'
%

global time;                    % time axis is a global var..
global pars Nz Np;              % such as the model-fit parameters, and their number

N      = length(time);          % Total number of samples is determined..
dt     = time(2) - time(1);     % the sampling interval is determined.. [s]
omega  = 1./(N*dt);             % The sampling intervalin the frequency domain is determined [Hz]..
f      = omega*(0:(N-1))';      % The frequency-axis is generated here..

xx  = (x - mean(x))/1000.;      % Preprocessing of the input waveform
                                % i.e. removing its offset and rescaling
                                % This is of course equivalent to rescaling
                                % the zero-frequency gain of the 'model'
                                % It was used here for convenience.
                                
%---------------  STATIC NON-LINEARITY is defined here --------------------
xx  = (xx - pars(1));
xx  = pars(2) * (1./ (1 + exp(-xx * pars(3))));

%--------------- FILTER DESIGNS, WITH Nz ZEROS AND Np POLES ALL REAL ------
%
% Our convention here is that 'pars' contains a total of (Nz+Np+2) + 1 pars 
%
% The first 4 elements of 'pars' defines the sigmoid (see above)
% then the 5th element is the DC-gain, the 6th is the fixed time-delay
% From the 7th element on, Nz zeros are indicated and Np poles follow..
%

pars(6) = abs(mod(pars(6),0.1));    % Let's check that the delay is > 0
                                    % and that its step increase is 0.1 

NUM = 1;                            % I will use NUM and DEN to 'accumulate'
DEN = 1;                            % the filter, in the frequency domain
G   = 1;                            % See the definition in the Fourier..
FF  = zeros(size(f)) + sqrt(-1) * f;% FF = j * f

if (Nz > 0), for h=7:(Nz+7-1),          
        NUM = NUM .* (FF + pars(h));
        G   = G    * (+pars(h));    
end; end;
% i.e.
% NUM = (j*f + zero_1) * (j*f + zero_2) * ....
%
if (Np > 0), for h=(Nz+7-1+1):(Nz+Np+7-2+1),
        DEN = DEN .* (FF + pars(h));
        G   = G    * (+1./pars(h)); 
end; end;
% i.e.
% DEN = (j*f + pole_1) * (j*f + pole_2) * ....
%

PHASELAG = - f * pars(6);   % Constant time-delay <=> linear frequency phase
%
% i.e.     (j*f + zero_1) * (j*f + zero_2) * .... * (1/zero_1)*(1/zero_2)*..
%          ----------------------------------------------------------------
%          (j*f + pole_1) * (j*f + pole_2) * .... * (1/pole_1)*(1/pole_2)*..
%
T        = (pars(5)/G) * NUM ./ DEN;     
mT       = abs(T);       
pT       = angle(T);;

% In order to anti-transform and go back to the time-domain, I need to
% respect the Hilbert-symmetry for real signals..
k1 = 2;
k2 = N/2;
k3 = N;
mT((k1+k2):N) =  mT(k2:-1:k1);
pT((k1+k2):N) = -pT(k2:-1:k1);
PHASELAG((k1+k2):N) = - PHASELAG(k2:-1:k1);

% Finally the filter (in the Fourier Domain)
T = mT .* exp(sqrt(-1) * (pT+PHASELAG));
%%--------------------------------------------------------------------------------------------------------------

tmp = fft(xx) .* T;             % I/O Filtering in the frequency-domain is here!
y   = real(ifft(tmp));          % Let's go back to the time-domain

y   = y + pars(4);              % Last addition to the model (the DC level)
end

Loading data, please wait...