Neural transformations on spike timing information (Tripp and Eliasmith 2007)

 Download zip file 
Help downloading and running models
Accession:136380
" ... Here we employ computational methods to show that an ensemble of neurons firing at a constant mean rate can induce arbitrarily chosen temporal current patterns in postsynaptic cells. ..."
Reference:
1 . Tripp B, Eliasmith C (2007) Neural populations can induce reliable postsynaptic currents without observable spike rate changes or precise spike timing. Cereb Cortex 17:1830-40 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism:
Cell Type(s): Abstract integrate-and-fire leaky neuron;
Channel(s):
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: MATLAB;
Model Concept(s): Activity Patterns; Temporal Pattern Generation;
Implementer(s): Tripp, Bryan [bryan.tripp at mail.mcgill.ca]; Eliasmith, Chris [celiasmith at uwaterloo.ca];
% This script produces the figure 2 panels that rely on data produced by
% experiment scripts (panels F and G). 

% plot error vs. coefficient of variation with spike jitter 
covdata = load('data_COV.mat');
meanErr = mean(covdata.meanErr,3);
sdErr = std(covdata.meanErr,0,3);

figure(1)
loglog(covdata.meanCOV, meanErr', 'k')
set(gcf, 'Position', [360 669 308 265])
set(gca, 'NextPlot', 'add')
for i = 1:size(meanErr, 1)
    for j = [1 6] 
        loglog([covdata.meanCOV(i) covdata.meanCOV(i)], [meanErr(i,j)-sdErr(i,j) meanErr(i,j)+sdErr(i,j)], 'k')
    end
end
for i = 1:size(covdata.noise,1)
    h = text(covdata.meanCOV(3), meanErr(3,i), sprintf('%i ms', 1000*covdata.noise(i,1)))
end
% izdata = load('data_Izhikevich.mat')
% izErr = mean(izdata.meanErr,3);
% plot(izdata.meanCOV(1), izErr(1,:), 'ko');
% plot(izdata.meanCOV(2), izErr(2,:), 'kx');
% xlabel('Mean COV')
% ylabel('MSE')
% set(gca, 'XLim', [.1 2])
% 
% % plot error vs. coefficient of variation with noise spikes 
% j0 = 1:3; % indices of noise conditions with jitter = 0ms
% j4 = 4:6; % indices of noise conditions with jitter = 4ms
% 
% covdata = load('data_COVNS.mat');
% meanErr = mean(covdata.meanErr,3);
% sdErr = std(covdata.meanErr,0,3);
% 
% figure(2)
% loglog(covdata.meanCOV, meanErr(:,j0)', 'k')
% set(gca, 'NextPlot', 'add')
% loglog(covdata.meanCOV, meanErr(:,j4)', 'k:')
% set(gcf, 'Position', [360 669 308 265])
% 
% for i = 1:size(meanErr, 1)
%     for j = [j0(1) j0(end)] 
%         loglog([covdata.meanCOV(i) covdata.meanCOV(i)], [meanErr(i,j)-sdErr(i,j) meanErr(i,j)+sdErr(i,j)], 'k')
%     end
% end
% for i = j0
%     h = text(covdata.meanCOV(3), meanErr(3,i), sprintf('%i %%', 100*covdata.noise(i,2)))
% end
% xlabel('Mean COV')
% ylabel('MSE')
% set(gca, 'XLim', [.1 2])

Loading data, please wait...