{
“cells”: [
{

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“# Tutorial 5: Point-Neuron Network Models (with PointNet)n”, “n”, “In this chapter we will create a heterogeneous network of point-model neurons and use the PointNet simulator which will run the network using the NEST simulator. As with the previous BioNet examples will create both a internal recurrently-connected network of different node types, and an external network of "virtual" neurons that will drive the firing of the internal neurons. And we’ll show how to drive network activity by using a current clamp.n”, “n”, “PointNet, like BioNet and the other simulators, use the SONATA data format for representing networks, setting up simulations and saving results. Thus the tools used to build and display biophysically detailed networks in the previous chapters will work just the same. n”, “n”, “Requirements:n”, “* bmtkn”, “* NEST 2.11+”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“## 1. Building the networkn”, “n”, “There are two ways of generating a network of point-neurons. Either we can take the existing biophysical network created in the previous chapters and make some minor adjustments to the neuron models being used. Or we can build a new network from scratch using the BMTK Builder.n”, “n”, “### Converting networksn”, “We want to take the BioNet V1 network and change parameters so that the individual neurons are using point models. Luckily there parameters are stored in the node and edge "types" csv files, thus we can easily change them with a simple text editor (emacs, vi, sublime-text, etc). Here is an example of the old V1_node_types.csv: “

]

}, {

“cell_type”: “code”, “execution_count”: 1, “metadata”: {}, “outputs”: [

{
“data”: {
“text/html”: [

“<div>n”, “<style scoped>n”, ” .dataframe tbody tr th:only-of-type {n”, ” vertical-align: middle;n”, ” }n”, “n”, ” .dataframe tbody tr th {n”, ” vertical-align: top;n”, ” }n”, “n”, ” .dataframe thead th {n”, ” text-align: right;n”, ” }n”, “</style>n”, “<table border="1" class="dataframe">n”, ” <thead>n”, ” <tr style="text-align: right;">n”, ” <th></th>n”, ” <th>node_type_id</th>n”, ” <th>ei</th>n”, ” <th>morphology_file</th>n”, ” <th>model_processing</th>n”, ” <th>pop_name</th>n”, ” <th>location</th>n”, ” <th>model_template</th>n”, ” <th>model_type</th>n”, ” <th>dynamics_params</th>n”, ” </tr>n”, ” </thead>n”, ” <tbody>n”, ” <tr>n”, ” <th>0</th>n”, ” <td>100</td>n”, ” <td>e</td>n”, ” <td>Scnn1a.swc</td>n”, ” <td>aibs_perisomatic</td>n”, ” <td>Scnn1a</td>n”, ” <td>L4</td>n”, ” <td>ctdb:Biophys1.hoc</td>n”, ” <td>biophysical</td>n”, ” <td>472363762_fit.json</td>n”, ” </tr>n”, ” <tr>n”, ” <th>1</th>n”, ” <td>101</td>n”, ” <td>i</td>n”, ” <td>Pvalb.swc</td>n”, ” <td>aibs_perisomatic</td>n”, ” <td>PV</td>n”, ” <td>L4</td>n”, ” <td>ctdb:Biophys1.hoc</td>n”, ” <td>biophysical</td>n”, ” <td>472912177_fit.json</td>n”, ” </tr>n”, ” <tr>n”, ” <th>2</th>n”, ” <td>102</td>n”, ” <td>e</td>n”, ” <td>NaN</td>n”, ” <td>NaN</td>n”, ” <td>LIF_exc</td>n”, ” <td>VisL4</td>n”, ” <td>nrn:IntFire1</td>n”, ” <td>point_process</td>n”, ” <td>IntFire1_exc_1.json</td>n”, ” </tr>n”, ” <tr>n”, ” <th>3</th>n”, ” <td>103</td>n”, ” <td>i</td>n”, ” <td>NaN</td>n”, ” <td>NaN</td>n”, ” <td>LIF_inh</td>n”, ” <td>VisL4</td>n”, ” <td>nrn:IntFire1</td>n”, ” <td>point_process</td>n”, ” <td>IntFire1_inh_1.json</td>n”, ” </tr>n”, ” </tbody>n”, “</table>n”, “</div>”

], “text/plain”: [

” node_type_id ei morphology_file model_processing pop_name location \n”, “0 100 e Scnn1a.swc aibs_perisomatic Scnn1a L4 n”, “1 101 i Pvalb.swc aibs_perisomatic PV L4 n”, “2 102 e NaN NaN LIF_exc VisL4 n”, “3 103 i NaN NaN LIF_inh VisL4 n”, “n”, ” model_template model_type dynamics_params n”, “0 ctdb:Biophys1.hoc biophysical 472363762_fit.json n”, “1 ctdb:Biophys1.hoc biophysical 472912177_fit.json n”, “2 nrn:IntFire1 point_process IntFire1_exc_1.json n”, “3 nrn:IntFire1 point_process IntFire1_inh_1.json “

]

}, “execution_count”: 1, “metadata”: {}, “output_type”: “execute_result”

}

], “source”: [

“import pandas as pdn”, “n”, “pd.read_csv(‘sources/chapter05/converted_network/V1_node_types_bionet.csv’, sep=’ ‘)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“and here is the V1_node_types.csv used for PointNet:”

]

}, {

“cell_type”: “code”, “execution_count”: 2, “metadata”: {}, “outputs”: [

{
“data”: {
“text/html”: [

“<div>n”, “<style scoped>n”, ” .dataframe tbody tr th:only-of-type {n”, ” vertical-align: middle;n”, ” }n”, “n”, ” .dataframe tbody tr th {n”, ” vertical-align: top;n”, ” }n”, “n”, ” .dataframe thead th {n”, ” text-align: right;n”, ” }n”, “</style>n”, “<table border="1" class="dataframe">n”, ” <thead>n”, ” <tr style="text-align: right;">n”, ” <th></th>n”, ” <th>node_type_id</th>n”, ” <th>ei</th>n”, ” <th>morphology_file</th>n”, ” <th>model_processing</th>n”, ” <th>pop_name</th>n”, ” <th>location</th>n”, ” <th>model_template</th>n”, ” <th>model_type</th>n”, ” <th>dynamics_params</th>n”, ” </tr>n”, ” </thead>n”, ” <tbody>n”, ” <tr>n”, ” <th>0</th>n”, ” <td>100</td>n”, ” <td>e</td>n”, ” <td>NaN</td>n”, ” <td>NaN</td>n”, ” <td>Scnn1a</td>n”, ” <td>L4</td>n”, ” <td>nest:iaf_psc_alpha</td>n”, ” <td>point_process</td>n”, ” <td>472363762_point.json</td>n”, ” </tr>n”, ” <tr>n”, ” <th>1</th>n”, ” <td>101</td>n”, ” <td>i</td>n”, ” <td>NaN</td>n”, ” <td>NaN</td>n”, ” <td>PV</td>n”, ” <td>L4</td>n”, ” <td>nest:iaf_psc_alpha</td>n”, ” <td>point_process</td>n”, ” <td>472912177_point.json</td>n”, ” </tr>n”, ” <tr>n”, ” <th>2</th>n”, ” <td>102</td>n”, ” <td>e</td>n”, ” <td>NaN</td>n”, ” <td>NaN</td>n”, ” <td>LIF_exc</td>n”, ” <td>VisL4</td>n”, ” <td>nest:iaf_psc_alpha</td>n”, ” <td>point_process</td>n”, ” <td>IntFire1_exc_point.json</td>n”, ” </tr>n”, ” <tr>n”, ” <th>3</th>n”, ” <td>103</td>n”, ” <td>i</td>n”, ” <td>NaN</td>n”, ” <td>NaN</td>n”, ” <td>LIF_inh</td>n”, ” <td>VisL4</td>n”, ” <td>nest:iaf_psc_alpha</td>n”, ” <td>point_process</td>n”, ” <td>IntFire1_inh_point.json</td>n”, ” </tr>n”, ” </tbody>n”, “</table>n”, “</div>”

], “text/plain”: [

” node_type_id ei morphology_file model_processing pop_name location \n”, “0 100 e NaN NaN Scnn1a L4 n”, “1 101 i NaN NaN PV L4 n”, “2 102 e NaN NaN LIF_exc VisL4 n”, “3 103 i NaN NaN LIF_inh VisL4 n”, “n”, ” model_template model_type dynamics_params n”, “0 nest:iaf_psc_alpha point_process 472363762_point.json n”, “1 nest:iaf_psc_alpha point_process 472912177_point.json n”, “2 nest:iaf_psc_alpha point_process IntFire1_exc_point.json n”, “3 nest:iaf_psc_alpha point_process IntFire1_inh_point.json “

]

}, “execution_count”: 2, “metadata”: {}, “output_type”: “execute_result”

}

], “source”: [

“pd.read_csv(‘sources/chapter05/converted_network/V1_node_types.csv’, sep=’ ‘)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“Changes:n”, “* model_type - PointNet will not support the "biophysical" model_type and only support "point_process" neuron models.n”, “* model_template - nrn:IntFire1 and ctdb:Biophys1.hoc are special directives for running NEURON based models. Instead we replaced them with the "nest:\<nest-model\>" directive (note we can replace iaf_psc_alpha with any valid NEST model).n”, “* dynamics_params - We have new json parameters files for the new NEST based models.n”, “* model_processing - "aibs_perisomatic" is a special command for adjusting the morphology of biophysical models, and since our NEST-based models do not have a morphology we set it to none which tells the simulator to use the models as-is (note: you can implement custom model_processing functions for PointNet that will be explained later).”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“We must also adjust the edges_types.csv files:”

]

}, {

“cell_type”: “code”, “execution_count”: 3, “metadata”: {

“scrolled”: false

}, “outputs”: [

{
“data”: {
“text/html”: [

“<div>n”, “<style scoped>n”, ” .dataframe tbody tr th:only-of-type {n”, ” vertical-align: middle;n”, ” }n”, “n”, ” .dataframe tbody tr th {n”, ” vertical-align: top;n”, ” }n”, “n”, ” .dataframe thead th {n”, ” text-align: right;n”, ” }n”, “</style>n”, “<table border="1" class="dataframe">n”, ” <thead>n”, ” <tr style="text-align: right;">n”, ” <th></th>n”, ” <th>edge_type_id</th>n”, ” <th>target_query</th>n”, ” <th>source_query</th>n”, ” <th>syn_weight</th>n”, ” <th>dynamics_params</th>n”, ” <th>distance_range</th>n”, ” <th>delay</th>n”, ” <th>target_sections</th>n”, ” <th>weight_function</th>n”, ” <th>model_template</th>n”, ” <th>weight_sigma</th>n”, ” </tr>n”, ” </thead>n”, ” <tbody>n”, ” <tr>n”, ” <th>0</th>n”, ” <td>100</td>n”, ” <td>pop_name==’Scnn1a’</td>n”, ” <td>ei==’e’</td>n”, ” <td>50.00000</td>n”, ” <td>ExcToExc.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>gaussianLL</td>n”, ” <td>static_synapse</td>n”, ” <td>50.0</td>n”, ” </tr>n”, ” <tr>n”, ” <th>1</th>n”, ” <td>101</td>n”, ” <td>pop_name==’LIF_exc’</td>n”, ” <td>ei==’e’</td>n”, ” <td>50.00000</td>n”, ” <td>instanteneousExc.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>gaussianLL</td>n”, ” <td>static_synapse</td>n”, ” <td>50.0</td>n”, ” </tr>n”, ” <tr>n”, ” <th>2</th>n”, ” <td>102</td>n”, ” <td>model_type==’biophysical’&amp;ei==’i’</td>n”, ” <td>ei==’i’</td>n”, ” <td>50.00000</td>n”, ” <td>InhToInh.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>wmax</td>n”, ” <td>static_synapse</td>n”, ” <td>NaN</td>n”, ” </tr>n”, ” <tr>n”, ” <th>3</th>n”, ” <td>103</td>n”, ” <td>model_type==’point_process’&amp;ei==’i’</td>n”, ” <td>ei==’i’</td>n”, ” <td>50.00000</td>n”, ” <td>instanteneousInh.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>wmax</td>n”, ” <td>static_synapse</td>n”, ” <td>NaN</td>n”, ” </tr>n”, ” <tr>n”, ” <th>4</th>n”, ” <td>104</td>n”, ” <td>model_type==’biophysical’&amp;ei==’e’</td>n”, ” <td>ei==’i’</td>n”, ” <td>50.00000</td>n”, ” <td>InhToExc.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>wmax</td>n”, ” <td>static_synapse</td>n”, ” <td>NaN</td>n”, ” </tr>n”, ” <tr>n”, ” <th>5</th>n”, ” <td>105</td>n”, ” <td>model_type==’point_process’&amp;ei==’e’</td>n”, ” <td>ei==’i’</td>n”, ” <td>30.00000</td>n”, ” <td>instanteneousInh.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>wmax</td>n”, ” <td>static_synapse</td>n”, ” <td>NaN</td>n”, ” </tr>n”, ” <tr>n”, ” <th>6</th>n”, ” <td>106</td>n”, ” <td>pop_name==’PV’</td>n”, ” <td>ei==’e’</td>n”, ” <td>0.00035</td>n”, ” <td>ExcToInh.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>wmax</td>n”, ” <td>static_synapse</td>n”, ” <td>NaN</td>n”, ” </tr>n”, ” <tr>n”, ” <th>7</th>n”, ” <td>107</td>n”, ” <td>pop_name==’LIF_inh’</td>n”, ” <td>ei==’e’</td>n”, ” <td>50.00000</td>n”, ” <td>instanteneousExc.json</td>n”, ” <td>NaN</td>n”, ” <td>2.0</td>n”, ” <td>NaN</td>n”, ” <td>wmax</td>n”, ” <td>static_synapse</td>n”, ” <td>NaN</td>n”, ” </tr>n”, ” </tbody>n”, “</table>n”, “</div>”

], “text/plain”: [

” edge_type_id target_query source_query syn_weight \n”, “0 100 pop_name==’Scnn1a’ ei==’e’ 50.00000 n”, “1 101 pop_name==’LIF_exc’ ei==’e’ 50.00000 n”, “2 102 model_type==’biophysical’&ei==’i’ ei==’i’ 50.00000 n”, “3 103 model_type==’point_process’&ei==’i’ ei==’i’ 50.00000 n”, “4 104 model_type==’biophysical’&ei==’e’ ei==’i’ 50.00000 n”, “5 105 model_type==’point_process’&ei==’e’ ei==’i’ 30.00000 n”, “6 106 pop_name==’PV’ ei==’e’ 0.00035 n”, “7 107 pop_name==’LIF_inh’ ei==’e’ 50.00000 n”, “n”, ” dynamics_params distance_range delay target_sections \n”, “0 ExcToExc.json NaN 2.0 NaN n”, “1 instanteneousExc.json NaN 2.0 NaN n”, “2 InhToInh.json NaN 2.0 NaN n”, “3 instanteneousInh.json NaN 2.0 NaN n”, “4 InhToExc.json NaN 2.0 NaN n”, “5 instanteneousInh.json NaN 2.0 NaN n”, “6 ExcToInh.json NaN 2.0 NaN n”, “7 instanteneousExc.json NaN 2.0 NaN n”, “n”, ” weight_function model_template weight_sigma n”, “0 gaussianLL static_synapse 50.0 n”, “1 gaussianLL static_synapse 50.0 n”, “2 wmax static_synapse NaN n”, “3 wmax static_synapse NaN n”, “4 wmax static_synapse NaN n”, “5 wmax static_synapse NaN n”, “6 wmax static_synapse NaN n”, “7 wmax static_synapse NaN “

]

}, “execution_count”: 3, “metadata”: {}, “output_type”: “execute_result”

}

], “source”: [

“pd.read_csv(‘sources/chapter05/converted_network/V1_V1_edge_types.csv’, sep=’ ‘)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“* model_template has been changed to use a NEST based model type (static_synapse)n”, “* Use different dynamics_parameter files n”, “* It’s important to readjust syn_weight as values appropiate for NEURON based models are oftern wrong for NEST based models. n”, “n”, “Notice we don’t have to change any of the hdf5 files. The network topology remains the same making it a powerful tool for comparing networks of different levels of resolution.”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“### Building a model from scratch.n”, “n”, “We can use the BMTK Network Builder to create new network files just for point-based modelingn”, “n”, “#### V1 Networkn”, “n”, “First lets build a "V1" network of 300 cells, split into 4 different populations “

]

}, {

“cell_type”: “code”, “execution_count”: 4, “metadata”: {}, “outputs”: [], “source”: [

“from bmtk.builder.networks import NetworkBuildern”, “from bmtk.builder.auxi.node_params import positions_columinarn”, “n”, “net = NetworkBuilder("V1")n”, “net.add_nodes(N=80, # Create a population of 80 neuronsn”, ” positions=positions_columinar(N=80, center=[0, 50.0, 0], max_radius=30.0, height=100.0),n”, ” pop_name=’Scnn1a’, location=’VisL4’, ei=’e’, # optional parametersn”, ” model_type=’point_process’, # Tells the simulator to use point-based neuronsn”, ” model_template=’nest:iaf_psc_alpha’, # tells the simulator to use NEST iaf_psc_alpha modelsn”, ” dynamics_params=’472363762_point.json’ # File containing iaf_psc_alpha mdoel parametersn”, ” )n”, “n”, “net.add_nodes(N=20, pop_name=’PV’, location=’VisL4’, ei=’i’,n”, ” positions=positions_columinar(N=20, center=[0, 50.0, 0], max_radius=30.0, height=100.0),n”, ” model_type=’point_process’,n”, ” model_template=’nest:iaf_psc_alpha’,n”, ” dynamics_params=’472912177_point.json’)n”, “n”, “net.add_nodes(N=200, pop_name=’LIF_exc’, location=’L4’, ei=’e’,n”, ” positions=positions_columinar(N=200, center=[0, 50.0, 0], min_radius=30.0, max_radius=60.0, height=100.0),n”, ” model_type=’point_process’,n”, ” model_template=’nest:iaf_psc_alpha’,n”, ” dynamics_params=’IntFire1_exc_point.json’)n”, “n”, “net.add_nodes(N=100, pop_name=’LIF_inh’, location=’L4’, ei=’i’,n”, ” positions=positions_columinar(N=100, center=[0, 50.0, 0], min_radius=30.0, max_radius=60.0, height=100.0),n”, ” model_type=’point_process’,n”, ” model_template=’nest:iaf_psc_alpha’,n”, ” dynamics_params=’IntFire1_inh_point.json’)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“We can now go ahead and created synaptic connections then build and save our network.”

]

}, {

“cell_type”: “code”, “execution_count”: 5, “metadata”: {}, “outputs”: [

{
“data”: {
“text/plain”: [

“<bmtk.builder.connection_map.ConnectionMap at 0x7ffbbc337748>”

]

}, “execution_count”: 5, “metadata”: {}, “output_type”: “execute_result”

}

], “source”: [

“from bmtk.builder.auxi.edge_connectors import distance_connectorn”, “n”, “## E-to-E connectionsn”, “net.add_edges(source={‘ei’: ‘e’}, target={‘pop_name’: ‘Scnn1a’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 0.34, ‘d_max’: 300.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=3.0,n”, ” delay=2.0,n”, ” dynamics_params=’ExcToExc.json’,n”, ” model_template=’static_synapse’)n”, “n”, “net.add_edges(source={‘ei’: ‘e’}, target={‘pop_name’: ‘LIF_exc’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 0.34, ‘d_max’: 300.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=3.0,n”, ” delay=2.0,n”, ” dynamics_params=’instanteneousExc.json’,n”, ” model_template=’static_synapse’)n”, “n”, “n”, “### Generating I-to-I connectionsn”, “net.add_edges(source={‘ei’: ‘i’}, target={‘pop_name’: ‘PV’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 1.0, ‘d_max’: 160.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=-3.0,n”, ” delay=2.0,n”, ” dynamics_params=’InhToInh.json’,n”, ” model_template=’static_synapse’)n”, “n”, “net.add_edges(source={‘ei’: ‘i’}, target={‘ei’: ‘i’, ‘pop_name’: ‘LIF_inh’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 1.0, ‘d_max’: 160.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=-3.0,n”, ” delay=2.0,n”, ” dynamics_params=’instanteneousInh.json’,n”, ” model_template=’static_synapse’)n”, “n”, “### Generating I-to-E connectionsn”, “net.add_edges(source={‘ei’: ‘i’}, target={‘ei’: ‘e’, ‘pop_name’: ‘Scnn1a’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 1.0, ‘d_max’: 160.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=-3.0,n”, ” delay=2.0,n”, ” dynamics_params=’InhToExc.json’,n”, ” model_template=’static_synapse’)n”, “n”, “net.add_edges(source={‘ei’: ‘i’}, target={‘ei’: ‘e’, ‘pop_name’: ‘LIF_exc’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 1.0, ‘d_max’: 160.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=-3.0,n”, ” delay=2.0,n”, ” dynamics_params=’instanteneousInh.json’,n”, ” model_template=’static_synapse’)n”, “n”, “### Generating E-to-I connectionsn”, “net.add_edges(source={‘ei’: ‘e’}, target={‘pop_name’: ‘PV’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 0.26, ‘d_max’: 300.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=3.0,n”, ” delay=2.0,n”, ” dynamics_params=’ExcToInh.json’,n”, ” model_template=’static_synapse’)n”, “n”, “n”, “net.add_edges(source={‘ei’: ‘e’}, target={‘pop_name’: ‘LIF_inh’},n”, ” connection_rule=distance_connector,n”, ” connection_params={‘d_weight_min’: 0.0, ‘d_weight_max’: 0.26, ‘d_max’: 300.0, ‘nsyn_min’: 3, ‘nsyn_max’: 7},n”, ” syn_weight=3.0,n”, ” delay=2.0,n”, ” dynamics_params=’instanteneousExc.json’,n”, ” model_template=’static_synapse’)”

]

}, {

“cell_type”: “code”, “execution_count”: 6, “metadata”: {}, “outputs”: [], “source”: [

“net.build()n”, “net.save_nodes(output_dir=’sim_ch05/network’)n”, “net.save_edges(output_dir=’sim_ch05/network’)”

]

}, {

“cell_type”: “markdown”, “metadata”: {

“collapsed”: true

}, “source”: [

“### Building external networkn”, “n”, “Next we want to create an external network of "virtual cells" with spike-trains that will synapse onto our V1 cells and drive activity. We will call this external network "LGN" and contains 500 excitatory cells.”

]

}, {

“cell_type”: “code”, “execution_count”: 7, “metadata”: {}, “outputs”: [], “source”: [

“lgn = NetworkBuilder(‘LGN’)n”, “lgn.add_nodes(N=500, pop_name=’tON’, potential=’exc’, model_type=’virtual’)n”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“We will use a special function for setting the number of synapses between the LGN –> V1 cells. The select_source_cells function will be called during the build process.”

]

}, {

“cell_type”: “code”, “execution_count”: 8, “metadata”: {}, “outputs”: [

{
“data”: {
“text/plain”: [

“<bmtk.builder.connection_map.ConnectionMap at 0x7ffbbc32f588>”

]

}, “execution_count”: 8, “metadata”: {}, “output_type”: “execute_result”

}

], “source”: [

“import numpy as npn”, “n”, “def select_source_cells(sources, target, nsources_min=10, nsources_max=30, nsyns_min=3, nsyns_max=12):n”, ” total_sources = len(sources)n”, ” nsources = np.random.randint(nsources_min, nsources_max)n”, ” selected_sources = np.random.choice(total_sources, nsources, replace=False)n”, ” syns = np.zeros(total_sources)n”, ” syns[selected_sources] = np.random.randint(nsyns_min, nsyns_max, size=nsources)n”, ” return synsn”, “n”, “lgn.add_edges(source=lgn.nodes(), target=net.nodes(pop_name=’Scnn1a’),n”, ” iterator=’all_to_one’,n”, ” connection_rule=select_source_cells,n”, ” connection_params={‘nsources_min’: 10, ‘nsources_max’: 25},n”, ” syn_weight=15.0,n”, ” delay=2.0,n”, ” dynamics_params=’ExcToExc.json’,n”, ” model_template=’static_synapse’)n”, “n”, “lgn.add_edges(source=lgn.nodes(), target=net.nodes(pop_name=’PV1’),n”, ” connection_rule=select_source_cells,n”, ” connection_params={‘nsources_min’: 15, ‘nsources_max’: 30},n”, ” iterator=’all_to_one’,n”, ” syn_weight=5.0,n”, ” delay=2.0,n”, ” dynamics_params=’ExcToInh.json’,n”, ” model_template=’static_synapse’)n”, “n”, “lgn.add_edges(source=lgn.nodes(), target=net.nodes(pop_name=’LIF_exc’),n”, ” connection_rule=select_source_cells,n”, ” connection_params={‘nsources_min’: 10, ‘nsources_max’: 25},n”, ” iterator=’all_to_one’,n”, ” syn_weight= 10.0,n”, ” delay=2.0,n”, ” dynamics_params=’instanteneousExc.json’,n”, ” model_template=’static_synapse’)n”, “n”, “lgn.add_edges(source=lgn.nodes(), target=net.nodes(pop_name=’LIF_inh’),n”, ” connection_rule=select_source_cells,n”, ” connection_params={‘nsources_min’: 15, ‘nsources_max’: 30},n”, ” iterator=’all_to_one’,n”, ” syn_weight=10.0,n”, ” delay=2.0,n”, ” dynamics_params=’instanteneousExc.json’,n”, ” model_template=’static_synapse’)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“Finally we build and save our lgn network.”

]

}, {

“cell_type”: “code”, “execution_count”: 9, “metadata”: {}, “outputs”: [], “source”: [

“lgn.build()n”, “lgn.save_nodes(output_dir=’sim_ch05/network’)n”, “lgn.save_edges(output_dir=’sim_ch05/network’)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“## 2. Setting up PointNet Environmentn”, “n”, “### Directory Structuren”, “n”, “Before running a simulation, we will need to create the runtime environment, including parameter files, run-script and configuration files. If using the tutorial these files will already be in place. Otherwise we can use a command-line:n”, “`bash\n", "$ python -m bmtk.utils.sim_setup        \\\n", "    --network sim_ch05/network/         \\\n", "    --include-examples                  \\\n", "    --tstop 3000.0                      \\\n", "    pointnet sim_ch05/\n", "\n", "`n”, “n”, “or”

]

}, {

“cell_type”: “code”, “execution_count”: 10, “metadata”: {}, “outputs”: [], “source”: [

“from bmtk.utils.sim_setup import build_env_pointnetn”, “n”, “build_env_pointnet(base_dir=’sim_ch05’, n”, ” network_dir=’sim_ch05/network’,n”, ” tstop=3000.0, n”, ” dt=0.01,n”, ” include_examples=True, # Copies components filesn”, ” )”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“The network files are written to circuit_config.json and the simulation parameters are set in simulation_config. The simulation time is set to run for 3000.0 ms (tstop). We also specify a membrane-report to record V_m property of 4 cells (gids 0, 80, 100, 300 - one from each cell-type). In general, all the parameters needed to setup and start a simulation are found in the config files, and adjusting network/simulation conditions can be done by editing these json files in a text editor.”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“#### lgn inputn”, “n”, “We need to provide our LGN external network cells with spike-trains so they can activate our recurrent network. Previously we showed how to do this by generating csv files. We can also use NWB files, which are a common format for saving electrophysiological data in neuroscience.n”, “n”, “We can use any NWB file generated experimentally or computationally, but for this example we will use a preexsting one. First download the file:n”, “`bash\n", " $ cd sim_ch05\n", " $ wget https://github.com/AllenInstitute/bmtk/raw/develop/docs/examples/spikes_inputs/lgn_spikes.h5\n", "`n”, “Then we must edit the simulation_config.json file to tell the simulator to find the nwb file and which network to associate it with.n”, “n”, “`json\n", "{\n", "  \"inputs\": {\n", "    \"LGN_spikes\": {\n", "      \"input_type\": \"spikes\",\n", "      \"module\": \"h5\",\n", "      \"input_file\": \"$BASE_DIR/lgn_spikes.h5\",\n", "      \"node_set\": \"LGN\"\n", "    }\n", "  }\n", "}\n", "`n”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“## 3. Running the simulationn”, “n”, “The call to sim_setup created a file run_pointnet.py which we can run directly in a command line:n”, “`bash\n", "$ python run_pointnet.py config.json\n", "`n”, “or if you have mpi setup:n”, “n”, “`bash\n", "$ mpirun -np $NCORES python run_pointnet.py config.json\n", "`n”, “n”, “Or we can run it directly”

]

}, {

“cell_type”: “code”, “execution_count”: 11, “metadata”: {}, “outputs”: [

{

“name”: “stdout”, “output_type”: “stream”, “text”: [

“2020-08-25 15:34:08,266 [INFO] Created log filen”, “2020-08-25 15:34:08,307 [INFO] Batch processing nodes for LGN/0.n”, “2020-08-25 15:34:08,361 [INFO] Batch processing nodes for V1/0.n”, “2020-08-25 15:34:08,449 [INFO] Setting up output directoryn”, “2020-08-25 15:34:08,450 [INFO] Building cells.n”, “2020-08-25 15:34:08,495 [INFO] Building recurrent connectionsn”, “2020-08-25 15:34:08,628 [INFO] Build virtual cell stimulations for LGN_spikesn”, “2020-08-25 15:34:53,999 [INFO] Network created.n”, “2020-08-25 15:34:54,463 [INFO] Starting Simulationn”, “2020-08-25 15:35:01,445 [INFO] Simulation finished, finalizing results.n”, “2020-08-25 15:35:02,240 [INFO] Done.n”

]

}

], “source”: [

“from bmtk.simulator import pointnetn”, “n”, “configure = pointnet.Config.from_json(‘sim_ch05/simulation_config.json’)n”, “configure.build_env()n”, “network = pointnet.PointNetwork.from_config(configure)n”, “sim = pointnet.PointSimulator.from_config(configure, network)n”, “sim.run()”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“## 4. Analyzing resultsn”, “n”, “Results of the simulation, as specified in the config, are saved into the output directory. Using the analyzer functions, we can do things like plot the raster plot”

]

}, {

“cell_type”: “code”, “execution_count”: 13, “metadata”: {}, “outputs”: [

{
“data”: {

“image/png”: “iVBORw0KGgoAAAANSUhEUgAAAZIAAAEWCAYAAABMoxE0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADt0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjByYzEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy/xvVyzAAAgAElEQVR4nO29eZwV1Znw/33opruRZgnYIgoGNEQWxR4FlHEJ4hJjTDD5aIzj67TR0UzAz5gxiZK88yaYSd5xSdSYyCRmXFrf/KJRk9ExcWJENKNRBAmILAoKBgQBm7A0S2PT5/dHVTXVt+9SdWu/9/l+Pvdz61bVPed5zjlVzznP2cQYg6IoiqKUS5+kBVAURVGyjRoSRVEUJRBqSBRFUZRAqCFRFEVRAqGGRFEURQmEGhJFURQlEGpIFCVFiMjzIvIPScuhKH5QQ6JUDSLy3yLy3TznZ4jI+yJSKyJnish8EdkhIutKhDdKRIyI/C7n/P8TkTnhSq8o6UUNiVJNtAL/S0Qk5/zlwC+MMZ3AbuA+4Bs+wj1ZRP42JBkVJXOoIVGqif8EhgKnOydE5CPABcCDAMaYV40xDwHv+Aj3VuD7hS6KyNUiskZEtonIkyJyhOvaOSKyym4B/QSQnP9eKSIrReSvIvJ7EfmofV5E5A4R2SIiO0VkmYgc50NmRQkNNSRK1WCM2Qv8Cvh71+kvAKuMMUsDBD0X+LiInJ17QUSmA/9mxzMceBd42L52KPBr4F+AQ4G3gVNd/50BfAv4PNAE/A/wS/vyucAZwMeBQXb4bQF0UJSyUUOiVButwEUi0mD//nv7XBD2YrVIvpfn2mXAfcaYxcaYDuCbwFQRGQWcDyw3xjxmjPkQuBN43/XffwT+zRiz0na7/V+g2W6VfAgMAMYCYt+zKaAeilIWakiUqsIY8yLwAXChiBwDTAH+vxCC/g9gmIh8Juf8EVitECf+dqyWw5H2tfWua8b9G/go8CMR2S4i24FtWK6vI40xzwE/Ae4GtojIPSIyMAQ9FMU3akiUauRBrJbI/wJ+b4zZHDRAY8x+4CbgX+nZz7ERyyAAICL9sfpp3gM2ASNd18T9G8uofNkYM9j16WeM+ZMd513GmJOA8VguLj8DBBQlNNSQKNXIg8DZwNXkuLVEpI/t9upr/ZQGEanzGO5DQANwnuvcL4EviUiziNRjuacWGGPWAb8FJojI50WkFvgn4HDXf38KfFNEJtiyDRKRi+3jySJysoj0xRpptg/o8p4EihIeakiUqsN+if8J6A88mXP5DKw+j98BR9nHz3gM9wDwbWCI69yzwP8BHsdqgRwDfNG+9gFwMXAzlrtrDPCS67+/AW4BHhaRncAbwKfsywOBnwN/xXKdtQG3eZFTUcJGdGMrRVEUJQjaIlEURVECEYshEZEaEfmziDxl/x4tIgvsSVqPOD5oEam3f6+xr4+KQz5FURSlfOJqkVwHrHT9vgW4wxjzMSwf71X2+auAv9rn77DvUxRFUVJM5IZEREYAn8YaZ+8McZwOPGbf0gpcaB/P4OAomseAs/Ksi6QoiqKkiNoY4rgTuAFrFi5YY+i32zN1ATZgTc7C/l4PYIzpFJEd9v0fuAMUkWuAawD69+9/0tixYyNVQFGUiNm9Fdq3QONh0L8p+/FkQJ7XXnvtA2NMKJFGakhE5AJgizHmNRGZFla4xph7gHsAJk2aZBYtWhRW0NXFy3PhlblwykyYOjNpaZRq5o7jYMd2GDQA/tl+nqMon/niSQJHtw5gX1188rjSVP72tXdL/8EbUbu2TgU+a+/r8DCWS+tHwGB7AhbACKxZvtjfIwHs64PQheii45W5sGO99R0HL8+1HuSXY4pPST9OmTh8IgwaaRkNhyjK5ykze8eTBI5unR0gNZb+ccYb8jMfqSExxnzTGDPCGDMKaxLWc8aYy4D5wEX2bS3AE/bxk/Zv7OvPGZ3oEh1xP1RxGy4l/Thl4v3X4Z/f6NnyiKJ8Tp3ZO54kcHSrrQdzwNI/znhDfuaTmkdyI3C9iKzB6gO51z5/LzDUPn89MDsh+bKJ3xp/3A9VmIVYWzeVQbEyUW75zELZcHT7xI3xVuYieuYzP7Nd+0hc3HGcVbsbNNIqLIWohL4Rr7rGQW56VkL6ZogPP/yQDRs2sG/fPuvEzo3Q1Ql9amHgEcX/nCQdu6xP/QDrExENDQ2MGDGCvn379jgvIq8ZYyaFEUcco7aUuDhl5sEXWDEcd8Iz/2L9zuLLzquuQfBqENwuu6kze/+Ok7iM2Mtz4QV7mtcnbky0DG3YsIEBAwYwatQoRATah1qjofo3WaOhgtC+Jbywctm8HA70hZo6GDYu3LBtjDG0tbWxYcMGRo8eHUkcoEukVBZem62nzLQ6+MyBg/0VWXAHuInDLee1TyfXPZNkh25c/VCvzIV9261Pwn1e+/btY+jQoXRPOWs8DIZNCOfFv3srHNhvfYdN/ybLiEQ47FdEGDp06MHWWkSoIalGps6Ec7/X82Xn5QWUNWMTFK8GIdeoxdX3lC8/wjBiXvL5lJnQMNj6BDWYfspVgXtDm7fcvsVqKbRvsX7X9uv5HSZhGrwixDGnW/tIFAsvLpE09Uso0eVH3PnsJ748965cuZJx40JyDW1ebrVAauqsl3zu74ySL43C7CPRFoli4aUWnZYx+IpFVPkRdz4Xii+qFlcxct1NMbifKgE1JIqFF/dCWsbg+6Ha3HFh4DWfw0rbQvHlc7dGXQZz3U0e3U+NjY29zs2ZM4cf/OAHAFxxxRWMHj2a5uZmmpubueuuu0IXPUnUkGSFqF+I7oc2yricsH/5d/G84NPS9xNFHElP8Iw6/jS0gHP7TAqd88Btt93GkiVLWLJkCf/0T/8UKKy0oYYkK8T50EYZlxP2W/8dz0vQy8sojhdyJS73EXX8aWgB5xu1FeZIrjxhPfPMM0ydOpUTTzyRiy++mPb2dt59913GjBnDBx98QFdXF6effjrPPGPtAH3LLbdw/PHHc8IJJzB7djJzuNWQZIXch9ZLDddPLdj90JZ6QQSpXTthf/y8eF6Caen7qcTlPpz4IXPuw3tfXMupNz/HvS+uLX5jvj6SMvtNvvGNb3S7tpYtW5Y3rA8++IDvfe97PPvssyxevJhJkyZx++2389GPfpQbb7yRr3zlK/zwhz9k/PjxnHvuuTz99NM88cQTLFiwgKVLl3LDDTf4kiksdNRWVvEy0qVSRvXEjc5M90eh8hBTOpYzauvUm5/jve17OXJwP16aPT2wDI2NjbS3t/c4N2fOHBobG/n617/OFVdcwQUXXMBFF11UIASgfQtP/eZRrvjqtxkxciQA+/fvZ+rUqdx7r7WK1Cc/+UnWrFnDkiVLGDBgAF/72tcYO3YsV199dVH5dNSWkh8vNdxyasFe5xCUCjfMPoG4O8zLdUO9PBdu/qj1yVDtvGyKrdwL4brzQi4DV542miMH9+PK0/LM9s7tt4irH2P3VsyBDznnjJO7+1JWrFjRbUT27NnDhg0bLJFyjFbSqCHJKl7cGuW4Prw8/F7CDfMlEnencrluqBTN9o6FYiv3Qnnu2FJxhZSuV502mpdmT+eqfIYkt98iytntbvo3ccrkk3hp0eusWbPGinr3bt566y0AbrzxRi677DK++93vdrdAzjnnHO6//3727NkDwLZt26KVsQBqSJSehOXLD7NPIO5O5XL7HsKc7Z0FSuVLbjoGMQZRloHcFkf/JmsJoa4D1jkPfSJ79uxhxIgR3Z/bb7/dvxyNh9E04XQeaH2QSy+9lIkTJzJ16lRWrVrFCy+8wMKFC7uNSV1dHffffz/nnXcen/3sZ5k0aRLNzc3dw43jRvtIlGA4fvDDJ1o1U+1XUAoRUZ9J4Jnt+WavB53RHuVij2UQdR+Jrv6rBMOpZe7ceHARSDUkSj6mprSS0b/p4Eu/2Dk/uN1hKTAkUaOGJKu4a3eQ3CgjZ96Ju0USlDSMmkpL+vohn8zaUixN42G9X/b5zvnBgyE6+eST6ejoOHiiq5OH7vpXjp90auaMj7q2sop7yCWkeziuX8OQhuHFaU/ffC5Fp3XoltnZLiBNsucjQOUh1EUbkyTXnebHPVbiXh3+q+TH3fmY9AznUvjtZI1KHz+jhtKevvlWCMgnc1wTP4OS9HIvaSC3U9/PaLG4RpYVQFskSvSkwVUF6WjphEWlDXLQFklvMtQiUUOiVA9pMWhKqFSsIQkRdW0pSlgkvTaVEg5BJjZWyGq7aUMNiXKQrCzxoXuMVDdB+lMi6kvotR9J+xbmfH0mP/j+HMDffiTnn38+27dvLxrftGnT6PbEpMA4qiFRDpL0Eh9eDURUHbOVZKCypIvfCkyQwQ9x7Xi4e6s1Wm7/wTWx8u5Hkoff/e53DB482F9cCXa0gxoSxU3SS3x4NRBRjaKqpJFDWdLFbwUmiIvS446HgXGWWanrvXNiKUaNGsUHH3zAunXrGDduHFdffTUTJkzg3HPPZe/evd33Pfroo0yZMoWPn/pZ/mfhskS3A1ZDohxk6kyY/a71SaIfwauBiKKv4+W50LEr++tklVqRN+x4Xp4bvPXjpQITdgsr6habM6Gx/qAhybsfSQlWr17NrFmzWL58OYMHD+bxxx/vvtbZ2cmrr77KnXf9mJt+/GCikxh1ZrsSDeWMkEpyCQ2nVjxoZLY7452WCAQb4lwq/9wtno5dVtq9cEt5aecl393xlZs/7iGy5YQXcP2s22677eB+JE6/Rm5Y7VvgwIfQvhXo192vAnDSSSexbt267ls///nP5z2fBNoiUaIhS64VSOekw3IIS49S+VduPOW2BMLQy92XUE54EW+x230eA3vaAKivr+++VFNTQ2dnZ/dv51ru+SRQQ6JEQxpmp/uh0LaxWeq0hvDcfn6WiP/Ejda9n7ixdLjlVjDC0Mvd0V5OeEE66j/cB9vX91yqPl9Y/ZsAgUOG+o8jQdS1pURDVG6qMFwcfsKPOr604if//NzrrAmWRMsv6EKMRf7v7EficP311/e8oXMfdHUeXA24UFiNh0FNX2hsgpTtglgMndmuREcUM8mjnp2eG76f+HTmfCJkYmZ7wvuT6BIpJag6Q5Kll1U5a1tlSb9cKmktrwyRCUOSMLpEitKTLHVil9NPkiX9cjl8ojV34PCJSUuiBCGOmeLtWzj5xIk0Tzyue0iwn2HBaUP7SLJGFD7mqFoB5fSTxOFDj0rfd1+yZjO/+1J4YSrxtFLdrqc4djfcvZUFT7X23sq30LDgYvKmYBMsbZFkjSgm46WpFRDHwopp0lcpTRz55TYecSyjUigOr0OMU7AsiptIDYmINIjIqyKyVESWi8hN9vnRIrJARNaIyCMiUmefr7d/r7Gvj4pSvqqn0CzoOIa8JjGsNlffwyeGK0PuMNgodCwWZpxpGmdccczxqe138LvxsIMtk6jcW85SLdDTjebViMW1ZphHom6RdADTjTEnAM3AeSJyCnALcIcx5mPAX4Gr7PuvAv5qn7/Dvk+JCqem9/7rPVsBcdQAk2gV5Or7/uvhypDbmopCx2JhxpmmccYVRyu1c2/P77hq/LnxeF0LLK41wzwSqSExFs5g6L72xwDTgcfs863AhfbxDPs39vWzRESilLGqKVTTi6MGmMRM8tw4o5YhivCLhelcO3xi9NsBVMpKAA5ODb+2n9VCqO3nq8ZfU1NDc3Mzxx13HBdffDF79uzhzDPP5Pe//32P++68806+8pWv9I43JS2Lcol8+K+I1ACvAR8D7gZuA16xWx2IyEjgaWPMcSLyBnCeMWaDfe1t4GRjzAeFwq+64b+KUgpnGDJUxVDkUIf/bl5utRByO8FL0NjYSLs9gfCyyy7jpJNOorGxkZdffpn777+/+75TTjmFW2+9lTPOOCMceT2S+eG/xpgDxphmYAQwBRgbNEwRuUZEFonIoq1b09HZpCipIentABJi664OVm3aydZdHeUHEkIL4fTTT2fNmjVcdNFF/Pa3v2X//v0ArFu3jo0bN3L66aeXL19KiW3UljFmOzAfmAoMFhFn6PEI4D37+D1gJIB9fRDQliese4wxk4wxk5qast0kVJTQCbgdwL0vruXUm5/j3hfXRiBcdLS1d7D/QBdt7QEMScC+h87OTp5++mmOP/54hgwZwpQpU3j66acBePjhh/nCF75AJXrrox611SQig+3jfsA5wEosg2Kvp0wL8IR9/KT9G/v6cybrU++VQGT1pZYUYaTXfS+u5b3te7kvZWleSrehjfXU1fRhaGN93utuHlrxEOc+di4PrXgoFNn27t1Lc3MzkyZN4qijjuKqq6zxQ5deeikPP/wwYBmSSy+9NJT40kbULZLhwHwReR1YCPzBGPMUcCNwvYisAYYC99r33wsMtc9fD8yOWD4l5aT1pZZWwkivK08bzZGD+3HlaaNDlCw4pXRrGlDP2OEDaRrgzZBs2r0pNEPSr1+/7m10f/zjH1NXVwfAjBkzmDdvHosXL2bPnj2cdNJJocSXNiKd2W6MeR34mzzn38HqL8k9vw+4OEqZlGxx5Wmjue/Ftal7qaWVMNLrqtNGc1UK0zvMsnD5+Mt5aMVDXD7+8hAkK0xjYyNnnnkmV155ZcW2RkCXSFFyuPfFtd0PaxpeJml9qSnxE2ZZuHz85ZEbEYdLL72Uz33uc90urkpEl0hReqCupPxkpa9G8y8Z2ovsHXLhhRdijGHs2MADVlOLGhKlB2n1jydNVl7Qmn9KEqghUXpw1Wmju33R1zy4KJZaeBZq+1l5QV912mhemj09dHdgEnmUG2cWykm1ooZE6YVT+563ckvgWriXhz9obT+OF0xUL+hyifulmkSLLDfOOGQIZVJjCohbDzUkSi+c2vdZ4w4LXAv38vAHre1nxe0UJnHrnESLLDfOKGXYuquD5Rt3sGnH3uCTGlNAKJMzfaBb7SqREscosLSNNIuDatS5EGGstbVq0072H+gCQBAOH9TQaz7K1l0dtLV3MLSx3tNclSTJlVX3bC+BGpLycL+IgB4vpay+pJKSO6vplSaKpWGp9A1qSLbu6mDzzn10GUMfEYYN7G1E4KCxqavpw9jhA8uOzx1vHIZp664O3li+gnc6B/dIv0wt2qikE7drpJAv+q5nV2eqczMpF1c58WrHcU+KpWHU+drW3kGXXaGu7SPdL/XcfoZiS7B8//vfZ8KECUycOJHm5mYWLFjgKV4v7qc//vGPnHjiidTW1vLYY48VvbdQPJ1dJtLnQg1JleL2NxfyRSNkqu8hqZFV5cRbjf06xSiWhlHn69DGemr6CDV9pIeRyH3RF1qC5eWXX+app55i8eLFvP766zz77LOMHDnSU7xe1gY76qijeOCBB/i7v/u7MrSz4qntI5E+FzqzvQIox7WSO0s49zjXxZWUnH7I0iz43OU+qt09Vizvos7XpgGWa8lxNTnnhjbWd7ueirHqnb/Q0DiYnfuhqR4OPfRQABYuXMh1113H7t27qa+vZ968eTz++OM8+eST7Nmzh7fffpvPfe5z3HrrrYC1nMp1113HU089Rb9+/XjiiScYNmwYo0aNAqBPn571/vb2dmbMmMFf//pXPvzwQ773ve8xY8aMvPodPqiBM8dFl4baIqkAyq3dlnKvhD3kNS218LDdSuXolZu2aUmbasZrCySXiSefzqaNG5jcPIGZM2fywgsvsH//fi655BJ+9KMfsXTpUp599ln69bP2hV+yZAmPPPIIy5Yt45FHHmH9emsTst27d3PKKaewdOlSzjjjDH7+858XjbehoYHf/OY3LF68mPnz5/O1r32NpPq81ZBUAOU2/athCGk+wtY7DL3SkjbVwrbWVlZPn8621tbuc36WoXdz1LChPP77P3Lnj+fS1NTEJZdcws9+9jOGDx/O5MmTARg4cCC1tZYD6KyzzmLQoEE0NDQwfvx43n33XQDq6uq44IILADjppJNYt25d0XiNMXzrW99i4sSJnH322bz33nts3rzZl+xhoa6tCqDcpn/cK+umxfUUtt5h6JWWtKkW2lpb6dy4ibbWVoa0WFsgOS4uvzj/mzDiXC48/1yOP/547rzrx+zdf4Ctuzp6hVlff/B3TU0NnZ2dAPTt27d70yv3+UL84he/YOvWrbz22mv07duXUaNGsW/fPt/yh4G2SKqYtM3Wjotq1Vs5yNCWFmqPGM7QlpbSN5fgzTffZPXq1d2/lyxZwsijx7Bly/s8/+KfANi1a1dJw+CXHTt2cNhhh9G3b1/mz5/f3bJJAjUkClC5w1ErVa9SRKW3O9wsp+2QlhbGPPdcd2skCO3t7bS0tDB+/HgmTpzIihUr+M6cm7jjp/dzy7dnc8IJJ3DOOeeU3VpYuHAhI0aM4NFHH+XLX/4yEyZMAOCyyy5j0aJFHH/88Tz44INFVxdu39cZaV7phMQKpJwRQKfe/Bzvbd/LkYP78dLs6RFL6J9yRzVlRa8JRwxk+cadoY3aikpvd7hArzjKyadS/4l6QmIlUGpy4/xX/syX/nNjj7zSCYkKULjWWU5nsruzN+yaZpL7iKexE9udHmEukOkmKr2LzT+C8vKp1H/SOKItbYs7lprc2FhfG+lzoC2SDFOo1hl0TkKYtdl7X1zL//3tSg4YEyi8Sppn4U5fp+M/7BZJUlRLiyTs5VKCUqpFkpq1tkTkOuB+YBfwH1h7sc82xjwThiDlUs2GJKqXa5jhOi/NGhG+9elxmX5JhkUlGcU0sHLlSsaOHds94ikOsrSAozGGVatWpcaQLDXGnCAinwS+DPwf4CFjzIlhCFIu1WxIsoC+NKsrDZLQde3atQwYMIChQ4fGakzCJgrjZIyhra2NXbt2MXp0z/wI05D4mUfi5ND5WAZkuWQ515RY0PkRPX38lZ4WSeg6YsQINmzYwNatW2OJLyre37GPzi7Dpj7WMvZh0dDQwIgRI0ILLx9+DMlrIvIMMBr4pogMALqiEUtRKoe4J34mSRK69u3bt1dtO4v8ydWai3JdrCjw49rqAzQD7xhjtovIUOBIY8zrUQpYCnVtpZdqcunEQaWnZ6Xr5xC3noXii3X4r4icKCInYhkRgKPt3x9Fl1hRinDXvNXWvibzVpe+OYNUw77pcXLXs6u798GpZOLOxzji8zKP5If2527gFeAe4OfAAvucouTH5HwnRFQv/NwH1InnmgcXRRJfvnkbWZ5d3gvJ+a5Q4p7bFEd8flxbvwa+Y4xZZv8+DphjjLkoMuk8oK6t9JIWV0VUs7xz9XMPdQ46b8Yr+eakJJ3e5ZKW8lItJDWz/VjHiAAYY94AqntdggonaG037sURC8kbVY0sVz8nnrPGHRZbjdOtW1wuk4pqBSVEpaWhnxbJL4HdwP+zT10GNBpjLo1INk9oiyQ60r5OVS5Zkzds4qrRx7GOV6XnXxp0TapF8iVgOXCd/Vlhn1MqlDSuU1WMrMkbNnG1AONYx6vSqTRdda0tRVGUKiTWme0i8itjzBdEZBl5xt8YYyaGIYiiKIqSTbzMA7nO/r4gSkEURVGUbFKyj8QYs8n+fjffx7lPRF6OUlBFUZSoqbTRVHER5sZW4a0ypiiKkgCVvnpAVIRpSHr1n4jISBGZLyIrRGS5vacJIjJERP4gIqvt74/Y50VE7hKRNSLyur0Ui1KBaM1PSSOVNpoqLqLearcT+JoxZjxwCjBLRMYDs4F5xpgxwDz7N8CngDH25xrg3yOWT0kIrfkpaSSMIdTVWEkK05D0WiHHGLPJGLPYPt4FrASOBGYArfZtrcCF9vEM4EFj8QowWESGhyijkhK05qdUKtVYSfJlSETkoyJytn3cz96TxOHyEv8dhbU97wJgmNOJD7wPDLOPjwTWu/62wT6XG9Y1IrJIRBZlfTObasJdU3NqfkDF1t4quWYapW73vriWE256hhPmPNMj/CTSs5w4q7GS5NmQiMjVwGPAz+xTI4D/dK7ba28V+m8j8DjwVWPMTvc1Y82I9DUr0hhzjzFmkjFmUlNTk5+/KgmSr6ZWybW3Urpl2dBEmW/3vbiWHXs/ZMe+DxMvK+XEGfcac2nAT4tkFnAqsBPAGLMaOKzUn0SkL5YR+YUx5tf26c2Oy8r+3mKffw8Y6fr7CPucUgHkq6lVcu2tlG5ZNqJR5tuVp41mUL++DGrom3hZqeTyGSZ+Fm1cYIw5WUT+bIz5GxGpBRYXm9lu7+neCmwzxnzVdf42oM0Yc7OIzAaGGGNuEJFPA9di7Qt/MnCXMWZKMbl0iRQlq2Rl2fR8cmZFdqUwSS3a+IKIfAvoJyLnAI8C/1XiP6di9Z1MF5El9ud84GbgHBFZDZxt/wb4HfAOsAZr86yZPuRTlEyRFRdItbkkFf/4MSSzga3AMuDLWC/9fyn2B2PMi8YYMcZMNMY025/fGWPajDFnGWPGGGPONsZss+83xphZxphjjDHHG2O0qZFysuznV7zlX7W5JBX/6Oq/SiDSsK+CUj6af9VLrK4tEVlmzzLP+wlDCCW7pKVmGmfLqJJaYRW/D3wRSukZVjrEnZ5J5J8X19YFwGeA/7Y/l9mfp7HcW0oVkxY/f5w++0rqH8iXf5WkXzFK6RlWOsSdnknkn5fVf51Vfs8xxtxgjFlmf24Ezo1eREUpTZwto7S0wqKi0vVzKKVnWOkQd3omkX9+hv8uAWYZY16yf/8tMNcY0xyhfCXRPhLFIW1DUtMmj5I+kiwjSQ3/vQqYKyLrRORdYC5wZRhCKEoYpM0lkzZ5lPRRKWXEsyExxrxmjDkBOAFwhvMujk40RfFH2lwyaZNHSR+VUkb8uLYGAd8BzrBPvQB81xizIyLZPKGuLSUK1C2lVDpJubbuA3YBX7A/O4H7wxBCUdJGpbgcFCUO/BiSY4wx3zHGvGN/bgKOjkowpXLI4rwEPy6HLOqXNjQNwyGpdPRjSPaKyGnODxE5FdgbvkhKpZHF2r2f+TGOfnfNW60vwzLJYhlJI0mlox9D8hXgbnvU1jrgJ1hrbilKUSqlQ7EQjn4Y9GVYJpVeRuIiqXT009leD1wEHAMMBnZgrbP43ejEK412titpQTvolSyRVGf7E1hLpezD2myqHdgdhhBKssThV60GH3iSy8XElb5RxXPvi2s5YYHMnrwAAB0ESURBVM4znHDTM4mWkajTsVKfAz+GZIQx5ovGmFuNMT90PpFJpsRGHH5V9YFHS1zpG1U89724lh37PmTH3g8TLSNRp2OlPgd+DMmfROT4yCRREiMOv6r6wKMlrvSNKp4rTxvNoIa+DOrXN9EyEnU6Vupz4KePZAXwMWAt0AEIVh9Jwa1246Aa+0jK9cWX87+s+f2zJq/iDyd/JxwxkOUbd4aWz9VYbpLqI/kUMAZrxd/PcHB5eSVmym0el/O/rDXFsyav4g8nf+et3BJqPmu5CYaftbbezfeJUjglP+U2j8v5X9aa4lmTV/GHk79njTss1HzWchMM3WpXURSlCknKtaUoiqIovVBDoiiKogRCDYmSWip18pZSWWg5VUOipJjckTSV+MBWok7Vho74UkOipJjckTSV+MBWok7Vho74UkNSUWSldutVzty1q+J4YONOw2p6CWWlfPolyTXW0oIO/60gTr35Od7bvpcjB/fjpdnTkxanIGmWM82yZR1N23Shw3+VvGSldptmOZOUrVJr7A5pznclGNoiUZSUoDV2JU60RaJkmkqveZeL1tiVrKKGpIpJ6oWuI5Xyo522SlZRQ1LFJPVC15q3olQWakiqmKRe6FrzDg91EypeiLqcqCGpYirthZ7USzXJl7m6CRUvRF1OIjUkInKfiGwRkTdc54aIyB9EZLX9/RH7vIjIXSKyRkReF5ETo5RNqTySeqkm+TKvBjehtrqCE3U5ibpF8gBwXs652cA8Y8wYYJ79Gw7uwDgGuAb494hlUyqMpF6qSb7MK61VmQ9tdQUn6nIS+TwSERkFPGWMOc7+/SYwzRizSUSGA88bY44VkZ/Zx7/Mva9Y+DqPRFEqm2rcTz0OwpxHUhtGID4Z5jIO7wPD7OMjgfWu+zbY53oZEhG5BqvVwlFHHRWdpIqiJM5VakBST6Kd7cZqDvluEhlj7jHGTDLGTGpqaopAMkVRFMUrSRiSzbZLC/t7i33+PWCk674R9jlFURQlxSRhSJ4EWuzjFuAJ1/m/t0dvnQLsKNU/oiiKoiRPpH0kIvJLYBpwqIhsAL4D3Az8SkSuAt4FvmDf/jvgfGANsAf4UpSyKYqiKOEQqSExxlxa4NJZee41wKwo5VEURVHCR2e2K4qiKIFQQ6IoiqIEQg2JoiiKEgg1JIpis621ldXTp7OttTVpUaoezYtsoYZECZ2svgTaWlvp3LiJtozJHQdR52lu+JWQF1l9DspBDUkVEnUBd14CW++ey+rp01k/69oe8aX1ARva0kLtEcMZ2tJS+uY8pFWvMMjN07B1dBuOba2tdLXvps/AgQxtaclsujo6bb71tl7PgBeypLcakirES22vUCH2UridFzJA58ZNtD//fI/4CsWf1IPjxOvI7rzMit2b77qfWnSWXhLQO0/Dbim4jXhbaytdO3fSp7E/Q+zfheJ0p2Pa0nRoSwvU1MCBA72eAS+4DVFadCqEGpIqxEvNu9DD6+VlOaSlhTHPPUfTrJnUHjGcxmnTesRXKP6k3BnueEvJUOy6nxZN1lw3uXlabqutVPhDWlp6pWOxdPWTd3EzpKWFYTd8I+8z4AW3IUqLTgUxxmT6c9JJJxklfNoeeMC8deaZpu2BBzydLze8MMIu9F/n3F9mzioabtsDD5hVk6eYVZOn9Lo3N9wwZPzLzFnd8YWZjkFkCyJDqXijksudb20PPBBqPGHme7Fwy4k3LFmARSak93Dk+5FEje5Hkg1WT59O58ZN1B4xnDHPPZf3nm12rXJoSwtDfNZ484XvnHNqde5ruXEVks+L3H5lzCdPED2jkNWLDIjQZ8AAALp27iwYb1RyRRXuttZWNt96W488CiuuUuF4iScsWcLcj0RdW0osBHGnlRu+c85xKzSMG9/tQ8+Nq5B8QTvg84VVjpujkDzufoEwZS0lAzU1YAxdO3diOjqKxutVrnx9HMX6PaLQ121EqKnx5F7zQ6lwvMQT1qCQppraw8oKIB9hNW2S+qhrK3hT1/3/v8ycZVaMn2D+MnNWyFL2jsvPNb9hrrngM2bFsWPNm6eeZlZNnmJWTjzBrBg7zqw4dmz3vWG72rzeH6YLZtXkKWbFsWPNqslTAoeVj0LuwbYHHjArjh3b/QnDHfnWmWda4Y2f0OvcqslTAqeZl3R3y+Do7MU16le2sF1lpWR04+h4bH19h1HXloW6tspv6jo18wNt2zAdHfQZOJCu3but2pgItcMPL8vNVMhFlc9lEAaO/n0GDqRPY3+GtrSw+d9uzn9zTQ3DbviGJ538pmvu/YXSwX2fM0rJTzpva21l691zATD792P27aPPwIE0zZpZtmswXxxt9jDcrp07QQSMARGGzb6RIS0tvDnlZOsahOKmWz/rWtrnzesOb2hLS7eeUNx9Vk58jo4N48azb+UKGsaNZ8/ChQDdaenFFem1nLjja3/++VCeg1Lu0twy6C47py9evH5L54ehbDGrrq0KoNymrvOgmP37u881TpsGNTVIXV1ZbibHWBQa8ZXrMghjyGa+oal1Y8YAUHPoodZLEKyXoEcj4g7Xa7q67y+WDrlDXcsZFtq1cyddO3cidXXUHjG8x4svjBE+3S9RrJe61NVZF4zpDr9p1kzLeNvzPfySm777Vq6wLtjlwz0M+JDJk6GmhoZx48vWKTc+R0dnaG778893xwd0z2Up5Yr0Wk7c8eU+B/nwM9S+kIy5ZcKdplsPdG7JF2ZZhNW0Seqjrq3yKdYsLrfpnc89USxM5/63zjwzmDJFZI5rNJObYungV7Z8I3nyjfqKetRSuSPNvJLrVnXLEGY5ccgt/+7RdI7LMMr4SqVjGDoXGwVGiKO2EjcEQT9qSLwTts8/jKGJSfQrxBF+mOGVeqH4MUZ+fOnFiGLIr/PyXjnxhF6yxmHIjHFVAMaOMyvGTzArxo4r2V8YxpDwfM/Qmgs+E2l/ZZiGRPtIqgi/vvkwhipGIXsUccWpi19KDYv2M2Q0yNBjP3GWk57dfS5Of0yOrHHkUY9RWw41NYxb/kbB/wSRy++w9TAJc/hvzZw5c8IIJzHuueeeOddcc03SYiTKttZWNlx/PQL0a24ueJ8AHe+83cM37/wudX+/5uYe8exdupTdL/0Jqa/n0KuvLhpvULa1tpYdVzlps3fpUk//CYNc+fLJ26+5uUce/OWaL9P28/+gT10d/Zqbe+VTMf0OmTyZro59NIwbz5Yf/qBsHUvFWars5EvfPnV1loxTptDVsY9DJk+ms60Ns/9D+tTVcUhzc0k9C6WrV/o1N1PT2J+Od96m9vDhHNixg8Zp0xj06fPLToti5Ptvbl4VCrdcHR1uuummTXPmzLnH9x/zoC2SCqCcUUB+Jv/ljuBxd2xHMRksV64wanzuEV2l9I2y5ltqIqTXmj54GynlZeRYOTr6nTzqjg+8l51y5QwzD73oGmQybbEwip1zP4/l6KgTEpUeNIwbDzU19OnfWHCkUC7utY1KjQ7Zevdca3SXa+JZ2JPBHBmcuNwL1QWJK3dEV6EF8La1tvLmlJN5c8rJNIwbH1i3QosJFlvl1ouuQ1taCo6Uys3Hba2tbL75lu5Ve/OlS7k6+l0N2B2fn7idsu2M1vI6yi+M8umUCScNiz1TYYyYyxdGbnlxPyNAqM9gELRFklHyjUl3fKp+5kpAT59s47Rp7Fu5okcNyPFd9xk4kGNfXRCJPu6WgzOXJcwWQak5LH5r+qUoVAN3txidl0RYeubWwt3zPPzmXakadq95JgXKTtg6ucuqU8bDaA0Uixvo9Uzlm59RSAavaZk7jyU3XKe8+GldF0NbJErvMekiSG0tfQYO9GVEoPRy186Kr02zZgaS2ctyF02zZnavmBpma6ettbXofIBiNf1yKFQDL7bKbTnkWyLFWQrGdHRYN4lwyOTJvubrlKphu1cDDrJUeindcvcl6WrfbXXGu1bEDXP+TG56OmUi95nKjdOdr7l4XVF638oV9GnsT9fOnXnDdT8jheJKjLCGfyX1qdbhv7nDOYOMe3cPrSxneKjXYcBRzAXwIkscc1WSwq2bI5t72ZRy52H4WcrG69Bi9/+8DOfNldk9NNf9vzCX1vGaTn7i9DNUOkxdSoWFDv89SLW6tnIJe+XcoP/PtxyF46d3mu1RkE+WMDtL0zZM2KvrI0z3Txgd4EBJV2JumQFCWWKnWGd1VG6yqPHyDOairi0l1N3gcpf28BJuqVVn8y1H4d71LiryyZLP7ZCrp9fO47AHGQTFrZvTMX3I5Mm99C3mevFLvjTws5yH4+4r5Uoc0tLSw9Xj3igqSPrnLv9SqqzETTnPtpdnMEq0RZJR/A4bLdQ56CxYV2g4qtf4C+HE06d/I/vfeYfGadMYefdPQkmD3HjytXjcegMFO7r9DKnMF2a+jtIwdMqXR/k6Zw+ZPDnwQoD5auPrZ11L+/PPU3f00XTtbu+VjkGHaOdbONHRFQi1FeuUEdPRgdTXc8jkyb3iDLMFV0y3Yh30YbR6C5VRtxyn/vF/Qlu0UQ1JRvEzagSKj35xv3y8PkB+XUFRz9ItNOrKy+ip3JaKnxn/TpjdI+YIZ9RXD50KzPB2x1nuiL1Cejnyr5xwXI9Z3oXmgZT74u2li0vXfPEEIbeMOOHnK5thvMyL6Vas8heGEStaRu3vz61bu3/Vvn31ZUWQg85szyju2c7Ob8GqeeSb6Zo7g7bQTOdDmpsZcccdJWfK5sZfCK+zdIMiwN7XX+81+92tt3tmtDMKJleWvUuXsnfpUg5pbu6+ljuDOF+YzixsP7PvS81MdnTCGPr0798drjtNnTj7n3oqXR37AtXc883urx02jAM7dlD3sY8hDfW90jHf7HuvuFcscOR3lxM/M9ndYRZaKeCQ5marBdfVxSFTpjDo0+f3SEdnBr3X1QJKxe8uG35m6vtNy3zlqFgZdcrT3Pc2bvzGt799h2fliqAtkgrCj3sLeron0taJ7AevM4K9UE6nZbnEua1qWLLF2WlfTlylXL5Rb6nsZw2yQq3isOMsdO/H58/XznalN6U619zj2XPHtqetE9kPpWYE+yHOTksv4YY91ySobH7T1cvcIS/ltVy5S/32KosXfbyE474e1vwXP2Uksuc8rHHESX2qdR5JOYQxXj1IvGEtYV4o/Kj25sg6Sc6jCRJ33GXUyzL1YeqT9NYI6DySg6hrq3ziGjMfV4d7KdI6RyBquZLUO61pnovXJXKSnK/lF51HosSC07TefOttrJ91LaunT2f9rGu7Fy8MY44KlN4OFMKZF1MqjC2330Hnxk1suT2U/sW88RdLu0LylevicMJz8q6Q3mHOjci3MGSUca+fdS0rJxzH+lnXlkzfcnGWXpGGhh7zWvLpFkSfsNxnQeNzwm+qqT0sUAQutEVSxayfdS3t8+ZZP3KGBkJ4w1i9EOZwy0JhrBw33towSYRxzv7gIVKqVht2B3YSLb3czuIwZpo75EuH7uHHNTXUDjus4CKKQSi01UC5qyR4pZx5JGEODQ5z+G/qWiQicp6IvCkia0RkdtLyVDL7nJdpTQ11Rx/d/e1l8UKvtWGvODOdu9p3eworX62tVI2vcfp0a5Xa6dMDyVpIloZx44umXSH5cmu5fpdKL9bSCxsnzoZx43vsJOgs814IL60Jdwt5W6u1bLrU1oIIjdOmMbSlBam333uuRRvD0KnPwIF07drVawBKbpnMlbEUxfIytyXqpNGBtm0Fy1DQ1qt7JYptnQc2+wqkCKlqkYhIDfAWcA6wAVgIXGqMKVh91BZJYUrVXvKt0+S1ZhlFbbjcYYxJD1cOW5Z865SlrZ+hxxLr9G6B5crspQ/C3UIuNCEx3zLybsJo3Q274RsAeVc62NZafDuCQuF6aV3kSyO/E4/9yFHJfSRTgDXGmHeMMfuBh4EZCcuUWYrVXnLnlORusFQKP7VhvzXssIcxht16yg27q303Ul/PgbZtofjvc3XLt7nRtiLHYZMv/brz/6yzPA0Tdmr3xTbkcpZ7AejTv5EDbdtApEdrx1lPrHHatLKWbM+XZutnXXuwj6R/f3a/urB7gzigR6vE73pfxcppbku0Ydx4azuIhoa8eZ/vP6XIbeU4WwyEXU7S1iK5CDjPGPMP9u/LgZONMdfm3HcN4ExnPxZ4M1ZBM0JTTe1hQ2prhm3rPLB564HOLe5rx9bXH1+L1HVi9gM4x292dCwLWw53XFGE7zV+gzXjN0w5csMm5PChZz4Oqa0Zli/f3Mdhp3E56Ves7BUK/wDmQB+kRoBC6VmqLJWKN1+5d+LK9721s3O9O82jLL/5dPOTjsXCBCsdoUc52WmMaQpD9towAokbY8w9QCib1iuKoijBSJtr6z1gpOv3CPucoiiKklLSZkgWAmNEZLSI1AFfBJ5MWCZFURSlCKlybRljOkXkWuD3QA1wnzFmecJiKYqiKEVIVWe7oiiKkj3S5tpSFEVRMoYaEkVRFCUQakgURVGUQKghURRFUQKhhkRRFEUJhBoSRVEUJRBqSBRFUZRAqCFRFEVRAqGGRFEURQmEGhJFURQlEGpIFEVRlECoIVEURVECoYZEURRFCYQaEkVRFCUQqdqPpBwOPfRQM2rUqKTFUBRFyRSvvfbaB1W9Z7ubUaNGsWjRoqTFUJSqYdTs33Yfr7v50wlKogRBRN4NKyx1bSmKoiiBUEOiKErVM2r2b3u0tBR/ZN61pShKZZAGl1khY6IuvOKoIalS9IFRFCUs1JAoPUhDrTDLOOmnaReMQuVQ0zedqCFRYkENlFIu2neRfrSzXVEURQmEtkgUJaNUSj+XtjiyjxoSRbFR95uilIcaEqViyNcRWym19jSQLy3V+PqnEsukGhIlMqrFZZE2PXVkUzbJcr5pZ7uiKIoSCG2RKEqGSFvrR8kOUboh1ZAoSkJk2ZWhZIc4Kh9qSCqAfAUljpeTdrRWJlHlaxrKSxpkqETUkGSUOGoZ5dSYvchVanRVJTzgadAnDBkq2ZXmR7dyK2vlpF8ayo5ftLNdURRFCYS2SJRM4KeW5qdVFEZ8ftC5GBaV3NIJk1JlIy1lRw1JlZGmpnYhWfw8PHEQtFM8DHmz8OJNw0stbTJUQ7yghkRRPJOGl1S5xC171C+1NBjWpCo0aUQNSYYot3Mw7lZEmKT14ak2fbOMpmn0aGe7oiiKEghtkVQBWiNT3FRLeagWPdOAGGOSliEQIrILeDNpOSLkUOCDpIWIkErWr5J1A9Uv6xxrjBkQRkCV0CJ50xgzKWkhokJEFql+2aSSdQPVL+uIyKKwwtI+EkVRFCUQakgURVGUQFSCIbknaQEiRvXLLpWsG6h+WSc0/TLf2a4oiqIkSyW0SBRFUZQEUUOiKIqiBCLThkREzhORN0VkjYjMTlqechCRdSKyTESWOMPxRGSIiPxBRFbb3x+xz4uI3GXr+7qInJis9L0RkftEZIuIvOE651sfEWmx718tIi1J6JKPAvrNEZH37DxcIiLnu65909bvTRH5pOt86squiIwUkfkiskJElovIdfb5isi/IvpVSv41iMirIrLU1u8m+/xoEVlgy/qIiNTZ5+vt32vs66NcYeXVuyDGmEx+gBrgbeBooA5YCoxPWq4y9FgHHJpz7lZgtn08G7jFPj4feBoQ4BRgQdLy59HnDOBE4I1y9QGGAO/Y3x+xjz+StG5F9JsDfD3PvePtclkPjLbLa01ayy4wHDjRPh4AvGXrUBH5V0S/Ssk/ARrt477AAjtffgV80T7/U+Ar9vFM4Kf28ReBR4rpXSzuLLdIpgBrjDHvGGP2Aw8DMxKWKSxmAK32cStwoev8g8biFWCwiAxPQsBCGGP+CGzLOe1Xn08CfzDGbDPG/BX4A3Be9NKXpoB+hZgBPGyM6TDGrAXWYJXbVJZdY8wmY8xi+3gXsBI4kgrJvyL6FSJr+WeMMe32z772xwDTgcfs87n55+TrY8BZIiIU1rsgWTYkRwLrXb83ULxQpBUDPCMir4nINfa5YcaYTfbx+8Aw+zirOvvVJ4t6Xmu7d+5zXD9kWD/bzfE3WLXaisu/HP2gQvJPRGpEZAmwBcuAvw1sN8Z02re4Ze3Ww76+AxhKGfpl2ZBUCqcZY04EPgXMEpEz3BeN1dasmDHalaaPzb8DxwDNwCbgh8mKEwwRaQQeB75qjNnpvlYJ+ZdHv4rJP2PMAWNMMzACqxUxNo54s2xI3gNGun6PsM9lCmPMe/b3FuA3WJm/2XFZ2d9b7NuzqrNffTKlpzFms/0AdwE/56AbIHP6iUhfrJfsL4wxv7ZPV0z+5dOvkvLPwRizHZgPTMVyOTrrKrpl7dbDvj4IaKMM/bJsSBYCY+wRCXVYnUVPJiyTL0Skv4gMcI6Bc4E3sPRwRrq0AE/Yx08Cf2+PljkF2OFyOaQZv/r8HjhXRD5iuxnOtc+lkpx+qs9h5SFY+n3RHh0zGhgDvEpKy67tH78XWGmMud11qSLyr5B+FZR/TSIy2D7uB5yD1Q80H7jIvi03/5x8vQh4zm5xFtK7MEmPNAjywRo18haWH/B/Jy1PGfIfjTU6Yimw3NEBy085D1gNPAsMMQdHZdxt67sMmJS0Dnl0+iWWe+BDLN/qVeXoA1yJ1cm3BvhS0nqV0O8hW/7X7YdwuOv+/23r9ybwqTSXXeA0LLfV68AS+3N+peRfEf0qJf8mAn+29XgD+LZ9/mgsQ7AGeBSot8832L/X2NePLqV3oY8ukaIoiqIEIsuuLUVRFCUFqCFRFEVRAqGGRFEURQmEGhJFURQlEGpIFEVRlECoIVEyh4gMFpGZrt9HiMhjxf4TML5m94qwSSIi/UTkBRGpCRjO8SLyQEhiKVWOGhIliwzGWrkUAGPMRmPMRUXuD0oz1ryBNHAl8GtjzIEggRhjlgEjROSocMRSqhk1JEoWuRk4xt474jYRGSX2/iAicoWI/KdY+2asE5FrReR6EfmziLwiIkPs+44Rkf+2F8v8HxEZa5+/WETesPd0+KM9c/m7wCV2fJeIyBQRedkO808icqzPuJ8XkR/Z4b0hIlPs85+Qg3ti/NlZ9SCHy7BnJovINLt18oSIvCMiN4vIZWLtSbFMRI7Jp5MrrP/CmpWtKMFIejamfvTj9wOMoud+IN2/gSuwZuoOAJqwVjT9R/vaHVgL9YE1U3uMfXwy1vIQYM1wPtI+HuwK8yeu+AYCtfbx2cDjPuN+Hvi5fXyGS/b/Ak61jxudOFzx1gHvu35PA7Zj7bNRj7Ue0k32teuAOwvpZB+fCvxX0vmpn+x/nIW8FKWSmG+s/SZ2icgOrBc0WC/UiWKt/vq3wKPW8kuA9SIGeAl4QER+Bfya/AwCWkVkDNaSG329xu2675dg7W8iIgPtNZJeAm4XkV9gua825MR7KJbhcLPQ2OuticjbwDOu+M4sodMW4IgCOiqKZ9S1pVQiHa7jLtfvLqAWq9xvN8Y0uz7jAIwx/wj8C9bqp6+JyNA84f8rlsE4DvgM1ppFXuN2yF2byBhjbgb+AegHvOS421zszYnLU3xFdGqww1SUQKghUbLILiz3UVkYaw+KtSJyMXTvPX6CfXyMMWaBMebbwFasl29ufIM4uKz2FWWKcYkd32lYq+busONeZoy5BWuF2R6GxFi7DdaISK4xKUoBnQA+zsGVbhWlbNSQKJnDGNOGVWN/Q0RuKzOYy4CrRMRZednZKvU2u6P6DeBPWCszzwfGO53tWHuY/5uI/BnKdg/vs///U6wVhAG+auv0Otbqwk/n+d8zWKvY+iGfTmC5vn7rX3RF6Ymu/qsoMSMizwNfN8YsKuO/JwL/bIy5PKAM9cALWDt0dpa6X1GKoS0SRckQxpjFwPygExKBo4DZakSUMNAWiaIoihIIbZEoiqIogVBDoiiKogRCDYmiKIoSCDUkiqIoSiDUkCiKoiiB+P8Beq+sVPskXJQAAAAASUVORK5CYII=n”, “text/plain”: [

“<Figure size 432x288 with 2 Axes>”

]

}, “metadata”: {

“needs_background”: “light”

}, “output_type”: “display_data”

}

], “source”: [

“from bmtk.analyzer.spike_trains import plot_raster, plot_ratesn”, “n”, “plot_raster(config_file=’sim_ch05/simulation_config.json’, group_by=’pop_name’)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“Or we can plot the rates of the different populations”

]

}, {

“cell_type”: “code”, “execution_count”: 14, “metadata”: {}, “outputs”: [

{
“data”: {

“image/png”: “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n”, “text/plain”: [

“<Figure size 432x288 with 1 Axes>”

]

}, “metadata”: {

“needs_background”: “light”

}, “output_type”: “display_data”

}

], “source”: [

“plot_rates(config_file=’sim_ch05/simulation_config.json’, group_by=’pop_name’)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“In our simulation_config.json in the reports section, we can see we also record the V_m (i.e membrane potential) of a select sample of cells. By default these files are written to an hdf5 file with the same name as the report (membrane_potential.h5), and we can use the analyzer to show the time course of some of these cells.”

]

}, {

“cell_type”: “markdown”, “metadata”: {

“collapsed”: true

}, “source”: [

“## 5. Additional Information”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“### Recording membrane potential (and other cell properties).n”, “n”, “By default bmtk will automatically record and save the spike-trains of our (non-virtual) cells. Sometimes it can be useful to record other properties besides spikes, like the membrane voltage traces, of all or a subsection of the cells. To do so we only need to open the _simulation_config.json_ with our prefered text editor and insert the following section:n”, “n”, “`json\n", "{\n", "  \"reports\": {\n", "    \"membrane_potential\": {\n", "      \"cells\": {\n", "        \"population\": \"V1\", \n", "        \"node_id\": [0, 20, 60, 80, 100]\n", "      },\n", "      \"variable_name\": \"V_m\",\n", "      \"module\": \"multimeter_report\",\n", "      \"sections\": \"soma\"\n", "    }\n", "  }\n", "}\n", "`n”, “n”, “This will tell bmtk to record the "V_m" variable for selected cells with ids 0, 20, 60, 80, 100 - and save the results in a file _output/membrane_potential.h5_. After re-running the simulation the file will be generated, [according to the SONATA format](https://github.com/AllenInstitute/sonata/blob/master/docs/SONATA_DEVELOPER_GUIDE.md#frame-oriented-node-element-recordings), which we can read using hdf5 or bmtk like below:”

]

}, {

“cell_type”: “code”, “execution_count”: 16, “metadata”: {}, “outputs”: [

{
“data”: {

“image/png”: “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n”, “text/plain”: [

“<Figure size 432x288 with 1 Axes>”

]

}, “metadata”: {

“needs_background”: “light”

}, “output_type”: “display_data”

}

], “source”: [

“from bmtk.analyzer.compartment import plot_tracesn”, “n”, “_ = plot_traces(config_file=’sim_ch05/simulation_config.json’, group_by=’pop_name’)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“### Perturbation simulationsn”, “n”, “A common use case is to mimick a network where the firing rate of select cells are being depressed or stimulated using current clamps or optogenetic methods. The best way to do this is by applying a current clamp in a similar manner used in [bionet](http://localhost:32000/notebooks/Workspace/bmtk/docs/tutorial/01_single_cell_clamped.ipynb).n”, “n”, “The point_120cells network in the bmtk examples consists of 120 recurrently connected excitatory and inhibitory cells with randomized inputs. Normally the results without any type of perturbations will look as follows:n”, “<img src="_static/_tutorial_images/raster_120cells_orig.png">n”, “n”, “To artifically excite some of the cells we can open the config.json file and add the following section to the "inputs":n”, “`json\n", "{\n", "  \"exc_perturbation\": {\n", "    \"input_type\": \"current_clamp\",\n", "    \"module\": \"IClamp\",\n", "    \"node_set\": {\n", "      \"population\": \"cortex\",\n", "      \"node_ids\": [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39]\n", "    },\n", "    \"amp\": 230.0,\n", "    \"delay\": 1.0,\n", "    \"duration\": 3000.0\n", "  }\n", "}\n", "`n”, “n”, “This will apply a large step current for the duration of the simulation for cells 20 through 39. In this case we knew the exact node_ids of the cells we want to excite. However it is also possible to get a subset using a specific property, for example if we wanted to only select inhibitory L2/3 cells:n”, “`json\n", "{\n", "  \"node_set\": {\n", "    \"population\": \"cortex\",\n", "    \"ei\": \"i\",\n", "    \"location\": \"L2/3\"\n", "  }\n", "}\n", "`n”, “n”, “To simulate depression of cells 40 to 49 we will add another current_clamp but with a large negative current:n”, “`json\n", "{\n", "  \"inh_perturbation\": {\n", "    \"input_type\": \"current_clamp\",\n", "    \"module\": \"IClamp\",\n", "    \"node_set\": {\n", "      \"population\": \"cortex\",\n", "      \"node_ids\": [40, 41, 42, 43, 44, 45, 46, 47, 48, 49]\n", "    },\n", "    \"amp\": -230.0,\n", "    \"delay\": 1.0,\n", "    \"duration\": 3000.0\n", "  }\n", "}\n", "`n”, “n”, “After we rerun the simulation:n”, “<img src="_static/_tutorial_images/raster_120cells_perturbed.png">n”, “n”, “n”

]

}, {

“cell_type”: “code”, “execution_count”: null, “metadata”: {}, “outputs”: [], “source”: []

}

], “metadata”: {

“kernelspec”: {

“display_name”: “Python 3”, “language”: “python”, “name”: “python3”

}, “language_info”: {

“codemirror_mode”: {

“name”: “ipython”, “version”: 3

}, “file_extension”: “.py”, “mimetype”: “text/x-python”, “name”: “python”, “nbconvert_exporter”: “python”, “pygments_lexer”: “ipython3”, “version”: “3.6.10”

}

}, “nbformat”: 4, “nbformat_minor”: 2

}