Gap junction coupled network of striatal fast spiking interneurons (Hjorth et al. 2009)

 Download zip file 
Help downloading and running models
Accession:118389
Gap junctions between striatal FS neurons has very weak ability to synchronise spiking. Input uncorrelated between neighbouring neurons is shunted, while correlated input is not.
Reference:
1 . Hjorth J, Blackwell KT, Kotaleski JH (2009) Gap junctions between striatal fast-spiking interneurons regulate spiking activity and synchronization as a function of cortical activity. J Neurosci 29:5276-86 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network; Neuron or other electrically excitable cell; Synapse; Channel/Receptor; Dendrite;
Brain Region(s)/Organism: Basal ganglia;
Cell Type(s): Neostriatum fast spiking interneuron;
Channel(s): I A; I_K,Na;
Gap Junctions: Gap junctions;
Receptor(s):
Gene(s):
Transmitter(s): Gaba; Glutamate;
Simulation Environment: GENESIS; MATLAB;
Model Concept(s): Activity Patterns; Ion Channel Kinetics; Synchronization; Detailed Neuronal Models;
Implementer(s): Hjorth, Johannes [hjorth at csc.kth.se];
Search NeuronDB for information about:  I A; I_K,Na; Gaba; Glutamate;
/
FSGJ_Hjorth2009
FIGS5
BlueGene
FIGS
INDATA
UTDATA
a_channel.g *
a_channel_MOD.g
ampa_channel.g *
channelsMOD.g
channelsSobol.g
channelsSobolSynch.g
checkAllEqual.m *
findSpikes.m *
fsConnect.g *
fsInhomogeneNeurons.g *
fsInputFromFile.g
fsInputInject.g *
fsNeuron.g *
fsSomaOutput.g *
gaba_channel.g *
inspectTrace.m
k13_channel.g *
k13_channel_MOD.g
k3132_channel.g *
k3132_channel_MOD.g
makeAllSynapticInput.m
makeCorrPairFigure.m
makeDaughterNoise.m *
makeFSMorph.m
makeFSMorphMOD.m
makeFSrandomNetwork.m
makeShuffleCorrCrossCorr.m
makeShuntingSensitivityFigure.m
makeTrainNoise.m *
na_channel.g *
na_channel_MOD.g
poissonMaxTime.m *
protodefs.g
protodefsInhomogene.g
protodefsMOD.g
protodefsSobol.g
protodefsSobolSynch.g
readTenFSsensitivity.m
readTenFSsensitivityOLD.m
runFSsensitivity.m
runTenFSsensitivity.m
simFourFSsaveGJcur.g
writeFSMODinfo.m
writeInput.m *
writeSobolSynchInfo.m
                            
% [spikeTimes] = findSpikes(data, time)
% returns cell-array with spiketimes for different runs
% data = matrix, size is runLen rows and runNum cols

function [spikeTimes] = findSpikes(data, time)

[runLen runs] = size(data);

   
thresh = -0.035; % Spike filter threshold
events = (data > thresh).*data + (data <= thresh)*thresh;
                        
% A spike is a datapoint D above threshhold where the datapoints to
% the left and right are lower than D.    
            
% events(i-1) < events(i)
chkLeft = events(2:end,:) > events(1:end-1,:);
left  = [zeros(1, runs); chkLeft];
clear chkLeft


% events(i) > events(i+1)
chkRight = events(1:end-1,:) > events(2:end,:);
right = [chkRight; zeros(1, runs)]; 
clear chkRight

spikes = left & right;
clear left right

            
% The above definition misses spikes where two consequtive points
% above threshold are identical, lets find them too...
newspikes = [(events(1:end-1,:) == events(2:end,:)) ...
             & (events(1:end-1,:) > thresh); zeros(1, runs)];

spikes = spikes + newspikes;
clear newspikes

if(max(spikes) > 1)
    error('Matlab:OUCH!', 'Warning binary spikes matrix corrupt!')
end

for runIdx=1:runs
    spikeIdx = find(spikes(:, runIdx));    
    spikeTimes{runIdx} = time(spikeIdx);
end