defaults
close all
ninputs=100
nruns =10
all = {};
all_ff = {};
all_ff_err = {};
all_br = {};
all_brturn = {};
all_brnoturn = {};
all_sparse = {};
all_sparse_err = {};
all_pops = {};
all_pops_err = {};
all_pops4 = {};
all_pops4_err = {};
all_ff4 = {};
all_ff4_err = {};
all_sparse4 = {};
all_sparse4_err = {};
Conditions = {'REP0G', 'REP0L'};
%Conditions = {'SEP0G', 'SEP0L'};
Turnovers = {0,5,10,15,20};
npatterns=4
for NCOND=1:length(Conditions)
CONDITION=Conditions{NCOND}
ss1 = zeros(5,10);
for NBT=1:length(Turnovers)
BT=Turnovers{NBT}
spks = zeros(npatterns, nruns);
pops = zeros(npatterns, nruns);
sparse = zeros(npatterns, nruns);
branch_syns = zeros(npyrs*nbranches, nruns);
br_hists = zeros(ninputs, 12, nruns);
clustering = zeros(ninputs, nruns);
brstrengths = zeros(ninputs, npyrs*nbranches);
brweights = zeros(ninputs, npyrs*nbranches, nruns);
nrnweights = zeros(ninputs, npyrs, nruns);
brweightcors = zeros(ninputs, ninputs, nruns);
brsyncors= zeros(ninputs, ninputs, nruns);
nrnweightcors = zeros(ninputs, ninputs, nruns);
brcommon = zeros(ninputs, ninputs, nruns);
clust_all = {};
clust_all = cell(9,1);
ISI=120;
bsyns_turn = zeros(npyrs*nbranches, nruns);
bsyns_noturn = zeros(npyrs*nbranches, nruns);
for run = 1:nruns
fn = sprintf('./data/%s_%d_%d/spikesperpattern.dat', CONDITION, BT,run-1);
spk = load( fn);
recallspikes = spk(:, 1:npyrs)/(stimduration/1000);
pop = recallspikes>CUTOFF; %Hz
spks(:, run) = sum(recallspikes,2);
pops(:, run) = sum(pop,2);
for npat=1:npatterns
sparse(npat, run) = trevrolls(recallspikes(npat,:) );
end
ff = sprintf('./data/%s_%d_%d/synstate.dat', CONDITION, BT,run-1);
ss = load(ff);
for i=1:size(ss,1)
bid=ss(i,2);
nid=ss(i,3);
srcid=ss(i,5);
bstrength = ss(i,6);
w=ss(i,7);
if (srcid >= 0 && bid <= npyrs*nbranches)
brweights(srcid+1, bid+1, run) = brweights(srcid+1, bid+1, run) + w;
brstrengths(srcid+1, bid+1)=bstrength;
nrnweights(srcid+1, nid+1,run) = nrnweights(srcid+1, nid+1,run) + w;
end
if (srcid >= 0 && bid <= npyrs*nbranches && w > 0.7)
branch_syns( bid+1, run) = branch_syns( bid+1, run)+1;
branchid = mod(bid, nbranches);
if (branchid < BT)
bsyns_turn(bid+1, run) = bsyns_turn(bid+1, run)+1;
else
bsyns_noturn(bid+1, run) = bsyns_noturn(bid+1, run)+1;
end
end
end
end
all_brturn{NCOND, NBT} = bsyns_turn;
all_brnoturn{NCOND, NBT} = bsyns_noturn;
all_br{NCOND,NBT} = branch_syns;
for patidx=1:4
m_p = mean(pops(patidx,:), 2);
s_p = stderr(pops(patidx, :) );
all_pops4{NCOND,NBT, patidx} = m_p;
all_pops4_err{NCOND,NBT, patidx} = s_p;
m_p = mean(spks(patidx,:), 2)
s_p = stderr(spks(patidx, :) );
all_ff4{NCOND,NBT,patidx} = m_p/npyrs;
all_ff4_err{NCOND,NBT,patidx} = s_p/npyrs;
m_p = mean(sparse(patidx,:), 2);
s_p = stderr(sparse(patidx, :) );
all_sparse4{NCOND, NBT,patidx} = m_p;
all_sparse4_err{NCOND, NBT, patidx} = s_p;
end
for patidx=1:1
m_p = mean(pops(patidx,:), 2);
s_p = stderr(pops(patidx, :) );
all_pops{NCOND,NBT} = m_p;
all_pops_err{NCOND,NBT} = s_p;
m_p = mean(spks(patidx,:), 2);
ss1(NBT, :) = spks(patidx,:) /npyrs;
s_p = stderr(spks(patidx, :) );
all_ff{NCOND,NBT} = m_p/npyrs;
all_ff_err{NCOND,NBT} = s_p/npyrs;
m_p = mean(sparse(patidx,:), 2);
s_p = stderr(sparse(patidx, :) );
all_sparse{NCOND, NBT} = m_p;
all_sparse_err{NCOND, NBT} = s_p;
end
end
end
%
% figure()
% z = [];
%
% for y=1:length(Turnovers)
%
% z(:,y) = all_ff{1, y};
% end
% mesh(z)
% tit='FF'
% title(tit);
% export_fig(sprintf('./figs/%s_mesh_%s.pdf',CONDITION, tit), '-transparent')
close all
for NCOND=1:length(Conditions)
CONDITION=Conditions{NCOND}
nm = [];
nm_err = [];
nturn = [];
nturn_err = [];
nnoturn = [];
nnoturn_err = [];
sss = zeros(5,10)
for NBT=1:length(Turnovers)
BT=Turnovers{NBT};
sb = sum(all_br{NCOND,NBT}>3) ./ sum(all_br{NCOND,NBT}>0);
sss(NBT,:) = 100*sb';
nm(NBT) = mean(sb);
nm_err(NBT) = stderr(sb);
sb = sum(all_brturn{NCOND,NBT}>3) ./ sum(all_brturn{NCOND,NBT}>0);
nturn(NBT) = mean(sb);
nturn_err(NBT) = stderr(sb);
sb = sum(all_brnoturn{NCOND,NBT}>3) ./ sum(all_brnoturn{NCOND,NBT}>0);
nnoturn(NBT) = mean(sb);
nnoturn_err(NBT) = stderr(sb);
end
figure;
hold on
errorbar(100*nm, 100*nm_err, 'b');
errorbar(100*nturn, 100*nturn_err, 'm');
errorbar(100*nnoturn, 100*nnoturn_err, 'c');
ylim([10, 100]);
legend( 'All branches', 'Branches with Turnover', 'Branches Without Turnover');
set(gca, 'XTick', [1:5])
set(gca, 'XTickLabel', [0:5:20])
title(sprintf('%s', CONDITION));
xlabel('Number of branches with turnover');
ylabel('Percentage of branches containing clusters');
export_fig(sprintf('./figs/%s_BRS.pdf',CONDITION), '-transparent');
csvwrite(sprintf('./figs/%s_BRS.csv',CONDITION), [100*nm; 100*nm_err; 100*nturn; 100*nturn_err; 100*nnoturn; 100*nnoturn_err]);
end
figure;
hold on
mat = cell2mat(all_sparse);
mat_err = cell2mat(all_sparse_err);
errorbar( mat(1,:), mat_err(1,:), 'g');
errorbar( mat(2,:), mat_err(2,:), 'r');
ylim([.2, 1.1]);
legend( 'Somatic PRPs', 'Local PRPs');
set(gca, 'XTick', [1:5])
set(gca, 'XTickLabel', [0:5:20])
%title(sprintf('%s', CONDITION));
xlabel('Number of branches with turnover per neuron');
ylabel('Active Population Sparsity');
export_fig(sprintf('./figs/%s_SPARSE.pdf',CONDITION), '-transparent');
csvwrite(sprintf('./figs/%s_SPARSE.csv',CONDITION), [mat; mat_err] )
figure;
hold on
mat = 100*cell2mat(all_pops)/npyrs;
mat_err = 100*cell2mat(all_pops_err)/npyrs;
errorbar( mat(1,:), mat_err(1,:), 'g');
errorbar( mat(2,:), mat_err(2,:), 'r');
ylim([10, 40]);
legend( 'Somatic PRPs', 'Local PRPs');
set(gca, 'XTick', [1:5])
set(gca, 'XTickLabel', [0:5:20])
%title(sprintf('%s', CONDITION));
xlabel('Number of branches with turnover per neuron');
ylabel('Active Population (%)');
export_fig(sprintf('./figs/%s_POPS.pdf',CONDITION), '-transparent');
figure;
hold on
mat = cell2mat(all_ff);
mat_err = cell2mat(all_ff_err);
errorbar( mat(1,:), mat_err(1,:), 'g');
errorbar( mat(2,:), mat_err(2,:), 'r');
ylim([0, 80]);
legend( 'Somatic PRPs', 'Local PRPs');
set(gca, 'XTick', [1:5])
set(gca, 'XTickLabel', [0:5:20])
%title(sprintf('%s', CONDITION));
xlabel('Number of branches with turnover per neuron');
ylabel('Average firing rate [Hz] ');
export_fig(sprintf('./figs/%s_FF.pdf',CONDITION), '-transparent');
csvwrite(sprintf('./figs/%s_FF.csv',CONDITION), [ mat; mat_err]);
% close all
% col=hsv(5);
% for NCOND=1:length(Conditions)
% CONDITION=Conditions{NCOND}
% figure
% hold on
% for NBT=1:length(Turnovers)
% BT=Turnovers{NBT}
% errorbar(all_pops{NCOND, NBT}, all_pops_err{NCOND, NBT}, 'color', col(NBT,:) )
%
% end
% legend('0','5','10','15','20 Branches')
% title(sprintf('%s', CONDITION));
% xlabel('Pattern #');
% ylabel('% Active Neurons');
%
% hold off
% export_fig(sprintf('./figs/%s_POPS.pdf',CONDITION), '-transparent')
% end
for patidx=1:4
figure;
hold on
mat = cell2mat(all_sparse4);
mat = mat(:,:,patidx);
mat_err = cell2mat(all_sparse4_err);
mat_err = mat_err(:,:,patidx)
errorbar( mat(1,:), mat_err(1,:), 'g');
errorbar( mat(2,:), mat_err(2,:), 'r');
ylim([.2, 1.1]);
legend( 'Somatic PRPs', 'Local PRPs');
set(gca, 'XTick', [1:5])
set(gca, 'XTickLabel', [0:5:20])
%title(sprintf('%s', CONDITION));
xlabel('Number of branches with turnover per neuron');
ylabel(sprintf('Active Population Sparsity %d', patidx));
export_fig(sprintf('./figs/%s_SPARSE%d.pdf',CONDITION, patidx), '-transparent');
end