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;
function matrix = makeJPST(spikeTimesA, spikeTimesB, maxTime)

ticsPerSecond = 1e4;
dutyCycle = 0.5;
baseFreq = 2;
period = 1/baseFreq;


periodTics = period*ticsPerSecond;
maxTics = maxTime*ticsPerSecond;

matrix = sparse(periodTics, periodTics);
       
cellAspikes = spikeTimesA*ticsPerSecond;
cellBspikes = spikeTimesB*ticsPerSecond;
        
idxA = ceil(mod(cellAspikes, periodTics));
idxB = ceil(mod(cellBspikes, periodTics));

% 0 <= t < ticsPerSecond belongs to first bin
% ceil takes care of all but t = 0
idxA(find(idxA == 0)) = 1;
idxB(find(idxB == 0)) = 1;

periodIdxA = ceil(cellAspikes / periodTics);
periodIdxB = ceil(cellBspikes / periodTics);
        
for pIdx = unique(periodIdxA)'
    spIdxA = find(periodIdxA == pIdx);
    spIdxB = find(periodIdxB == pIdx);
    
    if(~isempty(spIdxA) & ~isempty(spIdxB))
        matrix(idxA(spIdxA), idxB(spIdxB)) = ...
            matrix(idxA(spIdxA), idxB(spIdxB)) + 1;
    end
end