Biologically Constrained Basal Ganglia model (BCBG model) (Lienard, Girard 2014)

 Download zip file 
Help downloading and running models
Accession:150206
We studied the physiology and function of the basal ganglia through the design of mean-field models of the whole basal ganglia. The parameterizations are optimized with multi-objective evolutionary algorithm to respect best a collection of numerous anatomical data and electrophysiological data. The main outcomes of our study are: • The strength of the GPe to GPi/SNr connection does not support opposed activities in the GPe and GPi/SNr. • STN and MSN target more the GPe than the GPi/SNr. • Selection arises from the structure of the basal ganglia, without properly segregated direct and indirect pathways and without specific inputs from pyramidal tract neurons of the cortex. Selection is enhanced when the projection from GPe to GPi/SNr has a diffuse pattern.
Reference:
1 . Liénard J, Girard B (2014) A biologically constrained model of the whole basal ganglia addressing the paradoxes of connections and selection. J Comput Neurosci 36:445-68 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network; Axon; Channel/Receptor; Dendrite; Neural mass;
Brain Region(s)/Organism: Basal ganglia;
Cell Type(s): Neostriatum medium spiny direct pathway GABA cell; Neostriatum medium spiny indirect pathway GABA cell; Neocortex U1 L5B pyramidal pyramidal tract GLU cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell; Substantia nigra pars reticulata principal GABA cell; Subthalamus nucleus projection neuron; Globus pallidus neuron; Neostriatum fast spiking interneuron; Neostriatum spiny neuron;
Channel(s):
Gap Junctions:
Receptor(s): GabaA; AMPA; NMDA;
Gene(s):
Transmitter(s): Gaba; Glutamate;
Simulation Environment: C or C++ program;
Model Concept(s): Parameter Fitting; Pathophysiology; Parkinson's; Winner-take-all; Action Selection/Decision Making;
Implementer(s): Girard, Benoit [girard at isir.upmc.fr]; Liénard, Jean [lienard at isir.upmc.fr];
Search NeuronDB for information about:  Neostriatum medium spiny direct pathway GABA cell; Neostriatum medium spiny indirect pathway GABA cell; Neocortex U1 L5B pyramidal pyramidal tract GLU cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell; Substantia nigra pars reticulata principal GABA cell; GabaA; AMPA; NMDA; Gaba; Glutamate;
#include "bcbg2.hpp"

// the implementation of nucleus cell is not finished, and code for it is not released. The skeleton of functions is left here as to not break the compilation...

void BCBG2::NucleusCells::initialize_cells(int cells_n, float Smax, float Sini, float V_threshold, float k, float V_rest, float R, float Rm, float Ri, float* dists, float* diams, int compartment_nb, const char* id, int nucleus_number)
{
}

int BCBG2::NucleusCells::affect_ion_channel(float A, float D, float Vrev, bool is_nmda)
{
  return(0);
}

void BCBG2::NucleusCells::add_afferent_axon(NucleusCells* nc, float cs, int T, float C, float distance_factor, int ion_channel_n)
{
}

void BCBG2::NucleusCells::add_efferent_axon(NucleusCells* nc, float cs, int T, float C, float distance_factor, int ion_channel_n)
{
}

void BCBG2::NucleusCells::add_afferent_synapse(NucleusCells* source_nucleus, float cs, int T, float C, float distance_factor, int ion_channel_n)
{
}

bool BCBG2::NucleusCells::set_afferent(float A, float D, int S, float C, int T, float cs, float distance, NucleusCells* N)
{
  return(0);
}

bool BCBG2::NucleusCells::add(float A, float D, float Vrev, float C, int T, float cs, float distance, NucleusCells* N)
{
  return(0);
}

bool BCBG2::NucleusCells::nmda(float A, float D, float Vrev, float C, int T, float cs, float distance, NucleusCells* N)
{
  return(0);
}

bool BCBG2::NucleusCells::add_ampa_gaba_nmda(float A, float D, float Vrev, float C, int T, float cs, float distance, NucleusCells* N, bool is_nmda)
{
  return(0);
}

void BCBG2::NucleusCells::set_dt(float value)
{
}


void BCBG2::NucleusCells::fast_add_g(int cell_i, int ion_channel_i, float distance_factor, float t_sent)
{
}


void BCBG2::NucleusCells::add_g(int cell_i, int ion_channel_i, float distance_factor, float t_sent)
{
}


void BCBG2::NucleusCells::update_cells()
{
}

void BCBG2::NucleusCells::set_rate(float rate)
{
}

void BCBG2::NucleusCells::set_rate(float rate, bool reset)
{
}

void BCBG2::NucleusCells::prepare_next_iteration()
{
}

void BCBG2::NucleusCells::display_summary(std::ostream& os)
{
}


void BCBG2::NucleusCells::display(std::ostream& os)
{
}

void BCBG2::NucleusCells::save()
{
}

void BCBG2::NucleusCells::restore()
{
}

Loading data, please wait...