ModelDB is moving. Check out our new site at The corresponding page is

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

 Download zip file 
Help downloading and running models
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.
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]
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;
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];
Search NeuronDB for information about:  I A; I_K,Na; Gaba; Glutamate;
%format compact

function makeAllExternalInput(corrRudolph, upFreq, noiseFreq, ...
                              maxTime, allowVar, randSeed, numCells)

rand('seed', randSeed)
randSeed = rand('seed');

disp(['Setting random seed to ' num2str(randSeed)])

path = [pwd '/INDATA/'];

% allowVar = 1 --> mother/daughter generation
% allowVar = 0 --> fixed number of doubletts for all spikes train-version

% allowVar = 1

nAMPA = 127;
nGABA = 93;

% corrRudolph = 0.5;
% upFreq = 20/9;
downFreq = 1e-9;
% maxTime = 50;
% noiseFreq = 0.2;

disp('Bör fundera på om bruset ska vara korrelerat mellan cellerna eller inte')

for nCtr = 1:numCells

        disp('Generating mother/daughter input')
        insignalAMPA = makeDaughterInsignal(corrRudolph, nAMPA, ...
                                             upFreq, downFreq, maxTime);

        insignalGABA = makeDaughterInsignal(corrRudolph, nGABA, ...
                                            upFreq, downFreq, maxTime);
        noiseAMPA = makeDaughterNoise(corrRudolph, nAMPA, noiseFreq, maxTime);
        noiseGABA = makeDaughterNoise(corrRudolph, nGABA, noiseFreq, maxTime);
        disp('Generating input with constant number of doubletts')  
        insignalAMPA = makeTrainInsignal(corrRudolph, nAMPA, ...
                                         upFreq, downFreq, maxTime);

        insignalGABA = makeTrainInsignal(corrRudolph, nGABA, ...
                                         upFreq, downFreq, maxTime);
        noiseAMPA = makeTrainNoise(corrRudolph, nAMPA, noiseFreq, maxTime);
        noiseGABA = makeTrainNoise(corrRudolph, nGABA, noiseFreq, maxTime);
%    keyboard
    writeInput([path 'AMPAinsignal_' num2str(nCtr) '_%d'], insignalAMPA);
    writeInput([path 'GABAinsignal_' num2str(nCtr) '_%d'], insignalGABA);

    writeInput([path 'AMPAnoise_' num2str(nCtr) '_%d'], noiseAMPA);
    writeInput([path 'GABAnoise_' num2str(nCtr) '_%d'], noiseGABA);



fid = fopen([path 'inputInfo.txt'], 'w');

fprintf(fid, '%s\n', 'Upstate/downstate insignal only');
fprintf(fid, '%f\n', corrRudolph);
fprintf(fid, '%f\n', upFreq);
fprintf(fid, '%f\n', noiseFreq);
fprintf(fid, '%f\n', maxTime);
fprintf(fid, '%d\n', allowVar);
fprintf(fid, '%d\n', randSeed);
fprintf(fid, '%d\n', numCells);


Loading data, please wait...