Note
Go to the end to download the full example code
PyNEST EI-clustered network: Network ParametersΒΆ
Run this example as a Jupyter notebook:
See our guide for more information and troubleshooting.
A dictionary with parameters defining the network and neuron parameters.
import numpy as np
net_dict = {
############################################
# neuron parameters
############################################
# neuron model
"neuron_type": "iaf_psc_exp",
# Resting potential [mV]
"E_L": 0.0,
# Membrane capacitance [pF]
"C_m": 1.0,
# Membrane time constant for excitatory neurons [ms]
"tau_E": 20.0,
# Membrane time constant for inhibitory neurons [ms]
"tau_I": 10.0,
# Refractory period [ms]
"t_ref": 5.0,
# Threshold for excitatory neurons [mV]
"V_th_E": 20.0,
# Threshold for inhibitory neurons [mV]
"V_th_I": 20.0,
# Reset potential [mV]
"V_r": 0.0,
# synaptic time constant for excitatory synapses [ms]
"tau_syn_ex": 5.0,
# synaptic time constant for inhibitory synapses [ms]
"tau_syn_in": 5.0,
# synaptic delay [ms]
"delay": 0.1,
# Feed forward excitatory input [rheobase current]
"I_th_E": 1.25,
# Feed forward inhibitory input [rheobase current]
"I_th_I": 0.78,
# distribution of feed forward input,
# I_th*[1-delta_I_../2, 1+delta_I_../2]
"delta_I_xE": 0.0, # excitatory
"delta_I_xI": 0.0, # inhibitory
# initial membrane potential: either a float (in mV) to initialize all neurons to a fixed value
# or "rand" for randomized values: "V_th_{E,I}" - 20 * nest.random.lognormal(0, 1)
"V_m": "rand",
############################################
# network parameters
############################################
# number of excitatory neurons in the network
# Neurons per cluster N_E/n_clusters
"N_E": 4000,
# number of inhibitory neurons in the network
"N_I": 1000,
# Number of clusters
"n_clusters": 20,
# connection probabilities
# baseline_conn_prob[0, 0] E to E, baseline_conn_prob[0, 1] I to E,
# baseline_conn_prob[1, 0] E to I, baseline_conn_prob[1, 1] I to I
"baseline_conn_prob": np.array([[0.2, 0.5], [0.5, 0.5]]),
# inhibitory weight ratios - scaling like random balanced network
"gei": 1.2, # I to E
"gie": 1.0, # E to I
"gii": 1.0, # I to I
# additional scaling factor for all weights
# - can be used to scale weights with network size
"s": 1.0,
# fixed indegree - otherwise established with probability ps
"fixed_indegree": False,
# cluster network by "weight" or "probabilities"
"clustering": "weight",
# ratio excitatory to inhibitory clustering,
# rj = 0 means no clustering, which resembles a clustered network
# with a blanket of inhibition
"rj": 0.82,
# excitatory clustering factor,
# rep = 1 means no clustering, reselmbles a balanced random network
"rep": 6.0,
}