Striatal FSI and SPN oscillation model (Chartove et al. 2020)

 Download zip file 
Help downloading and running models
Our model consists of three interconnected populations of single or double compartment Hodgkin-Huxley neurons: a feedforward network of FSIs, and two networks of SPNs (the D1 receptor-expressing "direct pathway" subnetwork and the D2 receptor-expressing "indirect pathway" subnetwork).
1 . Chartove JA, McCarthy MM, Pittman-Polletta BR, Kopell NJ (2020) A biophysical model of striatal microcircuits suggests gamma and beta oscillations interleaved at delta/theta frequencies mediate periodicity in motor control PLOS Computational Biology 16:1-30
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell;
Brain Region(s)/Organism: Striatum;
Cell Type(s): Neostriatum medium spiny direct pathway GABA cell; Neostriatum medium spiny indirect pathway GABA cell; Neostriatum fast spiking interneuron;
Channel(s): I Potassium; I M;
Gap Junctions: Gap junctions;
Receptor(s): Dopaminergic Receptor;
Transmitter(s): Dopamine; Gaba;
Simulation Environment: DynaSim;
Model Concept(s): Oscillations; Beta oscillations; Gamma oscillations; Theta oscillations;
Implementer(s): Chartove, Julia A K [chartove at bu dot edu];
Search NeuronDB for information about:  Neostriatum medium spiny direct pathway GABA cell; Neostriatum medium spiny indirect pathway GABA cell; Dopaminergic Receptor; I M; I Potassium; Dopamine; Gaba;
 * Based on code snippet from
 * Copyright © 2008, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms.

import java.awt.image.BufferedImage;
import java.awt.datatransfer.*;

public class ImageSelection implements Transferable {
    private static final DataFlavor flavors[] =
    private BufferedImage image;
    public ImageSelection(BufferedImage image) {
        this.image = image;
    // Transferable
    public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException {
        if (flavor.equals(flavors[0]) == false) {
            throw new UnsupportedFlavorException(flavor);
        return image;
    public DataFlavor[] getTransferDataFlavors() {
        return flavors;
    public boolean isDataFlavorSupported(DataFlavor
    flavor) {
        return flavor.equals(flavors[0]);