diff --git a/doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml b/doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml index a15c3ffe9..baf1ebf56 100644 --- a/doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml +++ b/doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml @@ -24,7 +24,7 @@ model iaf_psc_exp_nonlineardendrite_neuron: # diff. eq. for membrane potential #recordable inline I_dend pA = convolve(I_kernel2, I_2) * pA - inline I_syn pA = convolve(I_kernel1, I_1) * pA + convolve(I_kernel3, I_3) * pA + I_e + inline I_syn pA = convolve(I_kernel1, I_1) * pA - convolve(I_kernel3, I_3) * pA + I_e V_m' = -(V_m - E_L)/tau_m + (I_syn + I_dend) / C_m # diff. eq. for dAP trace @@ -43,13 +43,13 @@ model iaf_psc_exp_nonlineardendrite_neuron: E_L mV = 0mV # resting potential. # dendritic action potential - theta_dAP pA = 60pA # current threshold for a dendritic action potential - I_p pA = 250pA # current clamp value for I_dAP during a dendritic action potential - tau_dAP ms = 60ms # time window over which the dendritic current clamp is active + theta_dAP pA = 60 pA # current threshold for a dendritic action potential + I_p pA = 250 pA # current clamp value for I_dAP during a dendritic action potential + tau_dAP ms = 60 ms # time window over which the dendritic current clamp is active dAP_timeout_ticks integer = steps(tau_dAP) # refractory parameters - t_ref ms = 10ms # refractory period + t_ref ms = 10 ms # refractory period ref_timeout_ticks integer = steps(t_ref) I_dend_incr pA/ms = pA * exp(1) / tau_syn2 @@ -64,7 +64,7 @@ model iaf_psc_exp_nonlineardendrite_neuron: spike onReceive(I_2): - I_dend$ += I_dend_incr + I_dend$ += I_2 * ms * I_dend_incr * 1E6 # XXX factor 1E6?! update: # solve ODEs @@ -75,16 +75,23 @@ model iaf_psc_exp_nonlineardendrite_neuron: if dAP_counts == 0: if active_dendrite == false: + # starting dAP dAP_trace += 1 pA active_dendrite = true active_dendrite_readout = 1. I_dend = I_p dAP_counts = dAP_timeout_ticks else: + # ending dAP I_dend = 0 pA active_dendrite = false active_dendrite_readout = 0. + # the following assignment to I_dend$ reproduces a bug in the original implementation + c1 real = -resolution() * exp(-resolution() / tau_syn2) / tau_syn2**2 + c2 real = (-resolution() + tau_syn2)*exp(-resolution() / tau_syn2)/tau_syn2 + I_dend$ = I_p * c1 / (1 - c2) / ms + else: dAP_counts -= 1 I_dend = I_p diff --git a/doc/tutorials/sequences/sequences.ipynb b/doc/tutorials/sequences/sequences.ipynb index e4c27d52d..46c33d49b 100644 --- a/doc/tutorials/sequences/sequences.ipynb +++ b/doc/tutorials/sequences/sequences.ipynb @@ -41,8 +41,8 @@ " -- N E S T --\n", " Copyright (C) 2004 The NEST Initiative\n", "\n", - " Version: 3.5.0-rc1\n", - " Built: Feb 21 2024 09:04:08\n", + " Version: stdsp_synapse@1ac64c90c\n", + " Built: Mar 11 2024 03:10:17\n", "\n", " This program is provided AS IS and comes with\n", " NO WARRANTY. See the file LICENSE for details.\n", @@ -80,6 +80,7 @@ "\n", "import matplotlib.pyplot as plt\n", "import nest\n", + "import nest.raster_plot\n", "import numpy as np\n", "import os\n", "import random\n", @@ -88,13 +89,600 @@ "import parameters as para\n", "\n", "import shtm\n", - "import shtm.model\n", + "#import shtm.model\n", "import shtm.helper\n", + "from shtm import helper # XXX\n", "import copy\n", "import time\n", "\n", + "import random\n", + "import os\n", + "import nest\n", + "import copy\n", + "import numpy as np\n", + "from collections import defaultdict\n", + "\n", + "\n", "from pynestml.codegeneration.nest_code_generator_utils import NESTCodeGeneratorUtils\n", - "from pynestml.codegeneration.nest_tools import NESTTools" + "from pynestml.codegeneration.nest_tools import NESTTools\n", + "\n", + "n_threads = 1 # number of threads to use for simulations. This depends on your computer hardware." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "class Model:\n", + " \"\"\"Instantiation of the Spiking-TemporalMemory model and its PyNEST implementation.\n", + "\n", + " the model provides the following member functions: \n", + "\n", + " __init__(parameters)\n", + " create()\n", + " connect()\n", + " simulate(t_sim)\n", + "\n", + " In addition, each model may implement other model-specific member functions.\n", + " \"\"\"\n", + "\n", + " def __init__(self, params, sequences, vocabulary):\n", + " \"\"\"Initialize model and simulation instance, including\n", + "\n", + " 1) parameter setting,\n", + " 2) generate sequence data,\n", + " 3) configuration of the NEST kernel,\n", + " 4) setting random-number generator seed, and\n", + "\n", + " Parameters\n", + " ----------\n", + " params: dict\n", + " Parameter dictionary\n", + " \"\"\"\n", + "\n", + " print('\\nInitialising model and simulation...')\n", + "\n", + " # set parameters derived from base parameters\n", + " self.params = helper.derived_parameters(params)\n", + " print(\"Model parameters: \" + str(self.params))\n", + "\n", + " # data directory\n", + " self.data_path = self.params['label']\n", + "\n", + " try:\n", + " os.mkdir(self.data_path)\n", + " except:\n", + " pass\n", + "\n", + " print(\"Data will be written to: {}\\n\".format(self.data_path))\n", + "\n", + " # set network size\n", + " self.num_subpopulations = params['M']\n", + " self.num_exc_neurons = params['n_E'] * self.num_subpopulations\n", + "\n", + " # initialize RNG \n", + " np.random.seed(self.params['seed'])\n", + " random.seed(self.params['seed'])\n", + "\n", + " # input stream: sequence data\n", + " self.sequences = sequences\n", + " self.vocabulary = vocabulary\n", + " self.length_sequence = len(self.sequences[0])\n", + " self.num_sequences = len(self.sequences)\n", + "\n", + " # initialize the NEST kernel\n", + " self.__setup_nest()\n", + "\n", + " # get time constant for dendriticAP rate\n", + " self.params['soma_params']['tau_h'] = self.__get_time_constant_dendritic_rate(\n", + " calibration=self.params['calibration'])\n", + "\n", + " def __setup_nest(self):\n", + " \"\"\"Initializes the NEST kernel.\n", + " \"\"\"\n", + "\n", + " nest.ResetKernel()\n", + " nest.SetKernelStatus({\n", + " 'resolution': self.params['dt'],\n", + " 'print_time': self.params['print_simulation_progress'],\n", + " 'local_num_threads': n_threads,\n", + " 'rng_seed': self.params['seed'],\n", + " 'dict_miss_is_error': True,\n", + " 'overwrite_files': self.params['overwrite_files'],\n", + " 'data_path': str(self.data_path),\n", + " 'data_prefix': ''\n", + " })\n", + "\n", + " def create(self):\n", + " \"\"\"Create and configure all network nodes (neurons + recording and stimulus devices)\n", + " \"\"\"\n", + "\n", + " print('\\nCreating and configuring nodes...')\n", + "\n", + " # create excitatory population\n", + " self.__create_neuronal_populations()\n", + "\n", + " # compute timing of the external inputs and recording devices\n", + " # TODO: this function should probably not be part of the model\n", + " excitation_times, excitation_times_neuron, idend_recording_times = self.__compute_timing_external_inputs(\n", + " self.params['DeltaT'], self.params['DeltaT_seq'], self.params['DeltaT_cue'], \n", + " self.params['excitation_start'], self.params['time_dend_to_somatic'])\n", + "\n", + " # create spike generators\n", + " self.__create_spike_generators(excitation_times_neuron)\n", + "\n", + " # create recording devices\n", + " self.__create_recording_devices(excitation_times, idend_recording_times)\n", + "\n", + " # create weight recorder\n", + " if self.params['active_weight_recorder']:\n", + " self.__create_weight_recorder()\n", + "\n", + " def connect(self):\n", + " \"\"\"Connects network and devices\n", + " \"\"\"\n", + "\n", + " print('\\nConnecting network and devices...')\n", + " # TODO: take into account L (number of subpopulations per character) when connecting the network\n", + "\n", + " # connect excitatory population (EE)\n", + " if self.params['load_connections']:\n", + " self.__load_connections(label='ee_connections')\n", + " else:\n", + " self.__connect_excitatory_neurons()\n", + "\n", + " # connect inhibitory population (II, EI, IE)\n", + " self.__connect_inhibitory_neurons()\n", + "\n", + " # connect external input\n", + " self.__connect_external_inputs_to_subpopulations()\n", + "\n", + " # connect neurons to the spike recorder\n", + " nest.Connect(self.exc_neurons, self.spike_recorder_soma)\n", + " nest.Connect(self.exc_neurons, self.spike_recorder_soma_)\n", + " nest.Connect(self.inh_neurons, self.spike_recorder_inh)\n", + " nest.Connect(self.inh_neurons, self.spike_recorder_inh_)\n", + "\n", + " # connect multimeter for recording dendritic current\n", + " if self.params['evaluate_performance']:\n", + " nest.Connect(self.multimeter_idend_eval, self.exc_neurons)\n", + " nest.Connect(self.multimeter_idend_eval_, self.exc_neurons)\n", + " nest.Connect(self.multimeter_vm_eval_, self.exc_neurons)\n", + "\n", + " # connect multimeter for recording dendritic current from all subpopulations of the last trial\n", + " if self.params['record_idend_last_episode']:\n", + " nest.Connect(self.multimeter_idend_last_episode, self.exc_neurons)\n", + "\n", + " # set min synaptic strength\n", + " self.__set_min_synaptic_strength()\n", + "\n", + " def simulate(self):\n", + " \"\"\"Run simulation.\n", + " \"\"\"\n", + "\n", + " # the simulation time is set during the creation of the network \n", + " if nest.Rank() == 0:\n", + " print('\\nSimulating {} ms.'.format(self.sim_time))\n", + "\n", + " nest.Simulate(self.sim_time)\n", + "\n", + " def __create_neuronal_populations(self):\n", + " \"\"\"'Create neuronal populations\n", + " \"\"\"\n", + "\n", + " # create excitatory population\n", + " self.exc_neurons = nest.Create(self.params['soma_model'],\n", + " self.num_exc_neurons,\n", + " params=self.params['soma_params'])\n", + "\n", + " # create inhibitory population\n", + " self.inh_neurons = nest.Create(self.params['inhibit_model'],\n", + " self.params['n_I'] * self.num_subpopulations,\n", + " params=self.params['inhibit_params'])\n", + "\n", + " def __create_spike_generators(self, excitation_times_neuron):\n", + " \"\"\"Create spike generators\n", + " \"\"\"\n", + "\n", + " excitation_times_soma, excitation_times_dend = excitation_times_neuron \n", + "\n", + " self.input_excitation_soma = {}\n", + " self.input_excitation_dend = {}\n", + " for char in self.vocabulary:\n", + " self.input_excitation_soma[char] = nest.Create('spike_generator')\n", + " self.input_excitation_dend[char] = nest.Create('spike_generator')\n", + "\n", + " # set spike generator status with the above computed excitation times\n", + " for char in self.vocabulary:\n", + " nest.SetStatus(self.input_excitation_soma[char], {'spike_times': excitation_times_soma[char]})\n", + "\n", + " # this makes the first population in the sequence sparse\n", + " if self.params['sparse_first_char']:\n", + " first_chars = [char for seq in self.sequences for char in [seq[0]]]\n", + " for char in first_chars:\n", + " nest.SetStatus(self.input_excitation_dend[char], {'spike_times': excitation_times_dend[char]})\n", + "\n", + " def __create_recording_devices(self, excitation_times, idend_recording_times):\n", + " \"\"\"Create recording devices\n", + " \"\"\"\n", + "\n", + " # create a spike recorder for exc neurons\n", + " self.spike_recorder_soma = nest.Create('spike_recorder', params={'record_to': 'ascii','label': 'somatic_spikes'})\n", + " self.spike_recorder_soma_ = nest.Create('spike_recorder', params={'label': 'somatic_spikes'})\n", + "\n", + " # create a spike recorder for inh neurons\n", + " self.spike_recorder_inh = nest.Create('spike_recorder', params={'record_to': 'ascii','label': 'inh_spikes'})\n", + " self.spike_recorder_inh_ = nest.Create('spike_recorder', params={'label': 'inh_spikes'})\n", + "\n", + " # create multimeter to record dendritic currents of exc_neurons at the time of the last element in the sequence\n", + " if self.params['evaluate_performance']:\n", + " self.multimeter_idend_eval = nest.Create('multimeter', self.num_sequences,\n", + " params={'record_from': ['I_dend'],\n", + " 'record_to': 'ascii',\n", + " 'label': 'idend_eval'})\n", + " \n", + " self.multimeter_idend_eval_ = nest.Create('multimeter',\n", + " params={'record_from': ['I_dend'],\n", + " 'label': 'idend_eval'})\n", + " self.multimeter_vm_eval_ = nest.Create('multimeter',\n", + " params={'record_from': ['V_m'],\n", + " 'label': 'vm_eval'})\n", + "\n", + "\n", + " for i in range(self.num_sequences):\n", + " idend_eval_spec_dict = {'offset': idend_recording_times[i][0] + self.params['idend_record_time'],\n", + " 'interval': idend_recording_times[i][1] - idend_recording_times[i][0]}\n", + " nest.SetStatus(self.multimeter_idend_eval[i], idend_eval_spec_dict)\n", + "\n", + " #nest.SetStatus(self.multimeter_idend_eval_, {\"interval\": nest.GetKernelStatus()[\"resolution\"]})\n", + " #nest.SetStatus(self.multimeter_vm_eval_, {\"interval\": nest.GetKernelStatus()[\"resolution\"]})\n", + "\n", + " # create multimeter for recording dendritic current from all subpopulations of the last episode\n", + " if self.params['record_idend_last_episode']:\n", + " self.multimeter_idend_last_episode = nest.Create('multimeter', params={'record_from': ['I_dend'],\n", + " 'record_to': 'ascii',\n", + " 'label': 'idend_last_episode'})\n", + "\n", + " if self.params['evaluate_replay']:\n", + " idend_dict = {'interval': self.params['idend_recording_interval'],\n", + " 'start': self.params['excitation_start'],\n", + " 'stop': self.params['excitation_start'] \\\n", + " + len(self.sequences) * self.params['DeltaT_cue']}\n", + "\n", + " nest.SetStatus(self.multimeter_idend_last_episode, idend_dict)\n", + " else:\n", + " number_elements_per_batch = sum([len(seq) for seq in self.sequences])\n", + " idend_dict = {'interval': self.params['idend_recording_interval'],\n", + " 'start': excitation_times[-number_elements_per_batch],\n", + " 'stop': excitation_times[-1] + self.params['pad_time']}\n", + "\n", + " nest.SetStatus(self.multimeter_idend_last_episode, idend_dict)\n", + "\n", + " def __create_weight_recorder(self):\n", + " \"\"\"Create weight recorder\n", + " \"\"\"\n", + "\n", + " self.wr = nest.Create('weight_recorder', {'record_to': 'ascii', 'label': 'weight_recorder'})\n", + " #self.params['syn_dict_ee']['weight_recorder'] = self.wr\n", + " nest.CopyModel(params['syn_dict_ee']['synapse_model'], 'stdsp_synapse_rec', {'weight_recorder': self.wr})\n", + " self.params['syn_dict_ee']['synapse_model'] = 'stdsp_synapse_rec'\n", + "\n", + " def __compute_timing_external_inputs(self, DeltaT, DeltaT_seq, DeltaT_cue, excitation_start, time_dend_to_somatic):\n", + " \"\"\"Specifies the excitation times of the external input for each sequence element,\n", + " subsequent sequence elements are presented with inter-stimulus interval DeltaT, \n", + " subsequent sequences are separated in time by an inter-sequence time interval DeltaT_seq,\n", + " during the replay, the presented cues are seperated by an intercue time interval Delta_cue,\n", + " In addition this function saves the times at which a dendritic current should be recorded,\n", + " we don't want to record the dendritic current every time step as this consumes a lot of memory,\n", + " so we instead record the dendritic current every 'episodes_to_testing' episodes,\n", + " recording the dendritic current is essential for computing the prediction performance,\n", + " the dendritic current is saved only at the time of last element in the sequence,\n", + " this is because when assessing the prediction performance, we compute the prediction error \n", + " only with respect to the last element in the sequence\n", + " \n", + " Parameters\n", + " ---------\n", + " DeltaT : float\n", + " DeltaT_seq : float\n", + " DeltaT_cue : float \n", + " excitation_start : float\n", + " time_dend_to_somatic : float\n", + "\n", + " Returns:\n", + " --------\n", + " excitation_times: list(float)\n", + " excitation_times_soma: dict\n", + " excitation_times_dend: dict\n", + " idend_recording_times: dict\n", + " \"\"\"\n", + "\n", + " excitation_times_soma = defaultdict(list)\n", + " excitation_times_dend = defaultdict(list)\n", + " idend_recording_times = defaultdict(list)\n", + "\n", + " excitation_times = []\n", + " sim_time = excitation_start\n", + " for le in range(self.params['learning_episodes'] + 1):\n", + " print(\"Learning episode: \" + str(le) + \" of \" + str(self.params['learning_episodes'] + 1))\n", + "\n", + " for seq_num, sequence in enumerate(self.sequences):\n", + " len_seq = len(sequence)\n", + " for i, char in enumerate(sequence):\n", + "\n", + " if i != 0:\n", + " sim_time += DeltaT\n", + "\n", + " # store time of excitation for each symbol\n", + " excitation_times_soma[char] += [sim_time]\n", + " if i == 0:\n", + " excitation_times_dend[char] += [sim_time - time_dend_to_somatic]\n", + "\n", + " # store dendritic spike times recording\n", + " if (i == len_seq - 2) and (le % self.params['episodes_to_testing'] == 0):\n", + " idend_recording_times[seq_num] += [sim_time]\n", + "\n", + " excitation_times.append(sim_time)\n", + "\n", + " if self.params['evaluate_replay']:\n", + " break\n", + "\n", + " # set timing between sequences\n", + " if self.params['evaluate_replay']:\n", + " sim_time += DeltaT_cue\n", + " else:\n", + " sim_time += DeltaT_seq\n", + "\n", + " # save data\n", + " if self.params['evaluate_performance'] or self.params['evaluate_replay']:\n", + " try:\n", + " print(\"mkdir: \" + str(self.data_path))\n", + " os.mkdir(self.data_path)\n", + " except:\n", + " pass\n", + " np.save('%s/%s' % (self.data_path, 'idend_recording_times'), idend_recording_times)\n", + " print(\"Saving idend_recording_times to \" + str(os.path.join(self.data_path, 'idend_recording_times')))\n", + " np.save('%s/%s' % (self.data_path, 'excitation_times_soma'),\n", + " excitation_times_soma)\n", + " np.save('%s/%s' % (self.data_path, 'excitation_times'), excitation_times)\n", + "\n", + " self.sim_time = sim_time\n", + " return excitation_times, [excitation_times_soma, excitation_times_dend], idend_recording_times\n", + "\n", + " def __get_subpopulation_neurons(self, index_subpopulation):\n", + " \"\"\"Get neuron's indices (NEST NodeCollection) belonging to a subpopulation\n", + " \n", + " Parameters\n", + " ---------\n", + " index_subpopulation: int\n", + "\n", + " Returns\n", + " -------\n", + " NEST NodeCollection\n", + " \"\"\"\n", + "\n", + " neurons_indices = [int(index_subpopulation) * self.params['n_E'] + i for i in\n", + " range(self.params['n_E'])]\n", + "\n", + " return self.exc_neurons[neurons_indices]\n", + "\n", + " def __connect_excitatory_neurons(self):\n", + " \"\"\"Connect excitatory neurons\n", + " \"\"\"\n", + " print(\"Conn exc neurons\")\n", + " print(self.params['conn_dict_ee'])\n", + " print(self.params['syn_dict_ee'])\n", + " nest.Connect(self.exc_neurons, self.exc_neurons, conn_spec=self.params['conn_dict_ee'],\n", + " syn_spec=self.params['syn_dict_ee'])\n", + "# syn = nest.GetConnections(source=self.exc_neurons, target=self.exc_neurons, synapse_model=self.params[\"syn_dict_ee\"][\"synapse_model_name\"]) # XXX\n", + "# assert all(np.array(syn.weight) > 0)\n", + "# import pdb;pdb.set_trace()\n", + "\n", + " def __connect_inhibitory_neurons(self):\n", + " \"\"\"Connect inhibitory neurons\n", + " \"\"\"\n", + "\n", + " for k, subpopulation_index in enumerate(range(self.num_subpopulations)):\n", + " # connect inhibitory population \n", + " subpopulation_neurons = self.__get_subpopulation_neurons(subpopulation_index)\n", + "\n", + " # connect neurons within the same mini-subpopulation to the inhibitory population\n", + " nest.Connect(subpopulation_neurons, self.inh_neurons[k], syn_spec=self.params['syn_dict_ie'])\n", + "\n", + " # connect the inhibitory neurons to the neurons within the same mini-subpopulation\n", + " nest.Connect(self.inh_neurons[k], subpopulation_neurons, syn_spec=self.params['syn_dict_ei'])\n", + "\n", + " def __connect_external_inputs_to_subpopulations(self):\n", + " \"\"\"Connect external inputs to subpopulations\n", + " \"\"\"\n", + "\n", + " # get input encoding\n", + " self.characters_to_subpopulations = self.__stimulus_preference(fname='characters_to_subpopulations')\n", + "\n", + " # save characters_to_subpopulations for evaluation\n", + " if self.params['evaluate_performance'] or self.params['evaluate_replay']:\n", + " fname = 'characters_to_subpopulations'\n", + " np.save('%s/%s' % (self.data_path, fname), self.characters_to_subpopulations)\n", + "\n", + " for char in self.vocabulary:\n", + " subpopulations_indices = self.characters_to_subpopulations[char]\n", + "\n", + " # receptor type 1 correspond to the feedforward synapse of the 'iaf_psc_exp_multisynapse' model\n", + " for subpopulation_index in subpopulations_indices:\n", + " subpopulation_neurons = self.__get_subpopulation_neurons(subpopulation_index)\n", + " nest.Connect(self.input_excitation_soma[char], subpopulation_neurons,\n", + " self.params['conn_dict_ex'], syn_spec=self.params['syn_dict_ex'])\n", + " nest.Connect(self.input_excitation_dend[char], subpopulation_neurons,\n", + " self.params['conn_dict_edx'], syn_spec=self.params['syn_dict_edx'])\n", + "\n", + " def __stimulus_preference(self, fname='characters_to_subpopulations'):\n", + " \"\"\"Assign a subset of subpopulations to a each element in the vocabulary.\n", + "\n", + " Parameters\n", + " ----------\n", + " fname : str\n", + "\n", + " Returns\n", + " -------\n", + " characters_to_subpopulations: dict\n", + " \"\"\"\n", + "\n", + " if len(self.vocabulary) * self.params['L'] > self.num_subpopulations:\n", + " raise ValueError(\n", + " \"num_subpopulations needs to be large than length_user_characters*num_subpopulations_per_character\")\n", + "\n", + " characters_to_subpopulations = defaultdict(list) # a dictionary that assigns mini-subpopulation to characters\n", + "\n", + " subpopulation_indices = np.arange(self.num_subpopulations)\n", + " # permuted_subpopulation_indices = np.random.permutation(subpopulation_indices)\n", + " permuted_subpopulation_indices = subpopulation_indices\n", + " index_characters_to_subpopulations = []\n", + "\n", + " if self.params['load_connections']:\n", + " # load connectivity: from characters to mini-subpopulations\n", + " path = helper.get_data_path(self.params['data_path'], self.params['label'])\n", + " characters_to_subpopulations = load_input_encoding(path, fname)\n", + " else:\n", + " for char in self.vocabulary:\n", + " # randomly select a subset of mini-subpopulations for a character\n", + " characters_to_subpopulations[char] = permuted_subpopulation_indices[:self.params['L']]\n", + " # delete mini-subpopulations from the permuted_subpopulation_indices that are already selected\n", + " permuted_subpopulation_indices = permuted_subpopulation_indices[self.params['L']:]\n", + "\n", + " return characters_to_subpopulations\n", + "\n", + " def __set_min_synaptic_strength(self):\n", + " \"\"\"Set synaptic Wmin\n", + " \"\"\"\n", + "\n", + " print('\\nSet min synaptic strength ...')\n", + " connections = nest.GetConnections(synapse_model=self.params['syn_dict_ee']['synapse_model'])\n", + " print('\\nSet min synaptic strength .2..')\n", + "\n", + " if \"stdsp\" in self.params['syn_dict_ee']['synapse_model']:\n", + " print('\\nSet min synaptic strength .3..')\n", + " #import pdb;pdb.set_trace()\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " connections.set({'permanence_min': connections.permanence})\n", + " else:\n", + " connections.set({'Pmin': connections.permanence})\n", + " \n", + " print('\\nSet min synaptic strength .3..')\n", + " else:\n", + " print('\\nSet min synaptic strength .4..')\n", + " connections.set({'Wmin': connections.weight})\n", + " print('\\nSet min synaptic strength .4..')\n", + "\n", + " def save_connections(self, fname='ee_connections'):\n", + " \"\"\"Save connection matrix\n", + "\n", + " Parameters\n", + " ----------\n", + " label: str\n", + " name of the stored file\n", + " \"\"\"\n", + "\n", + " print('\\nSave connections ...')\n", + " connections_all = nest.GetConnections(synapse_model=self.params['syn_dict_ee']['synapse_model'])\n", + "\n", + " connections = nest.GetStatus(connections_all, ['target', 'source', 'weight', 'permanence'])\n", + "\n", + " np.save('%s/%s' % (self.data_path, fname), connections)\n", + "\n", + " def __load_connections(self, label='ee_connections'):\n", + " \"\"\"Load connection matrix\n", + " \n", + " Parameters\n", + " ----------\n", + " label: str\n", + " name of the stored file\n", + " \"\"\"\n", + " assert False # XXX\n", + "\n", + " assert self.params['syn_dict_ee']['synapse_model'] != 'stdsp_synapse_rec', \"synapse model not tested yet\"\n", + "\n", + " print('\\nLoad connections ...')\n", + " data_path = helper.get_data_path(self.params['data_path'], self.params['label'])\n", + " conns = np.load('%s/%s.npy' % (data_path, label))\n", + " conns_tg = [int(conn[0]) for conn in conns]\n", + " conns_src = [int(conn[1]) for conn in conns]\n", + " conns_weights = [conn[2] for conn in conns]\n", + "\n", + " if \"stdsp\" in self.params['syn_dict_ee']['synapse_model']:\n", + " conns_perms = [conn[3] for conn in conns]\n", + "\n", + " if self.params['evaluate_replay']:\n", + " syn_dict = {'receptor_type': 2,\n", + " 'delay': [self.params['syn_dict_ee']['delay']] * len(conns_weights),\n", + " 'weight': conns_weights}\n", + " nest.Connect(conns_src, conns_tg, 'one_to_one', syn_dict)\n", + " else:\n", + " syn_dict_ee = copy.deepcopy(self.params['syn_dict_ee'])\n", + "\n", + " del syn_dict_ee['synapse_model']\n", + " del syn_dict_ee['weight']\n", + " del syn_dict_ee['receptor_type']\n", + " if \"stdsp\" in self.params['syn_dict_ee']['synapse_model']:\n", + " del syn_dict_ee['permanence']\n", + "\n", + " nest.SetDefaults(self.params['syn_dict_ee']['synapse_model'], syn_dict_ee)\n", + "\n", + " if \"stdsp\" in self.params['syn_dict_ee']['synapse_model']:\n", + " syn_dict = {'synapse_model': self.params['syn_dict_ee']['synapse_model'],\n", + " 'receptor_type': 2,\n", + " 'weight': conns_weights,\n", + " 'permanence': conns_perms}\n", + " else:\n", + " syn_dict = {'synapse_model': self.params['syn_dict_ee']['synapse_model'],\n", + " 'receptor_type': 2,\n", + " 'weight': conns_weights}\n", + "\n", + " nest.Connect(conns_src, conns_tg, 'one_to_one', syn_dict)\n", + "\n", + " def __get_time_constant_dendritic_rate(self, DeltaT=40., DeltaT_seq=100., calibration=100, target_firing_rate=1):\n", + " \"\"\"Compute time constant of the dendritic AP rate,\n", + "\n", + " The time constant is set such that the rate captures how many dAPs a neuron generated\n", + " all along the period of a batch\n", + " \n", + " Parameters\n", + " ----------\n", + " calibration : float\n", + " target_firing_rate : float\n", + "\n", + " Returns\n", + " -------\n", + " float\n", + " time constant of the dendritic AP rate\n", + " \"\"\"\n", + "\n", + " t_exc = ((self.length_sequence-1) * DeltaT + DeltaT_seq + calibration) \\\n", + " * self.num_sequences\n", + "\n", + " print(\"\\nDuration of a sequence set %d ms\" % t_exc)\n", + "\n", + " return target_firing_rate * t_exc\n", + "\n", + "\n", + "###########################################\n", + "def load_input_encoding(path, fname):\n", + " \"\"\"Load input encoding: association between sequence element and subpopulations\n", + "\n", + " Parameters\n", + " ----------\n", + " path: str\n", + " fname: str\n", + "\n", + " Returns\n", + " -------\n", + " characters_to_subpopulations: dict\n", + " \"\"\"\n", + "\n", + " characters_to_subpopulations = helper.load_data(path, fname)\n", + "\n", + " return characters_to_subpopulations\n", + "\n" ] }, { @@ -110,7 +698,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -119,16 +707,16 @@ "text": [ "Automatic pdb calling has been turned ON\n", "[1,GLOBAL, INFO]: List of files that will be processed:\n", - "[2,GLOBAL, INFO]: /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron.nestml\n", - "[3,GLOBAL, INFO]: /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/stdspbf804901482f4460a08ae4ecee3c31cc_synapse.nestml\n", + "[2,GLOBAL, INFO]: /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron.nestml\n", + "[3,GLOBAL, INFO]: /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse.nestml\n", "[4,GLOBAL, INFO]: Target platform code will be generated in directory: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target'\n", - "[5,GLOBAL, INFO]: Target platform code will be installed in directory: '/tmp/nestml_target_xrp0lc97'\n", + "[5,GLOBAL, INFO]: Target platform code will be installed in directory: '/tmp/nestml_target_k4yl7fr1'\n", "\n", " -- N E S T --\n", " Copyright (C) 2004 The NEST Initiative\n", "\n", - " Version: 3.5.0-rc1\n", - " Built: Feb 21 2024 09:04:08\n", + " Version: stdsp_synapse@1ac64c90c\n", + " Built: Mar 11 2024 03:10:17\n", "\n", " This program is provided AS IS and comes with\n", " NO WARRANTY. See the file LICENSE for details.\n", @@ -138,33 +726,33 @@ "\n", " Type 'nest.help()' to find out more about NEST.\n", "\n", - "[6,GLOBAL, INFO]: The NEST Simulator version was automatically detected as: v3.5.0-rc1\n", + "[6,GLOBAL, INFO]: The NEST Simulator version was automatically detected as: v3.0\n", "[7,GLOBAL, INFO]: Given template root path is not an absolute path. Creating the absolute path with default templates directory '/home/charl/julich/nestml-fork-clopath_synapse/nestml/pynestml/codegeneration/resources_nest/point_neuron'\n", "[8,GLOBAL, INFO]: Given template root path is not an absolute path. Creating the absolute path with default templates directory '/home/charl/julich/nestml-fork-clopath_synapse/nestml/pynestml/codegeneration/resources_nest/point_neuron'\n", "[9,GLOBAL, INFO]: Given template root path is not an absolute path. Creating the absolute path with default templates directory '/home/charl/julich/nestml-fork-clopath_synapse/nestml/pynestml/codegeneration/resources_nest/point_neuron'\n", "[10,GLOBAL, INFO]: The NEST Simulator installation path was automatically detected as: /home/charl/julich/nest-simulator-install\n", - "[11,GLOBAL, INFO]: Start processing '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron.nestml'!\n", - "[12,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", - "[13,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [28:15;28:28]]: Implicit magnitude conversion from mV / ms to pA / pF with factor 1.0 \n", - "[14,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", - "[15,GLOBAL, INFO]: Start processing '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/stdspbf804901482f4460a08ae4ecee3c31cc_synapse.nestml'!\n", - "[16,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", - "[17,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", - "[18,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, INFO, [58:38;58:38]]: Implicit magnitude conversion from pA to pA buffer with factor 1.0 \n", - "[19,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", - "[20,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", - "[21,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", - "[22,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", - "[23,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", - "[24,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [28:15;28:28]]: Implicit magnitude conversion from mV / ms to pA / pF with factor 1.0 \n", - "[25,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", - "[26,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", - "[27,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", - "[28,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, INFO, [58:38;58:38]]: Implicit magnitude conversion from pA to pA buffer with factor 1.0 \n", - "[29,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", - "[30,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", - "[31,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", - "[32,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", + "[11,GLOBAL, INFO]: Start processing '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron.nestml'!\n", + "[12,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", + "[13,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [28:15;28:28]]: Implicit magnitude conversion from mV / ms to pA / pF with factor 1.0 \n", + "[14,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", + "[15,GLOBAL, INFO]: Start processing '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse.nestml'!\n", + "[16,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", + "[17,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", + "[18,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, INFO, [58:38;58:38]]: Implicit magnitude conversion from pA to pA buffer with factor 1.0 \n", + "[19,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", + "[20,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", + "[21,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", + "[22,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", + "[23,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", + "[24,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [28:15;28:28]]: Implicit magnitude conversion from mV / ms to pA / pF with factor 1.0 \n", + "[25,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", + "[26,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", + "[27,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", + "[28,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, INFO, [58:38;58:38]]: Implicit magnitude conversion from pA to pA buffer with factor 1.0 \n", + "[29,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", + "[30,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [55:37;55:37]]: Implicit casting from (compatible) type 'integer' to 'real'.\n", + "[31,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", + "[32,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", "[33,GLOBAL, INFO]: State variables that will be moved from synapse to neuron: ['pre_tr']\n", "[34,GLOBAL, INFO]: State variables that will be moved from synapse to neuron: ['pre_tr']\n", "[35,GLOBAL, INFO]: Parameters that will be copied from synapse to neuron: []\n", @@ -180,9 +768,9 @@ "[44,GLOBAL, INFO]: Adding suffix to variables in spike updates\n", "[45,GLOBAL, INFO]: In synapse: replacing variables with suffixed external variable references\n", "[46,GLOBAL, INFO]: \t• Replacing variable pre_tr\n", - "[47,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", - "[48,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", - "[49,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n" + "[47,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n", + "[48,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", + "[49,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n" ] }, { @@ -217,11 +805,11 @@ " }\n", " },\n", " {\n", - " \"expression\": \"I_kernel3__X__I_3 = exp(-1 / tau_syn3 * t)\",\n", + " \"expression\": \"I_kernel1__X__I_1 = exp(-1 / tau_syn1 * t)\",\n", " \"initial_values\": {}\n", " },\n", " {\n", - " \"expression\": \"I_kernel1__X__I_1 = exp(-1 / tau_syn1 * t)\",\n", + " \"expression\": \"I_kernel3__X__I_3 = exp(-1 / tau_syn3 * t)\",\n", " \"initial_values\": {}\n", " }\n", " ],\n", @@ -285,48 +873,48 @@ "DEBUG:\tnonlinear term: 0.0\n", "DEBUG:Created Shape with symbol dAP_trace, derivative_factors = [-1/tau_h], inhom_term = 0.0, nonlin_term = 0.0\n", "INFO:\tReturning shape: Shape \"dAP_trace\" of order 1\n", - "INFO:Shape dAP_trace: reconstituting expression -dAP_trace/tau_h\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[50,GLOBAL, INFO]: Successfully constructed neuron-synapse pair iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml\n", - "[51,GLOBAL, INFO]: Analysing/transforming model 'iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml'\n", - "[52,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [1:0;108:0]]: Starts processing of the model 'iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml'\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ + "INFO:Shape dAP_trace: reconstituting expression -dAP_trace/tau_h\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", + "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", - "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", + "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", + "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", + "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", - "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", - "INFO:All known variables: [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1], all parameters used in ODEs: {E_L, I_e, tau_m, tau_syn2, tau_h, tau_syn1, C_m, tau_syn3}\n", + "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", + "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", + "INFO:All known variables: [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3], all parameters used in ODEs: {tau_h, tau_syn2, E_L, tau_syn3, tau_m, tau_syn1, I_e, C_m}\n", "INFO:\n", "Processing differential-equation form shape I_dend with defining expression = \"I_dend__DOLLAR - I_dend / tau_syn2\"\n", - "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend])\n", + "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend])\n", "DEBUG:\tlinear factors: Matrix([[-1/tau_syn2], [1], [0], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "DEBUG:Created Shape with symbol I_dend, derivative_factors = [-1/tau_syn2], inhom_term = 0.0, nonlin_term = I_dend__DOLLAR\n", + "DEBUG:Created Shape with symbol I_dend, derivative_factors = [-1/tau_syn2], inhom_term = 0.0, nonlin_term = I_dend__DOLLAR\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[50,GLOBAL, INFO]: Successfully constructed neuron-synapse pair iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml\n", + "[51,GLOBAL, INFO]: Analysing/transforming model 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml'\n", + "[52,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [1:0;108:0]]: Starts processing of the model 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml'\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ "INFO:\tReturning shape: Shape \"I_dend\" of order 1\n", "INFO:\n", "Processing differential-equation form shape I_dend__DOLLAR with defining expression = \"(-I_dend__DOLLAR) / tau_syn2\"\n", - "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend, I_dend__DOLLAR])\n", + "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend, I_dend__DOLLAR])\n", "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn2], [0], [0], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", @@ -334,7 +922,7 @@ "INFO:\tReturning shape: Shape \"I_dend__DOLLAR\" of order 1\n", "INFO:\n", "Processing differential-equation form shape V_m with defining expression = \"(-(V_m - E_L)) / tau_m + ((I_kernel1__X__I_1 * 1.0 + I_kernel3__X__I_3 * 1.0 + I_e) + I_dend) / C_m\"\n", - "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_dend + I_e + 1.0*I_kernel1__X__I_1 + 1.0*I_kernel3__X__I_3)/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend, I_dend__DOLLAR, V_m])\n", + "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_dend + I_e + 1.0*I_kernel1__X__I_1 + 1.0*I_kernel3__X__I_3)/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend, I_dend__DOLLAR, V_m])\n", "DEBUG:\tlinear factors: Matrix([[1/C_m], [0], [-1/tau_m], [0], [1.0/C_m], [1.0/C_m], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n", "DEBUG:\tnonlinear term: 0.0\n", @@ -342,88 +930,88 @@ "INFO:\tReturning shape: Shape \"V_m\" of order 1\n", "INFO:\n", "Processing differential-equation form shape dAP_trace with defining expression = \"(-dAP_trace) / tau_h\"\n", - "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend, I_dend__DOLLAR, V_m, dAP_trace])\n", + "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend, I_dend__DOLLAR, V_m, dAP_trace])\n", "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_h], [0], [0], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "DEBUG:Created Shape with symbol dAP_trace, derivative_factors = [-1/tau_h], inhom_term = 0.0, nonlin_term = 0\n", "INFO:\tReturning shape: Shape \"dAP_trace\" of order 1\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", + "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", + "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", + "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", + "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", "INFO:Shape I_dend: reconstituting expression -I_dend/tau_syn2 + I_dend__DOLLAR\n", - "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", + "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", "DEBUG:\tlinear factors: Matrix([[-1/tau_syn2], [1], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape I_dend__DOLLAR: reconstituting expression -I_dend__DOLLAR/tau_syn2\n", - "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", + "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn2], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m\n", - "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", + "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", "DEBUG:\tlinear factors: Matrix([[1/C_m], [0], [-1/tau_m], [0], [1.0/C_m], [1.0/C_m]])\n", "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape dAP_trace: reconstituting expression -dAP_trace/tau_h\n", - "DEBUG:Splitting expression -dAP_trace/tau_h (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", + "DEBUG:Splitting expression -dAP_trace/tau_h (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_h], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", - "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn3], [0]])\n", + "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", + "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn1], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", - "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn1]])\n", + "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", + "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn3]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn3, 0], [0, 0, 0, 0, 0, -1/tau_syn1]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0.0], [0.0], [0.0], [0.0], [0.0], [0.0]])\n", + "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn1, 0], [0, 0, 0, 0, 0, -1/tau_syn3]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0.0], [0.0], [0.0], [0.0], [0.0], [0.0]])\n", "INFO:Finding analytically solvable equations...\n", "INFO:Saving dependency graph plot to /tmp/ode_dependency_graph.dot\n", "DEBUG:os.makedirs('/tmp')\n", "DEBUG:write lines to '/tmp/ode_dependency_graph.dot'\n", "DEBUG:run [PosixPath('dot'), '-Kdot', '-Tpdf', '-O', 'ode_dependency_graph.dot']\n", "INFO:Shape I_dend: reconstituting expression -I_dend/tau_syn2 + I_dend__DOLLAR\n", - "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", + "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", "DEBUG:\tlinear factors: Matrix([[-1/tau_syn2], [1], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape I_dend__DOLLAR: reconstituting expression -I_dend__DOLLAR/tau_syn2\n", - "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", + "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn2], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m\n", - "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", + "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", "DEBUG:\tlinear factors: Matrix([[1/C_m], [0], [-1/tau_m], [0], [1.0/C_m], [1.0/C_m]])\n", "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape dAP_trace: reconstituting expression -dAP_trace/tau_h\n", - "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", + "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_h], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", - "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn3], [0]])\n", + "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", + "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn1], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", - "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn1]])\n", + "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", + "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn3]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Saving dependency graph plot to /tmp/ode_dependency_graph_analytically_solvable_before_propagated.dot\n", @@ -434,30 +1022,30 @@ "DEBUG:os.makedirs('/tmp')\n", "DEBUG:write lines to '/tmp/ode_dependency_graph_analytically_solvable.dot'\n", "DEBUG:run [PosixPath('dot'), '-Kdot', '-Tpdf', '-O', 'ode_dependency_graph_analytically_solvable.dot']\n", - "INFO:Generating propagators for the following symbols: I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1\n", - "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn3, 0], [0, 0, 0, 0, 0, -1/tau_syn1]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0], [0], [0], [0], [0], [0]])\n", + "INFO:Generating propagators for the following symbols: I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3\n", + "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn1, 0], [0, 0, 0, 0, 0, -1/tau_syn3]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0], [0], [0], [0], [0], [0]])\n", "WARNING:Under certain conditions, the propagator matrix is singular (contains infinities).\n", "WARNING:List of all conditions that result in a singular propagator:\n", "WARNING:\ttau_m = tau_syn2\n", - "WARNING:\ttau_m = tau_syn3\n", "WARNING:\ttau_m = tau_syn1\n", + "WARNING:\ttau_m = tau_syn3\n", "DEBUG:System of equations:\n", - "DEBUG:x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]])\n", + "DEBUG:x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]])\n", "DEBUG:A = Matrix([\n", "[-1/tau_syn2, 1, 0, 0, 0, 0],\n", "[ 0, -1/tau_syn2, 0, 0, 0, 0],\n", "[ 1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m],\n", "[ 0, 0, 0, -1/tau_h, 0, 0],\n", - "[ 0, 0, 0, 0, -1/tau_syn3, 0],\n", - "[ 0, 0, 0, 0, 0, -1/tau_syn1]])\n", + "[ 0, 0, 0, 0, -1/tau_syn1, 0],\n", + "[ 0, 0, 0, 0, 0, -1/tau_syn3]])\n", "DEBUG:b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]])\n", "DEBUG:c = Matrix([[0], [0], [0], [0], [0], [0]])\n", "INFO:update_expr[I_dend] = I_dend*__P__I_dend__I_dend + I_dend__DOLLAR*__P__I_dend__I_dend__DOLLAR\n", "INFO:update_expr[I_dend__DOLLAR] = I_dend__DOLLAR*__P__I_dend__DOLLAR__I_dend__DOLLAR\n", "INFO:update_expr[V_m] = -E_L*__P__V_m__V_m + E_L + I_dend*__P__V_m__I_dend + I_dend__DOLLAR*__P__V_m__I_dend__DOLLAR + I_kernel1__X__I_1*__P__V_m__I_kernel1__X__I_1 + I_kernel3__X__I_3*__P__V_m__I_kernel3__X__I_3 + V_m*__P__V_m__V_m - I_e*__P__V_m__V_m*tau_m/C_m + I_e*tau_m/C_m\n", "INFO:update_expr[dAP_trace] = __P__dAP_trace__dAP_trace*dAP_trace\n", - "INFO:update_expr[I_kernel3__X__I_3] = I_kernel3__X__I_3*__P__I_kernel3__X__I_3__I_kernel3__X__I_3\n", "INFO:update_expr[I_kernel1__X__I_1] = I_kernel1__X__I_1*__P__I_kernel1__X__I_1__I_kernel1__X__I_1\n", + "INFO:update_expr[I_kernel3__X__I_3] = I_kernel3__X__I_3*__P__I_kernel3__X__I_3__I_kernel3__X__I_3\n", "WARNING:Not preserving expression for variable \"I_dend\" as it is solved by propagator solver\n", "WARNING:Not preserving expression for variable \"I_dend__DOLLAR\" as it is solved by propagator solver\n", "WARNING:Not preserving expression for variable \"V_m\" as it is solved by propagator solver\n", @@ -502,8 +1090,8 @@ " \"I_dend__DOLLAR\",\n", " \"V_m\",\n", " \"dAP_trace\",\n", - " \"I_kernel3__X__I_3\",\n", - " \"I_kernel1__X__I_1\"\n", + " \"I_kernel1__X__I_1\",\n", + " \"I_kernel3__X__I_3\"\n", " ],\n", " \"update_expressions\": {\n", " \"I_dend\": \"I_dend*__P__I_dend__I_dend + I_dend__DOLLAR*__P__I_dend__I_dend__DOLLAR\",\n", @@ -521,7 +1109,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "[53,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n" + "[53,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n" ] }, { @@ -556,11 +1144,11 @@ " }\n", " },\n", " {\n", - " \"expression\": \"I_kernel1__X__I_1 = exp(-1 / tau_syn1 * t)\",\n", + " \"expression\": \"I_kernel3__X__I_3 = exp(-1 / tau_syn3 * t)\",\n", " \"initial_values\": {}\n", " },\n", " {\n", - " \"expression\": \"I_kernel3__X__I_3 = exp(-1 / tau_syn3 * t)\",\n", + " \"expression\": \"I_kernel1__X__I_1 = exp(-1 / tau_syn1 * t)\",\n", " \"initial_values\": {}\n", " }\n", " ],\n", @@ -626,23 +1214,23 @@ "INFO:\tReturning shape: Shape \"dAP_trace\" of order 1\n", "INFO:Shape dAP_trace: reconstituting expression -dAP_trace/tau_h\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", + "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", - "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", + "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", + "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", + "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", - "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", - "INFO:All known variables: [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3], all parameters used in ODEs: {E_L, I_e, tau_m, tau_syn2, tau_h, tau_syn1, C_m, tau_syn3}\n", + "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", + "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", + "INFO:All known variables: [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1], all parameters used in ODEs: {tau_h, tau_syn2, E_L, tau_syn3, tau_m, tau_syn1, I_e, C_m}\n", "INFO:\n", "Processing differential-equation form shape I_dend with defining expression = \"I_dend__DOLLAR - I_dend / tau_syn2\"\n", - "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend])\n", + "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend])\n", "DEBUG:\tlinear factors: Matrix([[-1/tau_syn2], [1], [0], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", @@ -650,7 +1238,7 @@ "INFO:\tReturning shape: Shape \"I_dend\" of order 1\n", "INFO:\n", "Processing differential-equation form shape I_dend__DOLLAR with defining expression = \"(-I_dend__DOLLAR) / tau_syn2\"\n", - "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend, I_dend__DOLLAR])\n", + "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend, I_dend__DOLLAR])\n", "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn2], [0], [0], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", @@ -658,7 +1246,7 @@ "INFO:\tReturning shape: Shape \"I_dend__DOLLAR\" of order 1\n", "INFO:\n", "Processing differential-equation form shape V_m with defining expression = \"(-(V_m - E_L)) / tau_m + ((I_kernel1__X__I_1 * 1.0 + I_kernel3__X__I_3 * 1.0 + I_e) + I_dend) / C_m\"\n", - "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_dend + I_e + 1.0*I_kernel1__X__I_1 + 1.0*I_kernel3__X__I_3)/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend, I_dend__DOLLAR, V_m])\n", + "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_dend + I_e + 1.0*I_kernel1__X__I_1 + 1.0*I_kernel3__X__I_3)/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend, I_dend__DOLLAR, V_m])\n", "DEBUG:\tlinear factors: Matrix([[1/C_m], [0], [-1/tau_m], [0], [1.0/C_m], [1.0/C_m], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n", "DEBUG:\tnonlinear term: 0.0\n", @@ -669,8 +1257,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "[54,GLOBAL, INFO]: Analysing/transforming model 'iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml'\n", - "[55,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, INFO, [1:0;108:0]]: Starts processing of the model 'iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml'\n" + "[54,GLOBAL, INFO]: Analysing/transforming model 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml'\n", + "[55,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, INFO, [1:0;108:0]]: Starts processing of the model 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml'\n" ] }, { @@ -680,88 +1268,88 @@ "INFO:\tReturning shape: Shape \"V_m\" of order 1\n", "INFO:\n", "Processing differential-equation form shape dAP_trace with defining expression = \"(-dAP_trace) / tau_h\"\n", - "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3, I_dend, I_dend__DOLLAR, V_m, dAP_trace])\n", + "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1, I_dend, I_dend__DOLLAR, V_m, dAP_trace])\n", "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_h], [0], [0], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "DEBUG:Created Shape with symbol dAP_trace, derivative_factors = [-1/tau_h], inhom_term = 0.0, nonlin_term = 0\n", "INFO:\tReturning shape: Shape \"dAP_trace\" of order 1\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", + "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", + "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", "INFO:\n", - "Processing function-of-time shape \"I_kernel3__X__I_3\" with defining expression = \"exp(-t/tau_syn3)\"\n", + "Processing function-of-time shape \"I_kernel1__X__I_1\" with defining expression = \"exp(-t/tau_syn1)\"\n", "DEBUG:Found t: 0\n", "DEBUG:\tFinding ode for order 1...\n", "DEBUG:Shape satisfies ODE of order = 1\n", - "DEBUG:Created Shape with symbol I_kernel3__X__I_3, derivative_factors = [-1/tau_syn3], inhom_term = 0.0, nonlin_term = 0.0\n", + "DEBUG:Created Shape with symbol I_kernel1__X__I_1, derivative_factors = [-1/tau_syn1], inhom_term = 0.0, nonlin_term = 0.0\n", "INFO:Shape I_dend: reconstituting expression -I_dend/tau_syn2 + I_dend__DOLLAR\n", - "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", + "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", "DEBUG:\tlinear factors: Matrix([[-1/tau_syn2], [1], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape I_dend__DOLLAR: reconstituting expression -I_dend__DOLLAR/tau_syn2\n", - "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", + "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn2], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m\n", - "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", + "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", "DEBUG:\tlinear factors: Matrix([[1/C_m], [0], [-1/tau_m], [0], [1.0/C_m], [1.0/C_m]])\n", "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape dAP_trace: reconstituting expression -dAP_trace/tau_h\n", - "DEBUG:Splitting expression -dAP_trace/tau_h (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", + "DEBUG:Splitting expression -dAP_trace/tau_h (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_h], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", - "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn1], [0]])\n", + "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", + "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn3], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", - "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]))\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn3]])\n", + "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", + "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]))\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn1]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn1, 0], [0, 0, 0, 0, 0, -1/tau_syn3]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0.0], [0.0], [0.0], [0.0], [0.0], [0.0]])\n", + "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn3, 0], [0, 0, 0, 0, 0, -1/tau_syn1]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0.0], [0.0], [0.0], [0.0], [0.0], [0.0]])\n", "INFO:Finding analytically solvable equations...\n", "INFO:Saving dependency graph plot to /tmp/ode_dependency_graph.dot\n", "DEBUG:os.makedirs('/tmp')\n", "DEBUG:write lines to '/tmp/ode_dependency_graph.dot'\n", "DEBUG:run [PosixPath('dot'), '-Kdot', '-Tpdf', '-O', 'ode_dependency_graph.dot']\n", "INFO:Shape I_dend: reconstituting expression -I_dend/tau_syn2 + I_dend__DOLLAR\n", - "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", + "DEBUG:Splitting expression -I_dend/tau_syn2 + I_dend__DOLLAR (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", "DEBUG:\tlinear factors: Matrix([[-1/tau_syn2], [1], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape I_dend__DOLLAR: reconstituting expression -I_dend__DOLLAR/tau_syn2\n", - "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", + "DEBUG:Splitting expression -I_dend__DOLLAR/tau_syn2 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn2], [0], [0], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m\n", - "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", + "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_dend/C_m + I_e/C_m + 1.0*I_kernel1__X__I_1/C_m + 1.0*I_kernel3__X__I_3/C_m (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", "DEBUG:\tlinear factors: Matrix([[1/C_m], [0], [-1/tau_m], [0], [1.0/C_m], [1.0/C_m]])\n", "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Shape dAP_trace: reconstituting expression -dAP_trace/tau_h\n", - "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", + "DEBUG:Splitting expression -dAP_trace/tau_h (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_h], [0], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", - "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn1], [0]])\n", + "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", + "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn3], [0]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", - "INFO:Shape I_kernel3__X__I_3: reconstituting expression -I_kernel3__X__I_3/tau_syn3\n", - "DEBUG:Splitting expression -I_kernel3__X__I_3/tau_syn3 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3])\n", - "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn3]])\n", + "INFO:Shape I_kernel1__X__I_1: reconstituting expression -I_kernel1__X__I_1/tau_syn1\n", + "DEBUG:Splitting expression -I_kernel1__X__I_1/tau_syn1 (symbols [I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1])\n", + "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [0], [0], [-1/tau_syn1]])\n", "DEBUG:\tinhomogeneous term: 0.0\n", "DEBUG:\tnonlinear term: 0.0\n", "INFO:Saving dependency graph plot to /tmp/ode_dependency_graph_analytically_solvable_before_propagated.dot\n", @@ -772,30 +1360,30 @@ "DEBUG:os.makedirs('/tmp')\n", "DEBUG:write lines to '/tmp/ode_dependency_graph_analytically_solvable.dot'\n", "DEBUG:run [PosixPath('dot'), '-Kdot', '-Tpdf', '-O', 'ode_dependency_graph_analytically_solvable.dot']\n", - "INFO:Generating propagators for the following symbols: I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel1__X__I_1, I_kernel3__X__I_3\n", - "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn1, 0], [0, 0, 0, 0, 0, -1/tau_syn3]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0], [0], [0], [0], [0], [0]])\n", + "INFO:Generating propagators for the following symbols: I_dend, I_dend__DOLLAR, V_m, dAP_trace, I_kernel3__X__I_3, I_kernel1__X__I_1\n", + "DEBUG:Initializing system of shapes with x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]]), A = Matrix([[-1/tau_syn2, 1, 0, 0, 0, 0], [0, -1/tau_syn2, 0, 0, 0, 0], [1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m], [0, 0, 0, -1/tau_h, 0, 0], [0, 0, 0, 0, -1/tau_syn3, 0], [0, 0, 0, 0, 0, -1/tau_syn1]]), b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[0], [0], [0], [0], [0], [0]])\n", "WARNING:Under certain conditions, the propagator matrix is singular (contains infinities).\n", "WARNING:List of all conditions that result in a singular propagator:\n", "WARNING:\ttau_m = tau_syn2\n", - "WARNING:\ttau_m = tau_syn1\n", "WARNING:\ttau_m = tau_syn3\n", + "WARNING:\ttau_m = tau_syn1\n", "DEBUG:System of equations:\n", - "DEBUG:x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel1__X__I_1], [I_kernel3__X__I_3]])\n", + "DEBUG:x = Matrix([[I_dend], [I_dend__DOLLAR], [V_m], [dAP_trace], [I_kernel3__X__I_3], [I_kernel1__X__I_1]])\n", "DEBUG:A = Matrix([\n", "[-1/tau_syn2, 1, 0, 0, 0, 0],\n", "[ 0, -1/tau_syn2, 0, 0, 0, 0],\n", "[ 1/C_m, 0, -1/tau_m, 0, 1.0/C_m, 1.0/C_m],\n", "[ 0, 0, 0, -1/tau_h, 0, 0],\n", - "[ 0, 0, 0, 0, -1/tau_syn1, 0],\n", - "[ 0, 0, 0, 0, 0, -1/tau_syn3]])\n", + "[ 0, 0, 0, 0, -1/tau_syn3, 0],\n", + "[ 0, 0, 0, 0, 0, -1/tau_syn1]])\n", "DEBUG:b = Matrix([[0.0], [0.0], [E_L/tau_m + I_e/C_m], [0.0], [0.0], [0.0]])\n", "DEBUG:c = Matrix([[0], [0], [0], [0], [0], [0]])\n", "INFO:update_expr[I_dend] = I_dend*__P__I_dend__I_dend + I_dend__DOLLAR*__P__I_dend__I_dend__DOLLAR\n", "INFO:update_expr[I_dend__DOLLAR] = I_dend__DOLLAR*__P__I_dend__DOLLAR__I_dend__DOLLAR\n", "INFO:update_expr[V_m] = -E_L*__P__V_m__V_m + E_L + I_dend*__P__V_m__I_dend + I_dend__DOLLAR*__P__V_m__I_dend__DOLLAR + I_kernel1__X__I_1*__P__V_m__I_kernel1__X__I_1 + I_kernel3__X__I_3*__P__V_m__I_kernel3__X__I_3 + V_m*__P__V_m__V_m - I_e*__P__V_m__V_m*tau_m/C_m + I_e*tau_m/C_m\n", "INFO:update_expr[dAP_trace] = __P__dAP_trace__dAP_trace*dAP_trace\n", - "INFO:update_expr[I_kernel1__X__I_1] = I_kernel1__X__I_1*__P__I_kernel1__X__I_1__I_kernel1__X__I_1\n", "INFO:update_expr[I_kernel3__X__I_3] = I_kernel3__X__I_3*__P__I_kernel3__X__I_3__I_kernel3__X__I_3\n", + "INFO:update_expr[I_kernel1__X__I_1] = I_kernel1__X__I_1*__P__I_kernel1__X__I_1__I_kernel1__X__I_1\n", "WARNING:Not preserving expression for variable \"I_dend\" as it is solved by propagator solver\n", "WARNING:Not preserving expression for variable \"I_dend__DOLLAR\" as it is solved by propagator solver\n", "WARNING:Not preserving expression for variable \"V_m\" as it is solved by propagator solver\n", @@ -840,8 +1428,8 @@ " \"I_dend__DOLLAR\",\n", " \"V_m\",\n", " \"dAP_trace\",\n", - " \"I_kernel1__X__I_1\",\n", - " \"I_kernel3__X__I_3\"\n", + " \"I_kernel3__X__I_3\",\n", + " \"I_kernel1__X__I_1\"\n", " ],\n", " \"update_expressions\": {\n", " \"I_dend\": \"I_dend*__P__I_dend__I_dend + I_dend__DOLLAR*__P__I_dend__I_dend__DOLLAR\",\n", @@ -859,7 +1447,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "[56,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n" + "[56,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, DEBUG, [1:0;108:0]]: Start building symbol table!\n" ] }, { @@ -947,8 +1535,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "[57,GLOBAL, INFO]: Analysing/transforming synapse stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.\n", - "[58,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [12:0;83:0]]: Starts processing of the model 'stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml'\n" + "[57,GLOBAL, INFO]: Analysing/transforming synapse stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.\n", + "[58,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [12:0;83:0]]: Starts processing of the model 'stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml'\n" ] }, { @@ -989,25 +1577,25 @@ "name": "stdout", "output_type": "stream", "text": [ - "[59,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", - "[60,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", - "[61,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", - "[62,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", - "[63,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.cpp\n", - "[64,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h\n", - "[65,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [1:0;108:0]]: Successfully generated code for the model: 'iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target' !\n", - "[66,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp\n", - "[67,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.h\n", - "[68,iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml, INFO, [1:0;108:0]]: Successfully generated code for the model: 'iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target' !\n", - "Checking pair {'neuron': 'iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron', 'synapse': 'stdspbf804901482f4460a08ae4ecee3c31cc_synapse', 'post_ports': ['post_spikes', ['dAP_trace', 'dAP_trace']], 'vt_ports': None} for ne = iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron syn = stdspbf804901482f4460a08ae4ecee3c31cc_synapse\n", + "[59,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", + "[60,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", + "[61,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, DEBUG, [12:0;83:0]]: Start building symbol table!\n", + "[62,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, WARNING, [21:8;21:28]]: Variable 'd' has the same name as a physical unit!\n", + "[63,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp\n", + "[64,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h\n", + "[65,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [1:0;108:0]]: Successfully generated code for the model: 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target' !\n", + "[66,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp\n", + "[67,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.h\n", + "[68,iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml, INFO, [1:0;108:0]]: Successfully generated code for the model: 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target' !\n", + "Checking pair {'neuron': 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron', 'synapse': 'stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse', 'post_ports': ['post_spikes', ['dAP_trace', 'dAP_trace']], 'vt_ports': None} for ne = iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron syn = stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse\n", "post port names: [['dAP_trace', 'dAP_trace']]\n", "Searching for dAP_trace\n", "post port names: [['dAP_trace', 'dAP_trace']]\n", "Searching for dAP_trace\n", - "[69,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h\n", - "[70,stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml, INFO, [12:0;83:0]]: Successfully generated code for the model: 'stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target' !\n", - "[71,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_bf804901482f4460a08ae4ecee3c31cc_module.cpp\n", - "[72,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_bf804901482f4460a08ae4ecee3c31cc_module.h\n", + "[69,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h\n", + "[70,stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml, INFO, [12:0;83:0]]: Successfully generated code for the model: 'stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target' !\n", + "[71,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.cpp\n", + "[72,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.h\n", "[73,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/CMakeLists.txt\n", "[74,GLOBAL, INFO]: Successfully generated NEST module code in '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target' !\n", "CMake Warning (dev) at CMakeLists.txt:95 (project):\n", @@ -1024,27 +1612,27 @@ "-- Detecting CXX compile features - done\n", "\n", "-------------------------------------------------------\n", - "nestml_bf804901482f4460a08ae4ecee3c31cc_module Configuration Summary\n", + "nestml_45b2cc450f1343c880cd5eed30ad08bd_module Configuration Summary\n", "-------------------------------------------------------\n", "\n", "C++ compiler : /usr/bin/c++\n", "Build static libs : OFF\n", "C++ compiler flags : \n", - "NEST compiler flags : -std=c++11 -Wall -fopenmp -O2 -fdiagnostics-color=auto -g\n", + "NEST compiler flags : -std=c++11 -O2 -Wall -fopenmp -fdiagnostics-color=auto\n", "NEST include dirs : -I/home/charl/julich/nest-simulator-install/include/nest -I/usr/include -I/usr/include -I/usr/include\n", - "NEST libraries flags : -L/home/charl/julich/nest-simulator-install/lib/nest -lnest -lsli -fopenmp /usr/lib/x86_64-linux-gnu/libltdl.so /usr/lib/x86_64-linux-gnu/libgsl.so /usr/lib/x86_64-linux-gnu/libgslcblas.so\n", + "NEST libraries flags : -L/home/charl/julich/nest-simulator-install/lib/nest -lnestutil -lnest -lsli -lnestkernel -fopenmp /usr/lib/x86_64-linux-gnu/libltdl.so /usr/lib/x86_64-linux-gnu/libgsl.so /usr/lib/x86_64-linux-gnu/libgslcblas.so\n", "\n", "-------------------------------------------------------\n", "\n", - "You can now build and install 'nestml_bf804901482f4460a08ae4ecee3c31cc_module' using\n", + "You can now build and install 'nestml_45b2cc450f1343c880cd5eed30ad08bd_module' using\n", " make\n", " make install\n", "\n", - "The library file libnestml_bf804901482f4460a08ae4ecee3c31cc_module.so will be installed to\n", - " /tmp/nestml_target_xrp0lc97\n", + "The library file libnestml_45b2cc450f1343c880cd5eed30ad08bd_module.so will be installed to\n", + " /tmp/nestml_target_k4yl7fr1\n", "The module can be loaded into NEST using\n", - " (nestml_bf804901482f4460a08ae4ecee3c31cc_module) Install (in SLI)\n", - " nest.Install(nestml_bf804901482f4460a08ae4ecee3c31cc_module) (in PyNEST)\n", + " (nestml_45b2cc450f1343c880cd5eed30ad08bd_module) Install (in SLI)\n", + " nest.Install(nestml_45b2cc450f1343c880cd5eed30ad08bd_module) (in PyNEST)\n", "\n", "CMake Warning (dev) in CMakeLists.txt:\n", " No cmake_minimum_required command is present. A line of code such as\n", @@ -1056,141 +1644,162 @@ " information run \"cmake --help-policy CMP0000\".\n", "This warning is for project developers. Use -Wno-dev to suppress it.\n", "\n", - "-- Configuring done (0.4s)\n", + "-- Configuring done (0.2s)\n", "-- Generating done (0.0s)\n", "-- Build files have been written to: /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target\n", - "[ 25%] Building CXX object CMakeFiles/nestml_bf804901482f4460a08ae4ecee3c31cc_module_module.dir/nestml_bf804901482f4460a08ae4ecee3c31cc_module.o\n", - "[ 50%] Building CXX object CMakeFiles/nestml_bf804901482f4460a08ae4ecee3c31cc_module_module.dir/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.o\n", - "[ 75%] Building CXX object CMakeFiles/nestml_bf804901482f4460a08ae4ecee3c31cc_module_module.dir/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.o\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.cpp: In member function ‘void iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::init_state_internal_()’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.cpp:219:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + "[ 25%] Building CXX object CMakeFiles/nestml_45b2cc450f1343c880cd5eed30ad08bd_module_module.dir/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.o\n", + "[ 50%] Building CXX object CMakeFiles/nestml_45b2cc450f1343c880cd5eed30ad08bd_module_module.dir/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.o\n", + "[ 75%] Building CXX object CMakeFiles/nestml_45b2cc450f1343c880cd5eed30ad08bd_module_module.dir/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.o\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp: In member function ‘void iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::init_state_internal_()’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp:219:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", " 219 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.cpp: In member function ‘virtual void iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::update(const nest::Time&, long int, long int)’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.cpp:355:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp: In member function ‘virtual void iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::update(const nest::Time&, long int, long int)’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp:355:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]\n", " 355 | for (long i = 0; i < NUM_SPIKE_RECEPTORS; ++i)\n", " | ~~^~~~~~~~~~~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.cpp:346:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp:346:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", " 346 | auto get_t = [origin, lag](){ return nest::Time( nest::Time::step( origin.get_steps() + lag + 1) ).get_ms(); };\n", " | ^~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.cpp:336:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp:336:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", " 336 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "In file included from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp:43:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.h: In constructor ‘continuous_variable_histentry_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml::continuous_variable_histentry_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml(double, double)’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.h:113:10: warning: ‘continuous_variable_histentry_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml::access_counter_’ will be initialized after [-Wreorder]\n", + "In file included from /usr/include/c++/12/cassert:44,\n", + " from /home/charl/julich/nest-simulator-install/include/nest/recordables_map.h:27,\n", + " from /home/charl/julich/nest-simulator-install/include/nest/universal_data_logger.h:33,\n", + " from /home/charl/julich/nest-simulator-install/include/nest/universal_data_logger_impl.h:26,\n", + " from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp:34:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp: In member function ‘virtual void iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::handle(nest::SpikeEvent&)’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp:506:25: warning: comparison of integer expressions of different signedness: ‘nest::rport’ {aka ‘long int’} and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]\n", + " 506 | assert( e.get_rport() < B_.spike_inputs_.size() );\n", + " | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.cpp:517:28: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const nest_port_t’ {aka ‘const long int’} [-Wsign-compare]\n", + " 517 | if ( nestml_buffer_idx == iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::PORT_NOT_AVAILABLE )\n", + " | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n", + "In file included from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:43:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.h: In constructor ‘continuous_variable_histentry_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::continuous_variable_histentry_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml(double, double)’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.h:113:10: warning: ‘continuous_variable_histentry_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::access_counter_’ will be initialized after [-Wreorder]\n", " 113 | size_t access_counter_;\n", " | ^~~~~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.h:110:10: warning: ‘double continuous_variable_histentry_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml::dAP_trace’ [-Wreorder]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.h:110:10: warning: ‘double continuous_variable_histentry_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::dAP_trace’ [-Wreorder]\n", " 110 | double dAP_trace;\n", " | ^~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp:46:1: warning: when initialized here [-Wreorder]\n", - " 46 | continuous_variable_histentry_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml::continuous_variable_histentry_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml( double t,\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:46:1: warning: when initialized here [-Wreorder]\n", + " 46 | continuous_variable_histentry_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::continuous_variable_histentry_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml( double t,\n", " | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp: In member function ‘void iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml::init_state_internal_()’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp:236:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp: In member function ‘void iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::init_state_internal_()’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:236:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", " 236 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp: In member function ‘virtual void iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml::update(const nest::Time&, long int, long int)’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp:380:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp: In member function ‘virtual void iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::update(const nest::Time&, long int, long int)’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:380:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]\n", " 380 | for (long i = 0; i < NUM_SPIKE_RECEPTORS; ++i)\n", " | ~~^~~~~~~~~~~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp:371:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:371:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", " 371 | auto get_t = [origin, lag](){ return nest::Time( nest::Time::step( origin.get_steps() + lag + 1) ).get_ms(); };\n", " | ^~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml.cpp:361:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:361:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", " 361 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "In file included from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_bf804901482f4460a08ae4ecee3c31cc_module.cpp:52:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:158:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:61:24: required from ‘void nest::ModelManager::register_connection_model(const std::string&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&) [with ConnectorModelT = stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_bf804901482f4460a08ae4ecee3c31cc_module.cpp:111:180: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:825:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - " 825 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", + "In file included from /usr/include/c++/12/cassert:44,\n", + " from /home/charl/julich/nest-simulator-install/include/nest/recordables_map.h:27,\n", + " from /home/charl/julich/nest-simulator-install/include/nest/universal_data_logger.h:33,\n", + " from /home/charl/julich/nest-simulator-install/include/nest/universal_data_logger_impl.h:26,\n", + " from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:34:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp: In member function ‘virtual void iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::handle(nest::SpikeEvent&)’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:624:25: warning: comparison of integer expressions of different signedness: ‘nest::rport’ {aka ‘long int’} and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]\n", + " 624 | assert( e.get_rport() < B_.spike_inputs_.size() );\n", + " | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml.cpp:635:28: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const nest_port_t’ {aka ‘const long int’} [-Wsign-compare]\n", + " 635 | if ( nestml_buffer_idx == iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml::PORT_NOT_AVAILABLE )\n", + " | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n", + "In file included from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.cpp:52:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:197:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string, bool, bool, bool, bool, bool, bool) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:89:24: required from ‘void nest::ModelManager::register_connection_model(const std::string&, nest::RegisterConnectionModelFlags) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&, RegisterConnectionModelFlags) [with ConnectorModelT = stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.cpp:111:180: required from here\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:820:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + " 820 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierIndex]’:\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:158:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:67:10: required from ‘void nest::ModelManager::register_connection_model(const std::string&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&) [with ConnectorModelT = stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_bf804901482f4460a08ae4ecee3c31cc_module.cpp:111:180: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:825:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::recompute_internal_variables() [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:841:3: required from ‘nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierPtrRport]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:158:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:61:24: required from ‘void nest::ModelManager::register_connection_model(const std::string&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&) [with ConnectorModelT = stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_bf804901482f4460a08ae4ecee3c31cc_module.cpp:111:180: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:813:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - " 813 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierIndex]’:\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:197:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string, bool, bool, bool, bool, bool, bool) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:102:10: required from ‘void nest::ModelManager::register_connection_model(const std::string&, nest::RegisterConnectionModelFlags) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&, RegisterConnectionModelFlags) [with ConnectorModelT = stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.cpp:111:180: required from here\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:820:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::recompute_internal_variables() [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:836:3: required from ‘nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierPtrRport]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:197:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string, bool, bool, bool, bool, bool, bool) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:89:24: required from ‘void nest::ModelManager::register_connection_model(const std::string&, nest::RegisterConnectionModelFlags) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&, RegisterConnectionModelFlags) [with ConnectorModelT = stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.cpp:111:180: required from here\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:808:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + " 808 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::recompute_internal_variables() [with targetidentifierT = nest::TargetIdentifierIndex]’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:841:3: required from ‘nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierIndex]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:158:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:67:10: required from ‘void nest::ModelManager::register_connection_model(const std::string&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&) [with ConnectorModelT = stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_bf804901482f4460a08ae4ecee3c31cc_module.cpp:111:180: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:813:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::send(nest::Event&, size_t, const nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierPtrRport; size_t = long unsigned int]’:\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:381:22: required from ‘void nest::Connector::send_to_all(size_t, const std::vector&, nest::Event&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; size_t = long unsigned int]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::recompute_internal_variables() [with targetidentifierT = nest::TargetIdentifierIndex]’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:836:3: required from ‘nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml() [with targetidentifierT = nest::TargetIdentifierIndex]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_model.h:197:25: required from ‘nest::GenericConnectorModel::GenericConnectorModel(std::string, bool, bool, bool, bool, bool, bool) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/model_manager_impl.h:102:10: required from ‘void nest::ModelManager::register_connection_model(const std::string&, nest::RegisterConnectionModelFlags) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/nest_impl.h:35:70: required from ‘void nest::register_connection_model(const std::string&, RegisterConnectionModelFlags) [with ConnectorModelT = stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; std::string = std::__cxx11::basic_string]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.cpp:111:180: required from here\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:808:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::send(nest::Event&, nest::thread, const nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierPtrRport; nest::thread = int]’:\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:379:22: required from ‘void nest::Connector::send_to_all(nest::thread, const std::vector&, nest::Event&) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; nest::thread = int]’\n", "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:373:3: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:600:22: warning: unused variable ‘__dAP_trace’ [-Wunused-variable]\n", - " 600 | const double __dAP_trace = ((post_neuron_t*)(__target))->get_dAP_trace();\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:597:22: warning: unused variable ‘__dAP_trace’ [-Wunused-variable]\n", + " 597 | const double __dAP_trace = ((post_neuron_t*)(__target))->get_dAP_trace();\n", " | ^~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:493:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - " 493 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:490:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + " 490 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:495:10: warning: variable ‘get_thread’ set but not used [-Wunused-but-set-variable]\n", - " 495 | auto get_thread = [tid]()\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:492:10: warning: variable ‘get_thread’ set but not used [-Wunused-but-set-variable]\n", + " 492 | auto get_thread = [tid]()\n", " | ^~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:593:18: warning: unused variable ‘_tr_t’ [-Wunused-variable]\n", - " 593 | const double _tr_t = __t_spike - __dendritic_delay;\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:590:18: warning: unused variable ‘_tr_t’ [-Wunused-variable]\n", + " 590 | const double _tr_t = __t_spike - __dendritic_delay;\n", " | ^~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::send(nest::Event&, size_t, const nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierIndex; size_t = long unsigned int]’:\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:381:22: required from ‘void nest::Connector::send_to_all(size_t, const std::vector&, nest::Event&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; size_t = long unsigned int]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::send(nest::Event&, nest::thread, const nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierIndex; nest::thread = int]’:\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:379:22: required from ‘void nest::Connector::send_to_all(nest::thread, const std::vector&, nest::Event&) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; nest::thread = int]’\n", "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:373:3: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:600:22: warning: unused variable ‘__dAP_trace’ [-Wunused-variable]\n", - " 600 | const double __dAP_trace = ((post_neuron_t*)(__target))->get_dAP_trace();\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:597:22: warning: unused variable ‘__dAP_trace’ [-Wunused-variable]\n", + " 597 | const double __dAP_trace = ((post_neuron_t*)(__target))->get_dAP_trace();\n", " | ^~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:493:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - " 493 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:490:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + " 490 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:495:10: warning: variable ‘get_thread’ set but not used [-Wunused-but-set-variable]\n", - " 495 | auto get_thread = [tid]()\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:492:10: warning: variable ‘get_thread’ set but not used [-Wunused-but-set-variable]\n", + " 492 | auto get_thread = [tid]()\n", " | ^~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:593:18: warning: unused variable ‘_tr_t’ [-Wunused-variable]\n", - " 593 | const double _tr_t = __t_spike - __dendritic_delay;\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:590:18: warning: unused variable ‘_tr_t’ [-Wunused-variable]\n", + " 590 | const double _tr_t = __t_spike - __dendritic_delay;\n", " | ^~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::update_internal_state_(double, double, const nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:559:9: required from ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::send(nest::Event&, size_t, const nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierPtrRport; size_t = long unsigned int]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:381:22: required from ‘void nest::Connector::send_to_all(size_t, const std::vector&, nest::Event&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; size_t = long unsigned int]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::update_internal_state_(double, double, const nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:556:9: required from ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::send(nest::Event&, nest::thread, const nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierPtrRport; nest::thread = int]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:379:22: required from ‘void nest::Connector::send_to_all(nest::thread, const std::vector&, nest::Event&) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; nest::thread = int]’\n", "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:373:3: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:899:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - " 899 | const double __resolution = timestep; // do not remove, this is necessary for the resolution() function\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:894:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + " 894 | const double __resolution = timestep; // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:900:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", - " 900 | auto get_t = [t_start](){ return t_start; }; // do not remove, this is in case the predefined time variable ``t`` is used in the NESTML model\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:895:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", + " 895 | auto get_t = [t_start](){ return t_start; }; // do not remove, this is in case the predefined time variable ``t`` is used in the NESTML model\n", " | ^~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h: In instantiation of ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::update_internal_state_(double, double, const nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierIndex]’:\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:559:9: required from ‘void nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml::send(nest::Event&, size_t, const nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierIndex; size_t = long unsigned int]’\n", - "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:381:22: required from ‘void nest::Connector::send_to_all(size_t, const std::vector&, nest::Event&) [with ConnectionT = nest::stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml; size_t = long unsigned int]’\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h: In instantiation of ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::update_internal_state_(double, double, const nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierIndex]’:\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:556:9: required from ‘void nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml::send(nest::Event&, nest::thread, const nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierIndex; nest::thread = int]’\n", + "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:379:22: required from ‘void nest::Connector::send_to_all(nest::thread, const std::vector&, nest::Event&) [with ConnectionT = nest::stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml; nest::thread = int]’\n", "/home/charl/julich/nest-simulator-install/include/nest/connector_base.h:373:3: required from here\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:899:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", - " 899 | const double __resolution = timestep; // do not remove, this is necessary for the resolution() function\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:894:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n", + " 894 | const double __resolution = timestep; // do not remove, this is necessary for the resolution() function\n", " | ^~~~~~~~~~~~\n", - "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml__with_iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml.h:900:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", - " 900 | auto get_t = [t_start](){ return t_start; }; // do not remove, this is in case the predefined time variable ``t`` is used in the NESTML model\n", + "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/sequences/target/stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml__with_iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml.h:895:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n", + " 895 | auto get_t = [t_start](){ return t_start; }; // do not remove, this is in case the predefined time variable ``t`` is used in the NESTML model\n", " | ^~~~~\n", - "[100%] Linking CXX shared module nestml_bf804901482f4460a08ae4ecee3c31cc_module.so\n", - "[100%] Built target nestml_bf804901482f4460a08ae4ecee3c31cc_module_module\n", - "[100%] Built target nestml_bf804901482f4460a08ae4ecee3c31cc_module_module\n", + "[100%] Linking CXX shared module nestml_45b2cc450f1343c880cd5eed30ad08bd_module.so\n", + "[100%] Built target nestml_45b2cc450f1343c880cd5eed30ad08bd_module_module\n", + "[100%] Built target nestml_45b2cc450f1343c880cd5eed30ad08bd_module_module\n", "Install the project...\n", "-- Install configuration: \"\"\n", - "-- Installing: /tmp/nestml_target_xrp0lc97/nestml_bf804901482f4460a08ae4ecee3c31cc_module.so\n", - "\n", - "Feb 29 07:49:26 Install [Info]: \n", - " loaded module nestml_bf804901482f4460a08ae4ecee3c31cc_module\n" + "-- Installing: /tmp/nestml_target_k4yl7fr1/nestml_45b2cc450f1343c880cd5eed30ad08bd_module.so\n" ] } ], @@ -1218,6 +1827,7 @@ "# codegen_opts=codegen_opts)\n", "#nest.Install(\"nestml_jit_module\")\n", "\n", + "\"\"\"\n", "# generate and build code\n", "\n", "try:\n", @@ -1225,29 +1835,53 @@ " NESTCodeGeneratorUtils.generate_code_for(\"../../../doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml\",\n", " \"../../../models/synapses/stdsp_synapse.nestml\",\n", " logging_level=\"DEBUG\",\n", - " post_ports=[\"post_spikes\", [\"dAP_trace\", \"dAP_trace\"]])\n", + " post_ports=[\"post_spikes\", [\"dAP_trace\", \"dAP_trace\"]],\n", + " codegen_opts={\"neuron_parent_class_include\": \"archiving_node_ext.h\", \"neuron_parent_class\": \"ArchivingNodeExt\"})\n", "\n", "except:\n", " module_name, neuron_model_name, synapse_model_name = \\\n", " NESTCodeGeneratorUtils.generate_code_for(\"doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml\",\n", " \"models/synapses/stdsp_synapse.nestml\",\n", " logging_level=\"DEBUG\",\n", - " post_ports=[\"post_spikes\", [\"dAP_trace\", \"dAP_trace\"]])\n", + " post_ports=[\"post_spikes\", [\"dAP_trace\", \"dAP_trace\"]],\n", + " codegen_opts={\"neuron_parent_class_include\": \"archiving_node_ext.h\", \"neuron_parent_class\": \"ArchivingNodeExt\"})\n", + "\n", "\n", "\n", - "\"\"\"\n", "\n", - "module_name = \"nestml_98cfb66389b04bd6af313317a8b164a5_module\"\n", - "neuron_model_name = \"iaf_psc_exp_nonlineardendrite98cfb66389b04bd6af313317a8b164a5_neuron_nestml__with_stdsp98cfb66389b04bd6af313317a8b164a5_synapse_nestml\"\n", - "synapse_model_name = \"stdsp98cfb66389b04bd6af313317a8b164a5_synapse_nestml__with_iaf_psc_exp_nonlineardendrite98cfb66389b04bd6af313317a8b164a5_neuron_nestml\"\n", "\"\"\"\n", + "module_name = \"nestml_54625aa90f64441d99f6349782e7215c_module\"\n", + "neuron_model_name = \"iaf_psc_exp_nonlineardendrite54625aa90f64441d99f6349782e7215c_neuron_nestml__with_stdsp54625aa90f64441d99f6349782e7215c_synapse_nestml\"\n", + "synapse_model_name = \"stdsp54625aa90f64441d99f6349782e7215c_synapse_nestml__with_iaf_psc_exp_nonlineardendrite54625aa90f64441d99f6349782e7215c_neuron_nestml\"\n", "\n", "\n", - "\"\"\"# JUST THE NEURON MODEL\n", + "\n", + "# JUST THE NEURON MODEL\n", + "\"\"\"\n", "module_name, neuron_model_name = \\\n", - " NESTCodeGeneratorUtils.generate_code_for(\"../../../doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml\",\n", - " logging_level=\"DEBUG\")\"\"\"\n", + " NESTCodeGeneratorUtils.generate_code_for(\"doc/tutorials/sequences/iaf_psc_exp_nonlineardendrite_neuron.nestml\",\n", + " logging_level=\"DEBUG\",\n", + " codegen_opts = {\n", + " \"neuron_parent_class_include\": \"archiving_node_ext.h\",\n", + " \"neuron_parent_class\": \"ArchivingNodeExt\",\n", + " }\n", + ")\n", + "\"\"\"\n", + "\n", + "\n", + "\"\"\"\n", "\n", + "# LASTLOG: using a manually modified neuron model (because it needs the get_dendritic_firing_rate() method)\n", + "# in combination with the NEST built-in stdsp_synapse\n", + "\n", + "# run as LD_LIBRARY_PATH=/tmp/nestml_target_olo6bfq7:/home/charl/julich/nest-simulator-install/lib/nest:/home/charl/julich/nest-simulator-install/lib/python3.11/site-packages/nest:/home/charl/julich/nest-simulator-install/pynest PYTHONPATH=/home/charl/julich/nest-simulator-install/lib/python3.11/site-packages:`pwd`:/home/charl/julich/ode-toolbox-upstream/ode-toolbox/ ipython3 -i doc/tutorials/sequences/sequences.ipynb\n", + "\n", + "neuron_model_name = \"iaf_psc_exp_nonlineardendrite609ae82391c641f7ad702d2c8ed1ea9f_neuron_nestml\"\n", + "module_name = \"nestml_609ae82391c641f7ad702d2c8ed1ea9f_module\"\n", + "\n", + "synapse_model_name = \"stdsp_synapse\"\n", + "\n", + "\"\"\"\n", "\n", "# load dynamic library (NEST extension module) into NEST kernel\n", "nest.Install(module_name)" @@ -1269,7 +1903,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -1301,6 +1935,162 @@ " )\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Experiment 1: dAP generation in the neuron model\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "def create_active_dendrite_parameters():\n", + " p = para.ParameterSpace({})\n", + " \n", + " DELAY = 0.1\n", + " \n", + " p['dt'] = 0.1 # simulation time resolution (ms)\n", + " p['print_simulation_progress'] = False # print the time progress.\n", + " \n", + " \n", + " # data path dict\n", + " p['data_path'] = {}\n", + " p['data_path']['data_root_path'] = 'data'\n", + " p['data_path']['project_name'] = 'sequence_learning_performance'\n", + " p['data_path']['parameterspace_label'] = 'effect_dAP_firing_times'\n", + " \n", + " # neuron parameters of the excitatory neurons\n", + " p['soma_model'] = neuron_model_name\n", + " p['soma_params'] = {}\n", + " p['soma_params']['C_m'] = 250. # membrane capacitance (pF)\n", + " p['soma_params']['E_L'] = 0. # resting membrane potential (mV)\n", + " # p['soma_params']['I_e'] = 0. # external DC currents (pA)\n", + " p['soma_params']['V_m'] = 0. # initial potential (mV)\n", + " p['soma_params']['V_reset'] = 0. # reset potential (mV)\n", + " p['soma_params']['V_th'] = 20. # spike threshold (mV)\n", + " p['soma_params']['t_ref'] = 10. # refractory period\n", + " p['soma_params']['tau_m'] = 10. # membrane time constant (ms)\n", + " p['soma_params']['tau_syn1'] = 2. # synaptic time constant: external input (receptor 1)\n", + " p['soma_params']['tau_syn2'] = 5. # synaptic time constant: dendrtic input (receptor 2)\n", + " p['soma_params']['tau_syn3'] = 1. # synaptic time constant: inhibitory input (receptor 3)\n", + " # dendritic action potential\n", + " p['soma_params']['I_p'] = 200. # current clamp value for I_dAP during a dendritic action potenti\n", + " p['soma_params']['tau_dAP'] = 60. # time window over which the dendritic current clamp is active\n", + " p['soma_params']['theta_dAP'] = 59. # current threshold for a dendritic action potential\n", + " \n", + " p['soma_params']['I_dend_incr'] = 2.71 / (p['soma_params']['tau_syn2'])\n", + " \n", + " \n", + " p['fixed_somatic_delay'] = 2 # this is an approximate time of how long it takes the soma to fire\n", + " # upon receiving an external stimulus \n", + " \n", + " # neuron parameters for the inhibitory neuron\n", + " p['inhibit_model'] = 'iaf_psc_exp'\n", + " p['inhibit_params'] = {}\n", + " p['inhibit_params']['C_m'] = 250. # membrane capacitance (pF)\n", + " p['inhibit_params']['E_L'] = 0. # resting membrane potential (mV)\n", + " p['inhibit_params']['I_e'] = 0. # external DC currents (pA)\n", + " p['inhibit_params']['V_m'] = 0. # initial potential (mV)\n", + " p['inhibit_params']['V_reset'] = 0. # reset potential (mV)\n", + " p['inhibit_params']['V_th'] = 15. # spike threshold (mV)\n", + " p['inhibit_params']['t_ref'] = 2.0 # refractory period\n", + " p['inhibit_params']['tau_m'] = 5. # membrane time constant (ms)\n", + " p['inhibit_params']['tau_syn_ex'] = .5 # synaptic time constant of an excitatory input (ms) \n", + " p['inhibit_params']['tau_syn_in'] = 1.65 # synaptic time constant of an inhibitory input (ms)\n", + " \n", + " # synaptic parameters\n", + " p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", + " p['J_IE_psp'] = 1.2 * p['inhibit_params']['V_th'] # inhibitory PSP as a response to an input from E neuron\n", + " p['J_EI_psp'] = -2 * p['soma_params']['V_th'] # somatic PSP as a response to an inhibitory input\n", + " p['convergence'] = 5\n", + " p['pattern_size'] = 20\n", + " \n", + " # parameters for ee synapses (stdsp)\n", + " p['syn_dict_ee'] = {}\n", + " p['p_min'] = 0.\n", + " p['p_max'] = 8.\n", + " p['calibration'] = 40.\n", + " p['syn_dict_ee']['weight'] = 0.01 # synaptic weight\n", + " p['syn_dict_ee']['synapse_model'] = synapse_model_name # synapse model\n", + " p['syn_dict_ee']['permanence_threshold'] = 10. # synapse maturity threshold\n", + " p['syn_dict_ee']['tau_pre_trace'] = 20. # plasticity time constant (potentiation)\n", + " p['syn_dict_ee']['delay'] = 2. # dendritic delay \n", + " p['syn_dict_ee']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", + " p['syn_dict_ee']['lambda_plus'] = 0.05 #0.1 # potentiation rate\n", + " p['syn_dict_ee']['zt'] = 1. # target dAP trace [pA]\n", + " p['syn_dict_ee']['lambda_h'] = 0.01 # homeostasis rate\n", + " p['syn_dict_ee']['Wmax'] = 1.1 * p['soma_params']['theta_dAP'] / p['convergence'] # Maximum allowed weight\n", + "\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " p['syn_dict_ee']['permanence_max'] = 20. # Maximum allowed permanence\n", + " p['syn_dict_ee']['permanence_min'] = 1. # Minimum allowed permanence\n", + " else:\n", + " p['syn_dict_ee']['Pmax'] = 20. # Maximum allowed permanence\n", + " p['syn_dict_ee']['Pmin'] = 1. # Minimum allowed permanence\n", + " p['syn_dict_ee']['lambda_minus'] = 0.004\n", + " \n", + " # parameters of EX synapses (external to soma of E neurons)\n", + " p['conn_dict_ex'] = {}\n", + " p['syn_dict_ex'] = {}\n", + " p['syn_dict_ex']['receptor_type'] = 1 # receptor corresponding to external input\n", + " p['syn_dict_ex']['delay'] = DELAY # dendritic delay\n", + " p['conn_dict_ex']['rule'] = 'all_to_all' # connection rule\n", + " \n", + " # parameters of EdX synapses (external to dendrite of E neurons) \n", + " p['conn_dict_edx'] = {}\n", + " p['syn_dict_edx'] = {}\n", + " p['syn_dict_edx']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", + " p['syn_dict_edx']['delay'] = DELAY # dendritic delay\n", + " p['syn_dict_edx']['weight'] = 1.4 * p['soma_params']['theta_dAP']\n", + " p['conn_dict_edx']['rule'] = 'fixed_outdegree' # connection rule\n", + " p['conn_dict_edx']['outdegree'] = p['pattern_size'] + 1 # outdegree\n", + " \n", + " # parameters for IE synapses \n", + " p['syn_dict_ie'] = {}\n", + " p['conn_dict_ie'] = {}\n", + " p['syn_dict_ie']['synapse_model'] = 'static_synapse' # synapse model\n", + " p['syn_dict_ie']['delay'] = DELAY # dendritic delay\n", + " p['conn_dict_ie']['rule'] = 'fixed_indegree' # connection rule\n", + " p['conn_dict_ie']['indegree'] = 5 # indegree \n", + " \n", + " # parameters for EI synapses\n", + " p['syn_dict_ei'] = {}\n", + " p['conn_dict_ei'] = {}\n", + " p['syn_dict_ei']['synapse_model'] = 'static_synapse' # synapse model\n", + " p['syn_dict_ei']['delay'] = DELAY # dendritic delay\n", + " p['syn_dict_ei']['receptor_type'] = 3 # receptor corresponding to the inhibitory input \n", + " p['conn_dict_ei']['rule'] = 'fixed_indegree' # connection rule\n", + " p['conn_dict_ei']['indegree'] = 20 # indegree\n", + " \n", + " \n", + " p['R_m_soma'] = p['soma_params']['tau_m'] / p['soma_params']['C_m']\n", + " p['R_m_inhibit'] = p['inhibit_params']['tau_m'] / p['inhibit_params']['C_m']\n", + " p['syn_dict_ex']['weight'] = psp_max_2_psc_max(p['J_EX_psp'], \n", + " p['soma_params']['tau_m'], \n", + " p['soma_params']['tau_syn1'], \n", + " p['R_m_soma'])\n", + " p['syn_dict_ie']['weight'] = psp_max_2_psc_max(p['J_IE_psp'], \n", + " p['inhibit_params']['tau_m'], \n", + " p['inhibit_params']['tau_syn_ex'], \n", + " p['R_m_inhibit'])\n", + " p['syn_dict_ei']['weight'] = psp_max_2_psc_max(p['J_EI_psp'], \n", + " p['soma_params']['tau_m'], \n", + " p['soma_params']['tau_syn3'], \n", + " p['R_m_soma'])\n", + "\n", + " \n", + " p['soma_excitation_time'] = 25.\n", + " p['dendrite_excitation_time'] = 3.\n", + "\n", + " return p\n", + "\n", + "p = create_active_dendrite_parameters()" + ] + }, { "cell_type": "code", "execution_count": null, @@ -1310,238 +2100,127 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ - "DELAY = 0.1\n", + "def run_psc_test(params):\n", + " print(\"Running psc test simulation!\")\n", + " # init kernel\n", + " seed = 1\n", + " nest.ResetKernel()\n", + " nest.set_verbosity(\"M_ALL\")\n", + " nest.SetKernelStatus({\n", + " 'resolution': params['dt'],\n", + " 'print_time': params['print_simulation_progress'],\n", + " 'local_num_threads': n_threads,\n", + " 'rng_seed': seed\n", + " })\n", + "\n", + " #############################\n", + " # create and connect neurons\n", + " # ---------------------------\n", + "\n", + " # create excitatory population\n", + " exc_neuron = nest.Create(params['soma_model'], params=params['soma_params'])\n", + "\n", + " ######################\n", + " # Input stream/stimuli\n", + " #---------------------\n", + " input_excitation = nest.Create('spike_generator', params={'spike_times':[10.]})\n", + " dendrite_excitation_1 = nest.Create('spike_generator', params={'spike_times':[50., 140.], \"spike_weights\": [1., 100.]})\n", + " dendrite_excitation_2 = nest.Create('spike_generator', params={'spike_times':[90.]})\n", + "\n", + " nest.Connect(input_excitation, exc_neuron, syn_spec={'receptor_type': 1, \n", + " 'weight': 10000., \n", + " 'delay': 1.})\n", "\n", - "p = para.ParameterSpace({})\n", + " nest.Connect(dendrite_excitation_1, exc_neuron, syn_spec={'receptor_type': 2, \n", + " 'weight': 1., \n", + " 'delay': 1.})\n", "\n", + " nest.Connect(dendrite_excitation_2, exc_neuron, syn_spec={'receptor_type': 3, \n", + " 'weight': 100., \n", + " 'delay': 1.})\n", "\n", + " mm = nest.Create('multimeter', params={'record_from': ['V_m', 'active_dendrite_readout', 'I_dend'], 'interval': 0.1})\n", + " nest.Connect(mm, exc_neuron)\n", "\n", + " # record spikes\n", + " sd = nest.Create('spike_recorder')\n", + " nest.Connect(exc_neuron, sd)\n", + "\n", + " print('### simulating network')\n", + " nest.Prepare()\n", + " nest.Run(250.)\n", "\n", + " times = nest.GetStatus(mm)[0]['events'][\"times\"] \n", + " voltage_soma = nest.GetStatus(mm)[0]['events']['V_m'] \n", + " active_dendrite_readout = nest.GetStatus(mm)[0]['events']['active_dendrite_readout']\n", + " I_dend = nest.GetStatus(mm)[0]['events']['I_dend']\n", "\n", + " fig, ax = plt.subplots(nrows=3, dpi=600, figsize=(8,6))\n", + " ax[0].plot(times, voltage_soma, label=\"V_m\")\n", + " ax[1].plot(times, active_dendrite_readout, label=\"active dend\")\n", + " ax[2].plot(times, I_dend, label=\"I_dend\")\n", + " for _ax in ax:\n", + " _ax.legend()\n", "\n", + " fig.savefig(\"/tmp/psc_test.png\")\n", "\n", "\n", - "p['dt'] = 0.1 # simulation time resolution (ms)\n", - "p['print_simulation_progress'] = False # print the time progress.\n", "\n", - "# neuron parameters of the excitatory neurons\n", - "p['soma_model'] = neuron_model_name\n", - "p['soma_params'] = {}\n", - "p['soma_params']['C_m'] = 250. # membrane kafe e nxehtĂ«capacitance (pF)\n", - "p['soma_params']['E_L'] = 0. # resting membrane potential (mV)\n", - "# p['soma_params']['I_e'] = 0. # external DC currents (pA)\n", - "p['soma_params']['V_m'] = 0. # initial potential (mV)\n", - "p['soma_params']['V_reset'] = 0. # reset potential (mV)\n", - "p['soma_params']['V_th'] = 20. # spike threshold (mV)\n", - "p['soma_params']['t_ref'] = 10. # refractory period\n", - "p['soma_params']['tau_m'] = 10. # membrane time constant (ms)\n", - "p['soma_params']['tau_syn1'] = 2. # synaptic time constant: external input (receptor 1)\n", - "p['soma_params']['tau_syn2'] = 5. # synaptic time constant: dendrtic input (receptor 2)\n", - "p['soma_params']['tau_syn3'] = 1. # synaptic time constant: inhibitory input (receptor 3)\n", - "# dendritic action potential\n", - "p['soma_params']['I_p'] = 200. # current clamp value for I_dAP during a dendritic action potenti\n", - "p['soma_params']['tau_dAP'] = 60. # time window over which the dendritic current clamp is active\n", - "p['soma_params']['theta_dAP'] = 59. # current threshold for a dendritic action potential\n", - "\n", - "p['soma_params']['I_dend_incr'] = 2.71 / 10e-3\n", - "\n", - "\n", - "p['fixed_somatic_delay'] = 2 # this is an approximate time of how long it takes the soma to fire\n", - " # upon receiving an external stimulus \n", - "\n", - " \n", - "\n", - "# neuron parameters for the inhibitory neuron\n", - "p['inhibit_model'] = 'iaf_psc_exp'\n", - "p['inhibit_params'] = {}\n", - "p['inhibit_params']['C_m'] = 250. # membrane capacitance (pF)\n", - "p['inhibit_params']['E_L'] = 0. # resting membrane potential (mV)\n", - "p['inhibit_params']['I_e'] = 0. # external DC currents (pA)\n", - "p['inhibit_params']['V_m'] = 0. # initial potential (mV)\n", - "p['inhibit_params']['V_reset'] = 0. # reset potential (mV)\n", - "p['inhibit_params']['V_th'] = 15. # spike threshold (mV)\n", - "p['inhibit_params']['t_ref'] = 2.0 # refractory period\n", - "p['inhibit_params']['tau_m'] = 5. # membrane time constant (ms)\n", - "p['inhibit_params']['tau_syn_ex'] = .5 # synaptic time constant of an excitatory input (ms) \n", - "p['inhibit_params']['tau_syn_in'] = 1.65 # synaptic time constant of an inhibitory input (ms)\n", - "\n", - " \n", - " \n", - " \n", - "# synaptic parameters\n", - "p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", - "p['J_IE_psp'] = 1.2 * p['inhibit_params']['V_th'] # inhibitory PSP as a response to an input from E neuron\n", - "p['J_EI_psp'] = -2 * p['soma_params']['V_th'] # somatic PSP as a response to an inhibitory input\n", - "p['convergence'] = 5\n", - "\n", - "\n", - "\n", - "\n", - "# parameters for setting up the network \n", - "p['M'] = 6 # number of subpopulations\n", - "p['n_E'] = 150 # number of excitatory neurons per subpopulation\n", - "p['n_I'] = 1 # number of inhibitory neurons per subpopulation\n", - "p['L'] = 1 # number of subpopulations that represents one sequence element\n", - "p['pattern_size'] = 20 # sparse set of active neurons per subpopulation\n", - "\n", - "# connection details\n", - "p['rule'] = 'fixed_indegree' \n", - "p['connection_prob'] = 0.2\n", - "\n", - "# neuron parameters of the excitatory neurons\n", - "p['soma_model'] = neuron_model_name\n", - "p['soma_params'] = {}\n", - "p['soma_params']['C_m'] = 250. # membrane capacitance (pF)\n", - "p['soma_params']['E_L'] = 0. # resting membrane potential (mV)\n", - "# p['soma_params']['I_e'] = 0. # external DC currents (pA)\n", - "p['soma_params']['V_m'] = 0. # initial potential (mV)\n", - "p['soma_params']['V_reset'] = 0. # reset potential (mV)\n", - "p['soma_params']['V_th'] = 20. # spike threshold (mV)\n", - "p['soma_params']['t_ref'] = 10. # refractory period\n", - "p['soma_params']['tau_m'] = 10. # membrane time constant (ms)\n", - "p['soma_params']['tau_syn1'] = 2. # synaptic time constant: external input (receptor 1)\n", - "p['soma_params']['tau_syn2'] = 5. # synaptic time constant: dendrtic input (receptor 2)\n", - "p['soma_params']['tau_syn3'] = 1. # synaptic time constant: inhibitory input (receptor 3)\n", - "# dendritic action potential\n", - "p['soma_params']['I_p'] = 200. # current clamp value for I_dAP during a dendritic action potenti\n", - "p['soma_params']['tau_dAP'] = 60. # time window over which the dendritic current clamp is active\n", - "p['soma_params']['theta_dAP'] = 59. # current threshold for a dendritic action potential\n", - "p['fixed_somatic_delay'] = 2 # this is an approximate time of how long it takes the soma to fire\n", - " # upon receiving an external stimulus \n", - "\n", - "# synaptic parameters\n", - "p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", - "p['J_EI_psp'] = -2 * p['soma_params']['V_th'] # somatic PSP as a response to an inhibitory input\n", - "p['convergence'] = 5\n", - "\n", - "# parameters for ee synapses (stdsp)\n", - "p['syn_dict_ee'] = {}\n", - "p['permanence_min'] = 0.\n", - "p['permanence_max'] = 8.\n", - "p['calibration'] = 0.\n", - "p['syn_dict_ee']['weight'] = 0.01 # synaptic weight\n", - "p['syn_dict_ee']['synapse_model'] = synapse_model_name # synapse model\n", - "p['syn_dict_ee']['permanence_threshold'] = 10. # synapse maturity threshold\n", - "p['syn_dict_ee']['tau_pre_trace'] = 20. # plasticity time constant (potentiation)\n", - "p['syn_dict_ee']['delay'] = 2. # dendritic delay \n", - "p['syn_dict_ee']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", - "p['syn_dict_ee']['lambda_plus'] = 0.08 # potentiation rate\n", - "p['syn_dict_ee']['zt'] = 1. # target dAP trace\n", - "p['syn_dict_ee']['lambda_h'] = 0.014 # homeostasis rate\n", - "p['syn_dict_ee']['Wmax'] = 1.1 * p['soma_params']['theta_dAP'] / p['convergence'] # Maximum allowed weight\n", - "p['syn_dict_ee']['permanence_max'] = 20. # Maximum allowed permanence\n", - "p['syn_dict_ee']['permanence_min'] = 1. # Minimum allowed permanence\n", - "p['syn_dict_ee']['lambda_minus'] = 0.0015 # depression rate\n", - "p['syn_dict_ee']['dt_min'] = -4. # minimum time lag of the STDP window\n", - "p['inh_factor'] = 7.\n", - "\n", - "# parameters of EX synapses (external to soma of E neurons)\n", - "p['conn_dict_ex'] = {}\n", - "p['syn_dict_ex'] = {}\n", - "p['syn_dict_ex']['receptor_type'] = 1 # receptor corresponding to external input\n", - "p['syn_dict_ex']['delay'] = DELAY # dendritic delay\n", - "p['conn_dict_ex']['rule'] = 'all_to_all' # connection rule\n", - "\n", - "# parameters of EdX synapses (external to dendrite of E neurons) \n", - "p['conn_dict_edx'] = {}\n", - "p['syn_dict_edx'] = {}\n", - "p['syn_dict_edx']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", - "p['syn_dict_edx']['delay'] = DELAY # dendritic delay\n", - "p['syn_dict_edx']['weight'] = 1.4 * p['soma_params']['theta_dAP']\n", - "p['conn_dict_edx']['rule'] = 'fixed_outdegree' # connection rule\n", - "p['conn_dict_edx']['outdegree'] = p['pattern_size'] + 1 # outdegree\n", - "\n", - "# parameters for IE synapses \n", - "p['syn_dict_ie'] = {}\n", - "p['conn_dict_ie'] = {}\n", - "p['syn_dict_ie']['synapse_model'] = 'static_synapse' # synapse model\n", - "p['syn_dict_ie']['delay'] = DELAY # dendritic delay\n", - "p['conn_dict_ie']['rule'] = 'fixed_indegree' # connection rule\n", - "p['conn_dict_ie']['indegree'] = 5 # indegree \n", - "\n", - "# parameters for EI synapses\n", - "p['syn_dict_ei'] = {}\n", - "p['conn_dict_ei'] = {}\n", - "p['syn_dict_ei']['synapse_model'] = 'static_synapse' # synapse model\n", - "p['syn_dict_ei']['delay'] = DELAY # dendritic delay\n", - "p['syn_dict_ei']['receptor_type'] = 3 # receptor corresponding to the inhibitory input \n", - "p['conn_dict_ei']['rule'] = 'fixed_indegree' # connection rule\n", - "p['conn_dict_ei']['indegree'] = 20 # indegree\n", - "\n", - "# stimulus parameters\n", - "p['DeltaT'] = 40. # inter-stimulus interval\n", - "p['excitation_start'] = 30. # time at which the external stimulation begins\n", - "p['time_dend_to_somatic'] = 20. # time between the dAP activation and the somatic activation (only used if sparse_first_char is True) \n", - "p['DeltaT_cue'] = 80. # inter-cue interval during replay\n", - "\n", - "# simulation parameters \n", - "p['dt'] = 0.1 # simulation time resolution (ms)\n", - "p['overwrite_files'] = True # if True, data will be overwritten,\n", - " # if False, a NESTError is raised if the files already exist\n", - "p['seed'] = para.ParameterRange([1,2,3,4,5]) # seed for NEST\n", - "p['print_simulation_progress'] = False # print the time progress.\n", - "p['pad_time'] = 5.\n", - "p['idend_recording_interval'] = 10 * p['dt'] # dendritic current recording resolution\n", - "p['idend_record_time'] = 8. # time interval after the external stimulation at which the dendritic current is recorded\n", - "p['evaluate_performance'] = True # if turned on, we monitor the dendritic current at a certain time steps\n", - " # during the simulation. This then is used for the prediction performance assessment\n", - "p['evaluate_replay'] = False \n", - "p['record_idend_last_episode'] = True # used for debugging, if turned on we record the dendritic current of all neurons\n", - " # this can consume too much memory\n", - "p['store_connections'] = True \n", - "p['load_connections'] = False\n", - "p['sparse_first_char'] = False # if turned on, the dAP of a subset of neurons in the subpopulation representing \n", - " # first sequence elements is activated externally \n", - "p['active_weight_recorder'] = False # if turned on, the weights are recorded every presynaptic spike\n", - "\n", - "# task parameters\n", - "p['task'] = {}\n", - "p['task']['task_name'] = 'hard_coded' # name of the task\n", - "p['task']['task_type'] = 1 # this chooses between three hard coded sequence sets (see ./utils.py)\n", - "p['task']['vocab_size'] = 6 # vocabulary size\n", - "p['task']['seed'] = 111 # seed number\n", - "p['task']['store_training_data'] = True # if turned on, the sequence set is stored in directory defined in dict data_path\n", - "if p['task']['task_name'] != 'hard_coded':\n", - " p['task']['num_sequences'] = 2 # number of sequences per sequence set\n", - " p['task']['num_sub_seq'] = 2 # if task_name == 'high_order', \n", - " # it sets the number of sequences with same shared subsequence\n", - " p['task']['length_sequence'] = 6 # number of elements per sequence\n", - " p['task']['replace'] = False # random choice of characters with replacement\n", - "\n", - "# setup the training loop \n", - "p['learning_episodes'] = 3 # total number of training episodes ('repetitions of the sequence sets')\n", - "p['episodes_to_testing'] = 1 # number of episodes after which we measure the prediction perfomance" + "#import sys;sys.exit(0)" ] }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": {}, "outputs": [], - "source": [ - "params = p\n", - "params['R_m_soma'] = params['soma_params']['tau_m'] / params['soma_params']['C_m']\n", - "params['R_m_inhibit'] = params['inhibit_params']['tau_m'] / params['inhibit_params']['C_m']\n", - "params['syn_dict_ex']['weight'] = psp_max_2_psc_max(params['J_EX_psp'], \n", - " params['soma_params']['tau_m'], \n", - " params['soma_params']['tau_syn1'], \n", - " params['R_m_soma'])\n", - "params['syn_dict_ie']['weight'] = psp_max_2_psc_max(params['J_IE_psp'], \n", - " params['inhibit_params']['tau_m'], \n", - " params['inhibit_params']['tau_syn_ex'], \n", - " params['R_m_inhibit'])\n", - "params['syn_dict_ei']['weight'] = psp_max_2_psc_max(params['J_EI_psp'], \n", - " params['soma_params']['tau_m'], \n", - " params['soma_params']['tau_syn3'], \n", - " params['R_m_soma'])\n", - "\n", - "soma_excitation_time = 25.\n", - "dendrite_excitation_time = 3." - ] + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] }, { "cell_type": "code", @@ -1552,411 +2231,177 @@ "name": "stdout", "output_type": "stream", "text": [ + "Running active dendrite simulation!\n", + "Running experiment type: ff\n", "\n", - "Save training data to training_data\n", - "\n", - "Initialising model and simulation...\n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml [Warning]: \n", + " Simulation resolution has changed. Internal state and parameters of the \n", + " model have been reset!\n", "\n", - "#### postsynaptic potential ####\n", - "PSP maximum J_EX psp: 22.000000 mV\n", - "PSP maximum J_IE psp: 0.900000 mV\n", - "PSP maximum J_EI psp: -40.000000 mV\n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml__with_stdsp57f0cdcdcfc04768b800477e95499ba4_synapse_nestml [Warning]: \n", + " Simulation resolution has changed. Internal state and parameters of the \n", + " model have been reset!\n", "\n", - "#### postsynaptic current ####\n", - "PSC maximum J_EX: 4112.209148 pA\n", - "PSC maximum J_IE: 581.197349 pA\n", - "PSC maximum J_EI: -12915.496650 pA\n", - "Data will be written to: f72ac234a0e76775cb177b8a82cf883e\n", + "Mar 11 03:52:36 SimulationManager::set_status [Info]: \n", + " Temporal resolution changed.\n", + "### simulating network\n", + "Running experiment type: dendrite\n", + "### simulating network\n", "\n", + "Mar 11 03:52:36 NodeManager::prepare_nodes [Info]: \n", + " Preparing 66 nodes for simulation.\n", "\n", - "Duration of a sequence set 440 ms\n", + "Mar 11 03:52:36 SimulationManager::start_updating_ [Info]: \n", + " Number of local nodes: 66\n", + " Simulation time (ms): 100\n", + " Number of OpenMP threads: 8\n", + " Not using MPI\n", "\n", - "Creating and configuring nodes...\n", - "Learning episode: 0 of 86\n", - "Learning episode: 1 of 86\n", - "Learning episode: 2 of 86\n", - "Learning episode: 3 of 86\n", - "Learning episode: 4 of 86\n", - "Learning episode: 5 of 86\n", - "Learning episode: 6 of 86\n", - "Learning episode: 7 of 86\n", - "Learning episode: 8 of 86\n", - "Learning episode: 9 of 86\n", - "Learning episode: 10 of 86\n", - "Learning episode: 11 of 86\n", - "Learning episode: 12 of 86\n", - "Learning episode: 13 of 86\n", - "Learning episode: 14 of 86\n", - "Learning episode: 15 of 86\n", - "Learning episode: 16 of 86\n", - "Learning episode: 17 of 86\n", - "Learning episode: 18 of 86\n", - "Learning episode: 19 of 86\n", - "Learning episode: 20 of 86\n", - "Learning episode: 21 of 86\n", - "Learning episode: 22 of 86\n", - "Learning episode: 23 of 86\n", - "Learning episode: 24 of 86\n", - "Learning episode: 25 of 86\n", - "Learning episode: 26 of 86\n", - "Learning episode: 27 of 86\n", - "Learning episode: 28 of 86\n", - "Learning episode: 29 of 86\n", - "Learning episode: 30 of 86\n", - "Learning episode: 31 of 86\n", - "Learning episode: 32 of 86\n", - "Learning episode: 33 of 86\n", - "Learning episode: 34 of 86\n", - "Learning episode: 35 of 86\n", - "Learning episode: 36 of 86\n", - "Learning episode: 37 of 86\n", - "Learning episode: 38 of 86\n", - "Learning episode: 39 of 86\n", - "Learning episode: 40 of 86\n", - "Learning episode: 41 of 86\n", - "Learning episode: 42 of 86\n", - "Learning episode: 43 of 86\n", - "Learning episode: 44 of 86\n", - "Learning episode: 45 of 86\n", - "Learning episode: 46 of 86\n", - "Learning episode: 47 of 86\n", - "Learning episode: 48 of 86\n", - "Learning episode: 49 of 86\n", - "Learning episode: 50 of 86\n", - "Learning episode: 51 of 86\n", - "Learning episode: 52 of 86\n", - "Learning episode: 53 of 86\n", - "Learning episode: 54 of 86\n", - "Learning episode: 55 of 86\n", - "Learning episode: 56 of 86\n", - "Learning episode: 57 of 86\n", - "Learning episode: 58 of 86\n", - "Learning episode: 59 of 86\n", - "Learning episode: 60 of 86\n", - "Learning episode: 61 of 86\n", - "Learning episode: 62 of 86\n", - "Learning episode: 63 of 86\n", - "Learning episode: 64 of 86\n", - "Learning episode: 65 of 86\n", - "Learning episode: 66 of 86\n", - "Learning episode: 67 of 86\n", - "Learning episode: 68 of 86\n", - "Learning episode: 69 of 86\n", - "Learning episode: 70 of 86\n", - "Learning episode: 71 of 86\n", - "Learning episode: 72 of 86\n", - "Learning episode: 73 of 86\n", - "Learning episode: 74 of 86\n", - "Learning episode: 75 of 86\n", - "Learning episode: 76 of 86\n", - "Learning episode: 77 of 86\n", - "Learning episode: 78 of 86\n", - "Learning episode: 79 of 86\n", - "Learning episode: 80 of 86\n", - "Learning episode: 81 of 86\n", + "Mar 11 03:52:36 SimulationManager::run [Info]: \n", + " Simulation finished.\n", "\n", - "Feb 29 07:49:26 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml [Warning]: \n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml [Warning]: \n", " Simulation resolution has changed. Internal state and parameters of the \n", " model have been reset!\n", "\n", - "Feb 29 07:49:26 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml [Warning]: \n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml__with_stdsp57f0cdcdcfc04768b800477e95499ba4_synapse_nestml [Warning]: \n", " Simulation resolution has changed. Internal state and parameters of the \n", " model have been reset!\n", - "Learning episode: 82 of 86\n", - "Learning episode: 83 of 86\n", - "Learning episode: 84 of 86\n", - "Learning episode: 85 of 86\n", - "mkdir: f72ac234a0e76775cb177b8a82cf883e\n", - "\n", - "Feb 29 07:49:26 SimulationManager::set_status [Info]: \n", - " Temporal resolution changed from 0.1 to 0.1 ms.\n", "\n", - "Connecting network and devices...\n", - "\n", - "Set min synaptic strength ...\n", - "\n", - "Save connections ...\n", - "\n", - "Simulating 37870.0 ms.\n", - "\n", - "Feb 29 07:49:33 NodeManager::prepare_nodes [Info]: \n", - " Preparing 923 nodes for simulation.\n", + "Mar 11 03:52:36 SimulationManager::set_status [Info]: \n", + " Temporal resolution changed.\n", + "Running experiment type: ff_dendrite\n", + "### simulating network\n", "\n", - "Save connections ...\n", + "Mar 11 03:52:36 NodeManager::prepare_nodes [Info]: \n", + " Preparing 66 nodes for simulation.\n", "\n", - "Feb 29 07:49:33 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 923\n", - " Simulation time (ms): 37870\n", - " Number of OpenMP threads: 1\n", + "Mar 11 03:52:36 SimulationManager::start_updating_ [Info]: \n", + " Number of local nodes: 66\n", + " Simulation time (ms): 100\n", + " Number of OpenMP threads: 8\n", " Not using MPI\n", "\n", - "Feb 29 08:10:36 SimulationManager::run [Info]: \n", + "Mar 11 03:52:36 SimulationManager::run [Info]: \n", " Simulation finished.\n", "\n", - "Times of Rank 0:\n", - " Total time: 1270.171 s\n", - " Time to initialize: 0.004 s\n", - " Time to create: 0.010 s\n", - " Time to connect: 4.402 s\n", - " Time to simulate: 1265.755 s\n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml [Warning]: \n", + " Simulation resolution has changed. Internal state and parameters of the \n", + " model have been reset!\n", + "\n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml__with_stdsp57f0cdcdcfc04768b800477e95499ba4_synapse_nestml [Warning]: \n", + " Simulation resolution has changed. Internal state and parameters of the \n", + " model have been reset!\n", "\n", - "#### Prediction performance ####\n", - "Sequence: ['A', 'D', 'B', 'E']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in E: 150\n", - "Number of active dendrites in E: 0\n", - "#### Prediction performance ####\n", - "Sequence: ['F', 'D', 'B', 'C']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in C: 150\n", - "Number of active dendrites in C: 0\n", + "Mar 11 03:52:36 SimulationManager::set_status [Info]: \n", + " Temporal resolution changed.\n", "\n", - "##### testing sequences with number of somatic spikes \n", - "sequence 0: A(150) D(150) B(150) E(150) \n", - "sequence 1: F(150) D(150) B(150) C(150) \n", - "False negative counts 6\n", + "Mar 11 03:52:36 NodeManager::prepare_nodes [Info]: \n", + " Preparing 66 nodes for simulation.\n", + "\n", + "Mar 11 03:52:36 SimulationManager::start_updating_ [Info]: \n", + " Number of local nodes: 66\n", + " Simulation time (ms): 100\n", + " Number of OpenMP threads: 8\n", + " Not using MPI\n", "\n", - "### Plasticity parameters\n", - "lambda plus: 0.0800\n", - "lambda homeostasis: 0.0140\n", - "lambda minus: 0.0015\n", - "inh factor: 7.0\n", - "excitation step 40.0ms\n", - "seed number: 1\n", - "number of learning episodes: 85\n" + "Mar 11 03:52:36 SimulationManager::run [Info]: \n", + " Simulation finished.\n" ] } ], "source": [ - "# experiments/sequence_learning_and_prediction/local_simulation.py\n", - "\n", - "def generate_sequences(params, fname):\n", - " \"\"\"Generate sequence of elements using three methods:\n", - " 1. randomly drawn elements from a vocabulary\n", - " 2. sequences with transition matrix\n", - " 3. higher order sequences: sequences with shared subsequences\n", - " 4. hard coded sequences\n", - "\n", - " Parameters\n", - " ----------\n", - " params : dict\n", - " dictionary contains task parameters\n", - " fname : str\n", - "\n", - " Returns\n", - " -------\n", - " sequences: list\n", - " test_sequences: list\n", - " vocabulary: list\n", - " \"\"\"\n", + "def run_active_dendrite_simulation(params):\n", + " print(\"Running active dendrite simulation!\")\n", + " data = {}\n", + " for i, name in enumerate(['ff', 'dendrite', 'ff_dendrite']): \n", + " print(\"Running experiment type: \" + name)\n", + " # init kernel\n", + " seed = 1\n", + " nest.ResetKernel()\n", + " nest.set_verbosity(\"M_ALL\")\n", + " nest.SetKernelStatus({\n", + " 'resolution': params['dt'],\n", + " 'print_time': params['print_simulation_progress'],\n", + " 'local_num_threads': n_threads,\n", + " 'rng_seed': seed\n", + " })\n", + " \n", + " data[name] = {}\n", + " \n", + " #############################\n", + " # create and connect neurons\n", + " # ---------------------------\n", + " \n", + " # create excitatory population\n", + " exc_neuron = nest.Create(params['soma_model'], params=params['soma_params'])\n", + " \n", + " # create inhibitory population\n", + " inh_neuron = nest.Create(params['inhibit_model'], params=params['inhibit_params'])\n", + " \n", + " # connect inhibition\n", + " nest.Connect(exc_neuron, inh_neuron, syn_spec=params['syn_dict_ie'])\n", + " nest.Connect(inh_neuron, exc_neuron, syn_spec=params['syn_dict_ei'])\n", + " \n", + " ######################\n", + " # Input stream/stimuli\n", + " #---------------------\n", + " input_excitation = nest.Create('spike_generator', params={'spike_times':[params['soma_excitation_time']]})\n", + " dendrite_excitation_1 = nest.Create('spike_generator', params={'spike_times':[params['dendrite_excitation_time']]})\n", + " #dendrite_excitation_2 = nest.Create('spike_generator', params={'spike_times':[7.]})\n", + " inhibition_excitation = nest.Create('spike_generator', params={'spike_times':[10.]})\n", + " \n", + " # excitation soma feedforward\n", + " if name == 'ff' or name == 'ff_dendrite':\n", + " nest.Connect(input_excitation, exc_neuron, syn_spec={'receptor_type': 1, \n", + " 'weight': params['syn_dict_ex']['weight'], \n", + " 'delay': params['syn_dict_ex']['delay']})\n", + "\n", + " # excitation dendrite \n", + " if name == 'dendrite' or name == 'ff_dendrite':\n", + " nest.Connect(dendrite_excitation_1, exc_neuron, syn_spec={'receptor_type': 2, \n", + " 'weight': params['syn_dict_edx']['weight'], \n", + " 'delay': params['syn_dict_edx']['delay']})\n", + " \n", + " # record voltage inhibitory neuron \n", + " vm_inh = nest.Create('voltmeter', params={'record_from': ['V_m'], 'interval': 0.1})\n", + " nest.Connect(vm_inh, inh_neuron)\n", + " \n", + " # record voltage soma\n", + " vm_exc = nest.Create('voltmeter', params={'record_from': ['V_m'], 'interval': 0.1})\n", + " nest.Connect(vm_exc, exc_neuron)\n", + " \n", + " active_dendrite_exc_mm = nest.Create('multimeter', params={'record_from': ['active_dendrite_readout', 'I_dend'], 'interval': 0.1})\n", + " nest.Connect(active_dendrite_exc_mm, exc_neuron)\n", + " \n", + " # record spikes\n", + " sd = nest.Create('spike_recorder')\n", + " nest.Connect(exc_neuron, sd)\n", + " \n", + " # record inh spikes\n", + " sd_inh = nest.Create('spike_recorder')\n", + " nest.Connect(inh_neuron, sd_inh)\n", + " \n", + " print('### simulating network')\n", + " #nest.Simulate(100.)\n", + " nest.Prepare()\n", + " nest.Run(100.)\n", + " \n", + " voltage_soma = nest.GetStatus(vm_exc)[0]['events'] \n", + " active_dendrite = nest.GetStatus(active_dendrite_exc_mm)[0]['events']\n", + " voltage_inhibit = nest.GetStatus(vm_inh)[0]['events'] \n", + " spikes_soma = nest.GetStatus(sd)[0]['events'] \n", + " spikes_inh = nest.GetStatus(sd_inh)[0]['events'] \n", + " \n", + " data[name]['exc'] = voltage_soma \n", + " data[name]['exc_active_dendrite'] = active_dendrite \n", + " data[name]['inh'] = voltage_inhibit\n", + " data[name]['spikes_exc'] = spikes_soma\n", + " data[name]['spikes_inh'] = spikes_inh\n", "\n", - " task_name = params['task_name']\n", - " task_type = params['task_type']\n", - " \n", - " # set of characters used to build the sequences\n", - " vocabulary = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',\n", - " 'U', 'V', 'W', 'X', 'Y', 'Z'][:params['vocab_size']]\n", - " sequences = []\n", + " return data\n", "\n", - " # create high order sequences, characters are drawn without replacement\n", - " if task_name == \"high_order\":\n", - "\n", - " if (params['num_sequences'] % params['num_sub_seq'] != 0):\n", - " raise ZeroDivisionError(\n", - " 'for high order sequences number of sequences needs (\"num_sequences\") to be divisible by num_sub_seq')\n", - "\n", - " num_sequences_high_order = int(params['num_sequences'] / params['num_sub_seq'])\n", - " for i in range(num_sequences_high_order):\n", - " characters_sub_seq = copy.copy(vocabulary)\n", - " sub_seq = random.sample(characters_sub_seq, params[\"length_sequence\"] - 2)\n", - " for char in sub_seq:\n", - " characters_sub_seq.remove(char)\n", - "\n", - " for j in range(params['num_sub_seq']):\n", - " # remove the characters that were chosen for the end and the start of the sequence\n", - " # this is to avoid sequences with adjacent letters of the same kind\n", - " # we will add this feature to the code asap \n", - " end_char = random.sample(characters_sub_seq, 1)\n", - " characters_sub_seq.remove(end_char[0])\n", - "\n", - " start_char = random.sample(characters_sub_seq, 1)\n", - " characters_sub_seq.remove(start_char[0])\n", - "\n", - " sequence = start_char + sub_seq + end_char\n", - " sequences.append(sequence)\n", - "\n", - " # randomly shuffled characters\n", - " elif task_name == \"random\":\n", - " sequences = [random.sample(vocabulary, length_seq) for _ in range(params['num_sequences'])]\n", - "\n", - " # create sequences using matrix transition \n", - " elif task_name == \"structure\":\n", - " matrix_transition = defaultdict(list)\n", - " for char in vocabulary:\n", - " x = np.random.choice(2, len(vocabulary), p=[0.2, 0.8])\n", - " matrix_transition[char] = x / sum(x)\n", - "\n", - " for _ in range(params['num_sequences']):\n", - " sequence = random.sample(vocabulary, 1)\n", - " last_char = sequence[-1]\n", - " for _ in range(length_seq - 1):\n", - " sequence += np.random.choice(vocabulary, 1, p=matrix_transition[last_char])[0]\n", - " last_char = sequence[-1]\n", - "\n", - " sequences += [sequence]\n", - " else:\n", - "\n", - " # hard coded sequences \n", - " if task_type == 1:\n", - " sequences = [['A', 'D', 'B', 'E'], ['F', 'D', 'B', 'C']]\n", - " elif task_type == 2:\n", - " sequences = [['E', 'N', 'D', 'I', 'J'], ['L', 'N', 'D', 'I', 'K'], ['G', 'J', 'M', 'C', 'N'], \n", - " ['F', 'J', 'M', 'C', 'I'], ['B', 'C', 'K', 'H', 'I'], ['A', 'C', 'K', 'H', 'F']]\n", - " elif task_type == 3:\n", - " sequences = [['E', 'N', 'D', 'I', 'J'], ['L', 'N', 'D', 'I', 'K'], ['G', 'J', 'M', 'E', 'N'], \n", - " ['F', 'J', 'M', 'E', 'I'], ['B', 'C', 'K', 'B', 'I'], ['A', 'C', 'K', 'B', 'F']]\n", - " else:\n", - " sequences = [['A', 'D', 'B', 'G', 'H', 'E'], ['F', 'D', 'B', 'G', 'H', 'C']]\n", - "\n", - " # test sequences used to measure the accuracy \n", - " test_sequences = sequences\n", - "\n", - " fname = 'training_data'\n", - " fname_voc = 'vocabulary'\n", - " print(\"\\nSave training data to %s\" % (fname))\n", - " np.save('%s' % ( fname), sequences)\n", - " np.save('%s' % ( fname_voc), vocabulary)\n", - "\n", - " return sequences, test_sequences, vocabulary\n", - "\n", - "model_instance = None\n", - "def generate_reference_data():\n", - " global model_instance\n", - " #############################################################\n", - " # get network and training parameters \n", - " # ===========================================================\n", - " global p\n", - " PS = copy.deepcopy(p)\n", - "\n", - " # parameter-set id from command line (submission script)\n", - " PL = shtm.helper.parameter_set_list(PS) \n", - " params = PL[0]\n", - "\n", - " # start time \n", - " time_start = time.time()\n", - "\n", - " # ###############################################################\n", - " # specify sequences\n", - " # ===============================================================\n", - " sequences, _, vocabulary = generate_sequences(params['task'], PL[0]['label'])\n", - "\n", - " # ###############################################################\n", - " # create network\n", - " # ===============================================================\n", - " model_instance = shtm.model.Model(params, sequences, vocabulary)\n", - " time_model = time.time()\n", - "\n", - " model_instance.create()\n", - " time_create = time.time()\n", - "\n", - " # ###############################################################\n", - " # connect the netwok\n", - " # ===============================================================\n", - " model_instance.connect()\n", - " time_connect = time.time()\n", - " \n", - " # store connections before learning\n", - " if params['store_connections']:\n", - " model_instance.save_connections(fname='ee_connections_before')\n", - "\n", - " # ###############################################################\n", - " # simulate the network\n", - " # ===============================================================\n", - " model_instance.simulate()\n", - " time_simulate = time.time()\n", - "\n", - " # store connections after learning\n", - " if params['store_connections']:\n", - " model_instance.save_connections(fname='ee_connections')\n", - "\n", - " print(\n", - " '\\nTimes of Rank {}:\\n'.format(\n", - " nest.Rank()) +\n", - " ' Total time: {:.3f} s\\n'.format(\n", - " time_simulate -\n", - " time_start) +\n", - " ' Time to initialize: {:.3f} s\\n'.format(\n", - " time_model -\n", - " time_start) +\n", - " ' Time to create: {:.3f} s\\n'.format(\n", - " time_create -\n", - " time_model) +\n", - " ' Time to connect: {:.3f} s\\n'.format(\n", - " time_connect -\n", - " time_create) +\n", - " ' Time to simulate: {:.3f} s\\n'.format(\n", - " time_simulate -\n", - " time_connect))\n", - "\n", - " # display prediction performance only for debugging \n", - " if params['evaluate_performance']:\n", - " \n", - " # print Ic\n", - " #zs = np.array([nest.GetStatus(model_instance.exc_neurons)[i]['z'] for i in range(params['M']*params['n_E'])])\n", - " #id_zs = np.where(zs>0.5)\n", - " #print(zs[id_zs])\n", - "\n", - " # load spikes from reference data\n", - " somatic_spikes = shtm.helper.load_spike_data(model_instance.data_path, 'somatic_spikes')\n", - " idend_eval = shtm.helper.load_spike_data(model_instance.data_path, 'idend_eval')\n", - " excitation_times = shtm.helper.load_data(model_instance.data_path, 'excitation_times')\n", - "\n", - " # get recoding times of dendriticAP\n", - " idend_recording_times = shtm.helper.load_data(model_instance.data_path, 'idend_recording_times')\n", - " characters_to_subpopulations = shtm.helper.load_data(model_instance.data_path, 'characters_to_subpopulations')\n", - "\n", - " seq_avg_errors, seq_avg_false_positives, seq_avg_false_negatives, _ = shtm.helper.compute_prediction_performance(somatic_spikes, idend_eval, idend_recording_times, characters_to_subpopulations, model_instance.sequences, model_instance.params)\n", - "\n", - " # get number of active neuron for each element in the sequence\n", - " number_elements_per_batch = sum([len(seq) for seq in model_instance.sequences])\n", - " start_time = excitation_times[-number_elements_per_batch] - 5 \n", - " end_time = excitation_times[-1] + 5\n", - "\n", - " idx_times = np.where((np.array(excitation_times) > start_time) & (np.array(excitation_times) < end_time)) \n", - " excitation_times_sel = np.array(excitation_times)[idx_times]\n", - "\n", - " num_active_neurons = shtm.helper.number_active_neurons_per_element(model_instance.sequences, somatic_spikes[:,1], somatic_spikes[:,0], excitation_times_sel, params['fixed_somatic_delay'])\n", - "\n", - " print(\"\\n##### testing sequences with number of somatic spikes \")\n", - " count_false_negatives = 0\n", - " for i, (sequence, seq_counts) in enumerate(zip(model_instance.sequences, num_active_neurons)): \n", - " seq = ''\n", - " for j, (char, counts) in enumerate(zip(sequence, seq_counts)):\n", - " seq += str(char)+'('+ str(seq_counts[char])+')'.ljust(2)\n", - "\n", - " if j != 0 and seq_counts[char] > 0.5*params['n_E']:\n", - " count_false_negatives += 1\n", - "\n", - " print(\"sequence %d: %s\" % (i, seq)) \n", - "\n", - " print(\"False negative counts\", count_false_negatives) \n", - "\n", - " print(\"\\n### Plasticity parameters\")\n", - " print(\"lambda plus: %0.4f\" % params['syn_dict_ee']['lambda_plus'])\n", - " print(\"lambda homeostasis: %0.4f\" % params['syn_dict_ee']['lambda_h'])\n", - " print(\"lambda minus: %0.4f\" % model_instance.params['syn_dict_ee']['lambda_minus']) \n", - " print(\"inh factor:\", params['inh_factor'])\n", - " print(\"excitation step %0.1fms\" % params['DeltaT']) #30-50 \n", - " print(\"seed number: %d\" % params['seed']) \n", - " print(\"number of learning episodes: %d\" % params['learning_episodes'])\n", - "\n", - "generate_reference_data()\n", - "\n", - "\n" + "data = run_active_dendrite_simulation(p)" ] }, { @@ -1965,5696 +2410,1580 @@ "metadata": {}, "outputs": [ { - "name": "stdout", + "name": "stderr", "output_type": "stream", "text": [ - "#### sequences used for training ### \n", - "sequence 0: A D B E \n", - "sequence 1: F D B C \n", - "#### Prediction performance ####\n", - "Sequence: ['A' 'D' 'B' 'E']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in E: 150\n", - "Number of active dendrites in E: 0\n", - "#### Prediction performance ####\n", - "Sequence: ['F' 'D' 'B' 'C']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in C: 150\n", - "Number of active dendrites in C: 0\n", - "number of episodes to convergence 85\n", - "#### Prediction performance ####\n", - "Sequence: ['A' 'D' 'B' 'E']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in E: 150\n", - "Number of active dendrites in E: 0\n", - "#### Prediction performance ####\n", - "Sequence: ['F' 'D' 'B' 'C']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in C: 150\n", - "Number of active dendrites in C: 0\n", - "number of episodes to convergence 85\n", - "#### Prediction performance ####\n", - "Sequence: ['A' 'D' 'B' 'E']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in E: 150\n", - "Number of active dendrites in E: 0\n", - "#### Prediction performance ####\n", - "Sequence: ['F' 'D' 'B' 'C']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in C: 150\n", - "Number of active dendrites in C: 0\n", - "number of episodes to convergence 85\n", - "#### Prediction performance ####\n", - "Sequence: ['A' 'D' 'B' 'E']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in E: 150\n", - "Number of active dendrites in E: 0\n", - "#### Prediction performance ####\n", - "Sequence: ['F' 'D' 'B' 'C']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in C: 150\n", - "Number of active dendrites in C: 0\n", - "number of episodes to convergence 85\n", - "#### Prediction performance ####\n", - "Sequence: ['A' 'D' 'B' 'E']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in E: 150\n", - "Number of active dendrites in E: 0\n", - "#### Prediction performance ####\n", - "Sequence: ['F' 'D' 'B' 'C']\n", - "Error: 1.0\n", - "False positives: 0.0\n", - "False negatives: 1.0\n", - "Number of active neurons in C: 150\n", - "Number of active dendrites in C: 0\n", - "number of episodes to convergence 85\n" + "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=10.0.\n", + "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=10.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n", + "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=10.0.\n", + "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=10.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Bold.ttf') with score of 0.050000.\n", + "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0.\n", + "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Bold.ttf') with score of 0.050000.\n" ] + }, + { + "data": { + "image/png": "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3R3ffvut3FTdM2fOQCQSVRix8PTpU4hEIoSHh8tpbWxsjPj4eAwcOBAmJiZ4//33AZQ58jNnzuSu1bJlS6xcuRLll10TiUT4+OOPERERAU9PT+4zcuzYsWrb3ZCMGDECgwYNwtdff42ff/4ZISEhePPNN9GoUSMsW7aMK/f1118jMzMTPj4++Omnn/D555/j448/xttvv4133nmnwe0kB14FcHFxwfz583H79m3cvn0bc+bMQUZGBj799FM0adIEAwYMwLZt29TizRfBH6r09ldd0CTNGWOYMWMGgLJekQ0bNnCL1Empqgdedr/8ObVFkzRXFkhz/iHN+Yc0r560tDS88cYbOHHiBD7++GOsWbMG7u7umDhxIr7//nsAgKGhIbZs2YK4uDgsXLiQO3fatGl4/vw5wsPDuZe44eHhGDRoELKysjB//nwsW7YM3t7eVTp7NjY2+N///gcAeO+997B161Zs3boVQ4cOBQD8/fffSEhIwPjx4/HDDz9g5MiR2LlzJwYOHMg5mkOHDsWoUaMAlE2ZkNYhfTEwadIkLFq0CB06dMDq1avh4+ODpUuXYuTIkRXs+e+//zBq1Cj0798fa9asgbe3N8aOHYvbt2/j33//lSt77do13L9/H2PGjHmtznFxcQgICED//v2xatUqWFhYIDg4WC50Wn5+Pnx8fLBt2zaMGzcOa9euRffu3TF//nx89tlnr71GVetxlZaWwtfXF7a2tli5ciWGDRsGxhjeffddrF69Gu+88w6+++47tGzZErNnz670WhcuXMBHH32EkSNHYvny5SgsLMSwYcPkXqTwib+/P54+fYrvvvsOH330EXbt2oWhQ4fi+vXrcguLd+jQASdOnIChoSFCQkKwceNGTJw4EXv37uXH0AZf555oMC5cuMA++ugjZmtry7S0tJiRkREXjkRVkIaRi4iIENoUjWPdunVCm6BxaJLmu3bt4kK2zJ49u9IyP//8M1cmOTmZSz969CgLDQ1loaGhbN++ffWyQ5M0VxZIc/4hzflHEZrHx8ez+Ph4BVijfEycOJE5ODiwp0+fyqWPHDmSmZmZsfz8fC5t/vz5TEtLi507d47t2bOHAWDff/89l5+dnc1MTExY165dWVJSklx9EomE2w8KCmIuLi7ccUZGRpVhw2SvL2XHjh0MADt37hyXtmLFCgaAJSYmypWNiopi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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" } ], "source": [ - "# experiments/sequence_learning_and_prediction/prediction_performance_analysis.py\n", - "\n", - "PS = copy.deepcopy(p)\n", - "PS_sel = copy.deepcopy(PS)\n", - "compute_overlap = True\n", - "\n", - "PL = shtm.helper.parameter_set_list(PS_sel)\n", - "\n", - "# get training data\n", - "sequences = shtm.helper.load_data('.', 'training_data')\n", + "def plot_active_dendrite_simulation(params, data):\n", + " \n", + " \n", + " def position_excitation_arrows(ax, soma_time, dendrite_time):\n", + " \n", + " arrow_width = 1.8\n", + " arrow_height = 1.8\n", + " y = -2.3\n", + " \n", + " # plot excitation arrows for panel A\n", + " x = soma_time - arrow_width/2 \n", + " pos = [x, y]\n", + " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", + " t1 = plt.Polygon(X, color=color_somatic_input)\n", + " ax[0].add_patch(t1)\n", + " \n", + " # plot excitation arrows for panel B\n", + " x = dendrite_time - arrow_width/2 \n", + " pos = [x, y]\n", + " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", + " t1 = plt.Polygon(X, color=color_dAP_input)\n", + " ax[1].add_patch(t1)\n", + " \n", + " # plot excitation arrows for panel C\n", + " x = dendrite_time - arrow_width/2 \n", + " pos = [x, y]\n", + " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", + " t1 = plt.Polygon(X, color=color_dAP_input)\n", + " ax[2].add_patch(t1)\n", + " \n", + " x = soma_time - arrow_width/2 \n", + " pos = [x, y]\n", + " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", + " t1 = plt.Polygon(X, color=color_somatic_input)\n", + " ax[2].add_patch(t1)\n", + " \n", + " \n", + " color_dAP_input = '#8e7c42ff'\n", + " #color_somatic_input = '#0000ffff'\n", + " color_somatic_input = '#4581a7ff'\n", + " color_soma = '#000000ff'\n", + " color_dAP = '#00B4BE' \n", + " color_inhibit = '#808080ff' \n", + " color_hrl = 'black'\n", + " \n", + " #color_somatic_spike = '#ff0000ff'\n", + " color_somatic_spike = color_soma\n", + " color_inh_spike = color_inhibit\n", + " ms_spike = 7\n", + " mew_spike = 1.5\n", + " lw_vtheta = 0.5\n", + " lw_dAP = 1.5\n", + " lw_s = 1.5\n", + " lw_i = 1.5\n", + " \n", + " # plot settings \n", + " fig_size = (6., 5)\n", + " ymin = -4\n", + " ymax = params['soma_params']['V_th'] + 4\n", + " xmin = 0 \n", + " xmax = 85\n", + " label_pos = (-0.18, 1.)\n", + " panel_labels = ['A', 'B', 'C']\n", + " v_th=params['soma_params']['V_th'] \n", + " time_dAP = 10\n", + " \n", + " # set up the figure frame\n", + " fig = plt.figure()\n", + " gs = mpl.gridspec.GridSpec(5, 1, height_ratios=[15,15,15,5,6], bottom=0.1, right=0.95, top=0.93, wspace=0., hspace=0.1)\n", + " left, bottom, width, height = [0.4, 0.1, 0.2, 0.2]\n", + " axes = []\n", + " \n", + " \n", + " \n", + " for i, name in enumerate(['ff', 'dendrite', 'ff_dendrite']):\n", + " \n", + " #ax = fig.add_subplot(gs[i,0])\n", + " ax = plt.subplot(gs[i,0])\n", + " ax.text(label_pos[0], label_pos[1], panel_labels[i], transform=ax.transAxes, horizontalalignment='center', verticalalignment='center', size=10, weight='bold')\n", + " ax.plot(data[name]['exc']['times'], data[name]['exc']['V_m'], lw=lw_s, color=color_soma, zorder=2, label='excitatory neuron') \n", + " \n", + " \n", + " ax.plot(data[name]['exc_active_dendrite']['times'], data[name]['exc_active_dendrite']['active_dendrite_readout'], lw=lw_s, color=color_dAP) \n", + " \n", + " ax_ = ax.twinx()\n", + " ax_.plot(data[name]['exc_active_dendrite']['times'], data[name]['exc_active_dendrite']['I_dend'], lw=lw_s, color=\"red\", label=\"I_dend\") \n", + " ax_.plot((0., np.amax(data[name]['exc_active_dendrite']['times'])), 2*[p['soma_params']['theta_dAP']], c=\"red\", linestyle=':')\n", + " \n", + " ax.plot(data[name]['spikes_exc']['times'], (v_th+2)*np.ones(len(data[name]['spikes_exc']['times'])), '|', c=color_somatic_spike, ms=ms_spike, mew=mew_spike)\n", + " ax.plot(data[name]['spikes_inh']['times'], (v_th+2)*np.ones(len(data[name]['spikes_inh']['times'])), '|', c=color_inh_spike, ms=ms_spike, mew=mew_spike)\n", + " ax.legend()\n", + " \n", + " # add dendritic action potential bar manually\n", + " if name == 'dendrite': \n", + " ax.hlines(v_th+2, time_dAP, time_dAP+params['soma_params']['tau_dAP'], lw=lw_dAP, color=color_dAP)\n", + " \n", + " if name == 'ff_dendrite': \n", + " ax.hlines(v_th+2, time_dAP, data[name]['spikes_exc']['times'][0], lw=lw_dAP, color=color_dAP)\n", + " \n", + " # clamp voltage if doesn't reach the firing threshold\n", + " if name == 'ff' or name == 'ff_dendrite': \n", + " max_volt = max(data[name]['inh']['V_m']) \n", + " max_volt_ind = np.where(data[name]['inh']['V_m']==max_volt)[0]\n", + " data[name]['inh']['V_m'][max_volt_ind] = 20\n", + " \n", + " ax.plot(data[name]['inh']['times'], data[name]['inh']['V_m'], lw=lw_i, color=color_inhibit, zorder=1, label='inhibitory neuron') \n", + " ax.set_ylim([ymin, ymax])\n", + " ax.set_xlim([xmin, xmax])\n", + " ax.hlines(v_th, xmin, xmax, lw=lw_vtheta, color=color_hrl, linestyle='--')\n", + " \n", + " axes.append(ax)\n", + " \n", + " axes[1].set_ylabel('membrane potential (mV)')\n", + " \n", + " # set position of arrows\n", + " position_excitation_arrows(axes, p['soma_excitation_time'], p['dendrite_excitation_time'])\n", + " \n", + " axes[0].legend(loc='center right')\n", + " axes[0].set_yticklabels([])\n", + " axes[0].set_xticklabels([])\n", + " axes[1].set_xticklabels([])\n", + " axes[2].set_yticklabels([])\n", + " axes[2].set_xlabel('time (ms)')\n", + " \n", + " ########################################\n", + " # plt spikes of A and B\n", + " # --------------------------------------\n", + " ax = fig.add_subplot(gs[i+1,0])\n", + " plt.axis('off')\n", + " \n", + " ax = plt.subplot(gs[i+2,0])\n", + " ax.text(label_pos[0], label_pos[1], 'D', transform=ax.transAxes, horizontalalignment='center', verticalalignment='center', size=10, weight='bold')\n", + " \n", + " xmin_d=25.6\n", + " xmax_d=29\n", + " \n", + " ymin_d=0\n", + " ymax_d=10\n", + " \n", + " name = 'ff'\n", + " ax.plot(data[name]['spikes_exc']['times'], (3*ymax_d/4)*np.ones(len(data[name]['spikes_exc']['times'])), '|', c=color_somatic_spike, ms=ms_spike, mew=mew_spike)\n", + " ax.plot(data[name]['spikes_inh']['times'], (3*ymax_d/4)*np.ones(len(data[name]['spikes_inh']['times'])), '|', c=color_inh_spike, ms=ms_spike, mew=mew_spike)\n", + " \n", + " name = 'ff_dendrite'\n", + " ax.plot(data[name]['spikes_exc']['times'], (ymax_d/4)*np.ones(len(data[name]['spikes_exc']['times'])), '|', c=color_somatic_spike, ms=ms_spike, mew=mew_spike)\n", + " ax.plot(data[name]['spikes_inh']['times'], (ymax_d/4)*np.ones(len(data[name]['spikes_inh']['times'])), '|', c=color_inh_spike, ms=ms_spike, mew=mew_spike)\n", + " ax.hlines(ymax_d/2, xmin, xmax, lw=0.5, color=color_hrl, linestyles='solid')\n", + " \n", + " ax.set_yticklabels([])\n", + " ax.tick_params(left=False)\n", + " ax.set_ylim([ymin_d, ymax_d])\n", + " ax.set_xlim([xmin_d, xmax_d])\n", + " ax.set_xlabel('time (ms)')\n", + " \n", + " ax.text(xmin_d+0.05, (3*ymax_d/4)-1, 'A', size=8, weight='bold')\n", + " ax.text(xmin_d+0.05, (ymax_d/4)-1, 'C', size=8, weight='bold')\n", + " \n", + " ############################################################\n", + " # add lines between the subplots showing the zoomed in area\n", + " # ----------------------------------------------------------\n", + " xy_C = (xmin_d,ymin)\n", + " xy_D = (xmin_d,ymax_d)\n", + " con = mpl.patches.ConnectionPatch(xyA=xy_C, xyB=xy_D, coordsA='data', coordsB='data', axesA=axes[-1], axesB=ax, color='grey', linestyle='dotted')\n", + " ax.add_artist(con)\n", + " \n", + " xy_C = (xmax_d,ymin)\n", + " xy_D = (xmax_d,ymax_d)\n", + " con = mpl.patches.ConnectionPatch(xyA=xy_C, xyB=xy_D, coordsA='data', coordsB='data', axesA=axes[-1], axesB=ax, color='grey', linestyle='dotted')\n", + " ax.add_artist(con)\n", + " \n", + " plt.savefig(\"/tmp/sequences1.png\")\n", "\n", - "print(\"#### sequences used for training ### \")\n", - "for i, sequence in enumerate(sequences): \n", - " seq = '' \n", - " for char in sequence:\n", - " seq += str(char).ljust(2) \n", - " print(\"sequence %d: %s\" % (i, seq))\n", + "plot_active_dendrite_simulation(p, data)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Experiment 2: synaptic plasticity dependence on dAP" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "def create_stdsp_dependence_on_third_factor_parameters():\n", + " DELAY = 0.1\n", + " \n", + " p = para.ParameterSpace({})\n", + " \n", + " p['dt'] = 0.1 # simulation time resolution (ms)\n", + " p['print_simulation_progress'] = True # print the time progress.\n", + " \n", + " # neuron parameters of the excitatory neurons\n", + " p['soma_model'] = neuron_model_name\n", + " p['soma_params'] = {}\n", + " p['soma_params']['C_m'] = 250. # membrane capacitance (pF)\n", + " p['soma_params']['E_L'] = 0. # resting membrane potential (mV)\n", + " # p['soma_params']['I_e'] = 0. # external DC currents (pA)\n", + " p['soma_params']['V_m'] = 0. # initial potential (mV)\n", + " p['soma_params']['V_reset'] = 0. # reset potential (mV)\n", + " p['soma_params']['V_th'] = 20. # spike threshold (mV)\n", + " p['soma_params']['t_ref'] = 10. # refractory period\n", + " p['soma_params']['tau_m'] = 10. # membrane time constant (ms)\n", + " p['soma_params']['tau_syn1'] = 2. # synaptic time constant: external input (receptor 1)\n", + " p['soma_params']['tau_syn2'] = 5. # synaptic time constant: dendrtic input (receptor 2)\n", + " p['soma_params']['tau_syn3'] = 1. # synaptic time constant: inhibitory input (receptor 3)\n", + " # dendritic action potential\n", + " p['soma_params']['I_p'] = 200. # current clamp value for I_dAP during a dendritic action potenti\n", + " p['soma_params']['tau_dAP'] = 60. # time window over which the dendritic current clamp is active\n", + " p['soma_params']['theta_dAP'] = 59. # current threshold for a dendritic action potential\n", + " p['fixed_somatic_delay'] = 2 # this is an approximate time of how long it takes the soma to fire\n", + " # upon receiving an external stimulus \n", + " \n", + " p['soma_params']['I_dend_incr'] = 2.71 / (p['soma_params']['tau_syn2'])\n", "\n", - "fname = 'prediction_performance'\n", - "for cP, params in enumerate(PL):\n", + " # synaptic parameters\n", + " p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", + " p['convergence'] = 5\n", + " p['pattern_size'] = 20 # sparse set of active neurons per subpopulation\n", + " \n", + " # parameters for ee synapses (stdsp)\n", + " p['syn_dict_ee'] = {}\n", + " p['permanence_min'] = 0.\n", + " p['permanence_max'] = 8.\n", + " p['calibration'] = 0.\n", + " p['syn_dict_ee']['weight'] = 0.01 # synaptic weight\n", + " p['syn_dict_ee']['synapse_model'] = synapse_model_name # synapse model\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " p['syn_dict_ee']['permanence_threshold'] = 10. # synapse maturity threshold\n", + " else:\n", + " p['syn_dict_ee']['th_perm'] = 10. # synapse maturity threshold\n", "\n", - " data = {}\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " p['syn_dict_ee']['tau_pre_trace'] = 20. # plasticity time constant (potentiation)\n", + " else:\n", + " p['syn_dict_ee']['tau_plus'] = 20. # plasticity time constant (potentiation)\n", + " \n", + " p['syn_dict_ee']['delay'] = 2. # dendritic delay \n", + " p['syn_dict_ee']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", + " p['syn_dict_ee']['lambda_plus'] = 0.08 # potentiation rate\n", + " p['syn_dict_ee']['zt'] = 1. # target dAP trace [pA]\n", + " p['syn_dict_ee']['lambda_h'] = 0.014 # homeostasis rate\n", + " p['syn_dict_ee']['Wmax'] = 1.1 * p['soma_params']['theta_dAP'] / p['convergence'] # Maximum allowed weight\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " p['syn_dict_ee']['permanence_max'] = 20. # Maximum allowed permanence\n", + " p['syn_dict_ee']['permanence_min'] = 1. # Minimum allowed permanence\n", + " else:\n", + " p['syn_dict_ee']['Pmax'] = 20. # Maximum allowed permanence\n", + " p['syn_dict_ee']['Pmin'] = 1. # Minimum allowed permanence\n", + " p['syn_dict_ee']['lambda_minus'] = 0.0015\n", + "\n", + " # parameters of EX synapses (external to soma of E neurons)\n", + " p['conn_dict_ex'] = {}\n", + " p['syn_dict_ex'] = {}\n", + " p['syn_dict_ex']['receptor_type'] = 1 # receptor corresponding to external input\n", + " p['syn_dict_ex']['delay'] = DELAY # dendritic delay\n", + " p['conn_dict_ex']['rule'] = 'all_to_all' # connection rule\n", + " \n", + " ## stimulus parameters\n", + " p['DeltaT'] = 40. # inter-stimulus interval\n", "\n", - " # get data path\n", - " # load somatic spikes and dendritic current\n", - " somatic_spikes = shtm.helper.load_spike_data(model_instance.data_path, 'somatic_spikes')\n", - " idend_eval = shtm.helper.load_spike_data(model_instance.data_path, 'idend_eval')\n", + " p['seed'] = 1 # rng seed\n", + " \n", + " return p\n", "\n", - " # load record and excitation times \n", - " idend_recording_times = shtm.helper.load_data(model_instance.data_path, 'idend_recording_times')\n", - " characters_to_subpopulations = shtm.helper.load_data(model_instance.data_path, 'characters_to_subpopulations')\n", - " excitation_times = shtm.helper.load_data(model_instance.data_path, 'excitation_times')\n", - "\n", - " # compute prediction performance\n", - " errors, false_positives, false_negatives, num_active_neurons = shtm.helper.compute_prediction_performance(somatic_spikes, idend_eval, idend_recording_times, characters_to_subpopulations, sequences, params)\n", - "\n", - " if compute_overlap:\n", - " # sequences overlap\n", - " sequences_overlap = shtm.helper.measure_sequences_overlap(sequences, somatic_spikes[:,1], somatic_spikes[:,0], excitation_times, params['fixed_somatic_delay'], params['learning_episodes'])\n", - " data['overlap'] = sequences_overlap\n", - "\n", - " data['error'] = errors\n", - " data['false_positive'] = false_positives\n", - " data['false_negative'] = false_negatives\n", - " data['rel_active_neurons'] = num_active_neurons/params['n_E']\n", - " data['ep_num'] = params['episodes_to_testing'] * np.arange(int(params['learning_episodes']/params['episodes_to_testing'])+1)\n", - "\n", - " ep_to_sol = np.where(errors < 0.01)[0] \n", - " if len(ep_to_sol) == 0:\n", - " print(\"number of episodes to convergence\", params['learning_episodes'])\n", - " else: \n", - " print(\"number of episodes to convergence\", data['ep_num'][ep_to_sol][0])\n", - "\n", - " # save data\n", - " np.save(\"%s\" % (fname), data)\n" + "params = create_stdsp_dependence_on_third_factor_parameters() " ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 9, "metadata": {}, "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n" - ] - }, { "name": "stdout", "output_type": "stream", "text": [ - "#### sequences used for training ### \n", - "sequence 0: A D B E \n", - "sequence 1: F D B C \n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=6.0.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=6.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n" - ] - }, - { - "data": { - "image/png": "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ZInOlV7c5s2blerqakVRFKWyslJ58MEHlaFDhyonT55UTp48qQwYMEBZtmyZ0tjYqBQXFyshISHKyy+/bHDVFzp37pwyaNAg5cUXX3R5/YsvvlD27NmjnD17Vjl37pzywQcfKL1791ZeffVVgyr9QXNzs2K325UPPvhAAaA0NDQ4f17c+d6b4c/MxTJ89913yqhRo5To6Gilqampza/PyclRKioqlNbWVqW2tlaJj49XevXqpXz77beXVQ+bEyJSVWtrq5KQkKD0799f8ff3VyZOnKjs27fP6LLaBUDx9fVVevTo4fJwNCsFBQXK6NGjlYCAACUwMFC59tprleeff77dX9JGmTlzptK3b1/F399fGTRokDJ37lzl4MGDzveLioqUCRMmKP7+/kr//v2VZ599VmltbTWw4rb99a9/Vbp16+ZstBy2bt2qXHvttUqPHj2UoKAgZfTo0crq1asNqtLVhg0bFAAXPP75z38qinLp770Z/sxcLMNzzz2nAFCuuOIKlz8j06dPd359bGysMmDAAOWKK65Q+vfvr/ziF79Qvvjii8uux6IoJj8nRkRERJ0K55wQERGRqbA5ISIiIlNhc0JERESmwuaEiIiITIXNCREREZkKmxMiIiIyFTYnREREZCpsToiIiMhU2JwQEQnx1ltvYfjw4YYc+3/+53/wxBNPaLb/mTNn4vXXX9ds/2QuXCGWiMgLRUVFYcKECUhKSjK6FFRWVuK6665DaWkpgoODNTlGUVERpk6divLycvj7+2tyDDIPnjkhIiKPrF69GlOmTNGsMQGAMWPGYOjQodi4caNmxyDzYHNCRORlYmNj8cknnyA5ORkBAQHO29e//vrrGDJkiHO73/zmN7j33nvx+OOPo0+fPujbty9WrlyJw4cPY9q0aQgMDMSIESOwc+dOl/2/+eabGDNmDIKCgjBy5Ei8/fbbF63n//7v/zBt2jSX16KiorBo0SLce++96NmzJ4YMGYK3334bxcXF+PnPf47AwECMHz8epaWlzq/5y1/+gpEjR6Jnz57o27cv7rzzTpd9Tp8+He+8885lfc/Iy3h6J0MiItLfbbfdpixfvtzltQ0bNiiDBw92/n9MTIzi5+enZGdnK83NzUpOTo5isViUqKgoZd++fUpzc7Py1FNPKRERES77CAkJUXbv3q20tLQon3zyiRIYGKh88sknbdbR2NioAFB27dp1QX1BQUFKfn6+0tLSoqxcuVK54oorlBkzZijffPONcvbsWeWee+5Rpk6dqiiKopw+fVrp2rWrsn37dkVRFMVutzv/2yE7O1vp06fP5X/TyGvwzAkRkWATJkzAnDlz0KVLF1itVgQFBWHq1KkYNWoUunTpgl//+tc4cOAA6uvrAQD/+7//i+XLl+NnP/sZfHx8MGHCBNx7773tTkatra0FAAQFBV3w3i9/+UtMmjQJPj4++M1vfoPGxkbMmzcPoaGh8PPzw/3334/CwkLn9l27dsXXX3+N48ePo3v37rj99ttd9hcUFOQ8HsnG5oSISLCBAwe6/H+PHj1cXuvRowcA4NSpUwCAgwcP4r//+7/Rq1cv5yMrKwtHjx5tc/+9e/cGAGdz096xHcf56WuO415xxRXIzc3FP/7xDwwfPhyjRo3Cq6++6rK/+vp65/FINl+jCyAioo7z8dHm35YDBgzAn/70J/z61792a3t/f3+MGDECJSUluOmmmzw69sSJEzFx4kQoioL8/HxMnz4dI0aMwJQpUwAAxcXF+NnPfubRMcg78MwJEZEXGjBgAA4cOKD6fhcvXozExETs3r0bra2tOHv2LHbv3o0vvvii3a+555578MEHH3h03MrKSmRnZ6Ourg4WiwW9evWCxWKBr+8P/4bOzc3F7NmzPToOeQeeOSEi8kL//d//jYcffhi9e/eGoiioq6tTZb+//e1v0bdvX8TGxqKsrAy+vr6IjIzEihUr2v2ahQsXYsSIETh27Bj69+9/WcdVFAVr1qzBY489hqamJgwYMADPP/88Jk+eDADYt28fvvnmGzz44IOXtX/yLlyEjYiIPPb888/j6NGjSEtL02T/s2bNwuzZs/HQQw9psn8yFzYnREREZCqcc0JERESmwuaEiIiITIXNCREREZkKmxMiIiIyFTYnREREZCpsToiIiMhU2JwQERGRqbA5ISIiIlNhc0JERESmwuaEiIiITIXNCREREZkKmxMiIiIyFTYnREREZCr/P/0vIF++J5w2AAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "def load_data(path, fname):\n", - " \"\"\"Load data\n", - "\n", - " Parameters\n", - " ----------\n", - " path: str\n", - " fname: str\n", - "\n", - " Returns\n", - " -------\n", - " data: ndarray\n", - " \"\"\"\n", - "\n", - " #TODO: this is temporary hack!\n", - " try:\n", - " data = np.load('%s/%s.npy' % (path, fname), allow_pickle=True).item()\n", - " except:\n", - " data = np.load('%s/%s.npy' % (path, fname), allow_pickle=True)\n", - "\n", - " return data\n", - "\n", - "\n", - "\n", - "# get parameters \n", - "PS = p\n", - "PS_sel = copy.deepcopy(PS)\n", - "\n", - "params = PS_sel\n", - "num_neurons = params['M'] * params['n_E']\n", - "\n", - "# get trained sequences and vocabulary\n", - "sequences = shtm.helper.load_data('.', 'training_data')\n", - "vocabulary = shtm.helper.load_data('.', 'vocabulary')\n", - "\n", - "print('#### sequences used for training ### ')\n", - "for i, sequence in enumerate(sequences):\n", - " seq = ''\n", - " for char in sequence:\n", - " seq += str(char).ljust(2)\n", - " print('sequence %d: %s' % (i, seq))\n", - "\n", - "# load spikes\n", - "somatic_spikes = shtm.helper.load_spike_data(model_instance.data_path, 'somatic_spikes')\n", - "idend = shtm.helper.load_spike_data(model_instance.data_path, 'idend_last_episode')\n", - "\n", - "# load spike recordings\n", - "idend_recording_times = shtm.helper.load_data(model_instance.data_path, 'idend_recording_times')\n", - "characters_to_subpopulations = shtm.helper.load_data(model_instance.data_path, 'characters_to_subpopulations')\n", - "characters_to_time_excitation = shtm.helper.load_data(model_instance.data_path, 'excitation_times_soma')\n", - "\n", - "# load excitation times\n", - "excitation_times = shtm.helper.load_data(model_instance.data_path, 'excitation_times')\n", - "\n", - "# get dendritic AP\n", - "idx = np.where((idend[:, 2] > params['soma_params']['theta_dAP']))[0]\n", - "dendriticAP_currents = idend[:, 2][idx]\n", - "dendriticAP_times = idend[:, 1][idx]\n", - "dendriticAP_senders = idend[:, 0][idx]\n", - "\n", - "# organize the characters for plotting purpose\n", - "subpopulation_indices = []\n", - "chars_per_subpopulation = []\n", - "for char in vocabulary:\n", - " # shift the subpopulation indices for plotting purposes \n", - " char_to_subpopulation_indices = characters_to_subpopulations[char]\n", - " subpopulation_indices.extend(char_to_subpopulation_indices)\n", - "\n", - " chars_per_subpopulation.extend(char * len(characters_to_subpopulations[char]))\n", - "\n", - "shifted_subpopulation_indices = np.array(subpopulation_indices) + 0.5\n", - "\n", - "# ####################################################\n", - "# plotting routing\n", - "# ----------------------------------------------------\n", - "\n", - "# plot settings \n", - "fig_size = (5.2, 5.7)\n", - "plt.rcParams['font.size'] = 8\n", - "plt.rcParams['legend.fontsize'] = 6\n", - "plt.rcParams['figure.figsize'] = fig_size\n", - "plt.rcParams['font.family'] = 'sans-serif'\n", - "plt.rcParams['savefig.dpi'] = 300\n", - "plt.rcParams['text.usetex'] = False\n", - "\n", - "panel_label_pos = (-0.14,0.5)\n", - "panel_labels = ['B', 'D', 'F']\n", - "color_soma_spike = '#DB2763'\n", - "color_dendrite_spike = '#00B4BE' \n", - "fc_bg = '#dcdcdc'\n", - "fraction_active = 3\n", - "delta_time = 5.\n", - "ymin = -0.1\n", - "ymax = 2\n", - "xmin = 0\n", - "master_file_name = 'network_activity'\n", - "\n", - "# set up the figure frame\n", - "fig = plt.figure()\n", - "gs = mpl.gridspec.GridSpec(6, 2, height_ratios=[3, 15, 3, 15, 3, 15], bottom=0.07, right=0.95, top=1., wspace=0., hspace=0.)\n", - "\n", - "# panel A (placeholder for svg figure to be inserted; see below)\n", - "panel_label_pos_shift = (-0.26, 0.5)\n", - "plt.subplot(gs[0, 0])\n", - "plt.axis('off')\n", - "\n", - "# panel C (placeholder for svg figure to be inserted; see below)\n", - "plt.subplot(gs[2, 0])\n", - "plt.axis('off')\n", - "\n", - "# panel C (placeholder for svg figure to be inserted; see below)\n", - "plt.subplot(gs[4, 0])\n", - "plt.axis('off')\n", - "\n", - "for j, (learn, seq_num) in enumerate(zip([False, True, True], [0, 0, 1])):\n", - "\n", - " ###################################\n", - " # postprocessing of data\n", - " # ---------------------------------\n", - " if learn and seq_num == 0:\n", - " start_time = characters_to_time_excitation[sequences[0][0]][-1] - params['pad_time']\n", - " end_time = characters_to_time_excitation[sequences[0][-1]][-1] + params['pad_time']\n", - " elif learn and seq_num == 1:\n", - " start_time = characters_to_time_excitation[sequences[1][0]][-1] - params['pad_time']\n", - " end_time = characters_to_time_excitation[sequences[1][-1]][-1] + params['pad_time']\n", - " else:\n", - " start_time = characters_to_time_excitation[sequences[0][0]][0] - params['pad_time']\n", - " end_time = characters_to_time_excitation[sequences[0][-1]][0] + params['pad_time']\n", - "\n", - " # select data corresponding to the different sequences\n", - " idx_somatic_spikes = np.where((somatic_spikes[:,1] > start_time) & (somatic_spikes[:,1] < end_time))\n", - " idx_dAP = np.where((dendriticAP_times > start_time) & (dendriticAP_times < end_time))\n", - "\n", - " # postprocess somatic spikes\n", - " somatic_spikes_times = somatic_spikes[:,1][idx_somatic_spikes]\n", - " somatic_spikes_senders = somatic_spikes[:,0][idx_somatic_spikes]\n", - " initial_time = somatic_spikes_times[0]\n", - " somatic_spikes_times -= initial_time\n", - " xmax = somatic_spikes_times[-1] + delta_time\n", - "\n", - " # postporcess dendritic AP\n", - " dAP_senders = dendriticAP_senders[idx_dAP]\n", - " dAP_currents = dendriticAP_currents[idx_dAP]\n", - " dAP_times = dendriticAP_times[idx_dAP]\n", - " dAP_times -= initial_time\n", - "\n", - " idx_exc_times = np.where((excitation_times > start_time) & (excitation_times < end_time))\n", - " excitation_times_sel = excitation_times[idx_exc_times]\n", - "\n", - " # ###############################\n", - " # draw stimulus\n", - " # -------------------------------\n", - " plt.subplot(gs[2*j, 1])\n", - " plt.axis('off')\n", - "\n", - " for i in range(len(sequences[seq_num])): \n", - "\n", - " x = (excitation_times_sel[i]+delta_time-initial_time) / (xmax+delta_time)\n", - " y = 0.26\n", - " arrow_width = 0.03\n", - " arrow_height = 0.2\n", - "\n", - " pos = [x, y]\n", - " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]-arrow_height]])\n", - " t1 = plt.Polygon(X, color='black')\n", - " plt.gca().add_patch(t1)\n", - " #plt.text(pos[0]+arrow_width/8, pos[1]+0.5, sequences[seq_num][i])\n", - " plt.text(pos[0]-0.003, pos[1]+0.1, sequences[seq_num][i])\n", - "\n", - " # ###############################\n", - " # show soma and dendritic spikes\n", - " # ------------------------------- \n", - " plt.subplot(gs[2*j+1, 1])\n", - "\n", - " senders_subsampled = somatic_spikes_senders[::fraction_active]\n", - " line1 = plt.plot(somatic_spikes_times[::fraction_active], somatic_spikes_senders[::fraction_active], 'o', color=color_soma_spike, lw=0., ms=0.5, zorder=2)\n", - "\n", - " #for k,v in count_indices_ds.items():\n", - " for sender in senders_subsampled:\n", - " idx_sub = np.where(dAP_senders == sender)\n", - " line2 = plt.plot(dAP_times[idx_sub], dAP_senders[idx_sub], color=color_dendrite_spike, lw=1., zorder=1)\n", - "\n", - " plt.xlim(-delta_time, xmax)\n", - " plt.ylim(-10, num_neurons+10)\n", - "\n", - " ticks_pos = shifted_subpopulation_indices * params['n_E']\n", - " ticks_label = chars_per_subpopulation\n", - " subpopulation_indices_background = np.arange(params['M'])*params['n_E']\n", - "\n", - " plt.yticks(ticks_pos, ticks_label)\n", - " plt.tick_params(labelbottom=False)\n", - "\n", - " for i in range(params['M'])[::2]:\n", - " plt.axhspan(subpopulation_indices_background[i], subpopulation_indices_background[i]+params['n_E'], facecolor=fc_bg, zorder=0)\n", - "\n", - " if j == 2:\n", - " plt.xlabel('time (ms)')\n", - " plt.tick_params(labelbottom=True)\n", - "\n", - " if j == 0:\n", - " labels = ['somatic spikes', 'dendritic AP']\n", - " plt.legend((line1[0], line2[0]), labels)\n", - "\n", - "plt.savefig('/tmp/%s.png' % (master_file_name))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Figure 1" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [], - "source": [ - "p = para.ParameterSpace({})\n", - "\n", - "DELAY = 0.1\n", - "\n", - "p['dt'] = 0.1 # simulation time resolution (ms)\n", - "p['print_simulation_progress'] = False # print the time progress.\n", - "\n", - "# neuron parameters of the excitatory neurons\n", - "p['soma_model'] = neuron_model_name\n", - "p['soma_params'] = {}\n", - "p['soma_params']['C_m'] = 250. # membrane capacitance (pF)\n", - "p['soma_params']['E_L'] = 0. # resting membrane potential (mV)\n", - "# p['soma_params']['I_e'] = 0. # external DC currents (pA)\n", - "p['soma_params']['V_m'] = 0. # initial potential (mV)\n", - "p['soma_params']['V_reset'] = 0. # reset potential (mV)\n", - "p['soma_params']['V_th'] = 20. # spike threshold (mV)\n", - "p['soma_params']['t_ref'] = 10. # refractory period\n", - "p['soma_params']['tau_m'] = 10. # membrane time constant (ms)\n", - "p['soma_params']['tau_syn1'] = 2. # synaptic time constant: external input (receptor 1)\n", - "p['soma_params']['tau_syn2'] = 5. # synaptic time constant: dendrtic input (receptor 2)\n", - "p['soma_params']['tau_syn3'] = 1. # synaptic time constant: inhibitory input (receptor 3)\n", - "# dendritic action potential\n", - "p['soma_params']['I_p'] = 200. # current clamp value for I_dAP during a dendritic action potenti\n", - "p['soma_params']['tau_dAP'] = 60. # time window over which the dendritic current clamp is active\n", - "p['soma_params']['theta_dAP'] = 59. # current threshold for a dendritic action potential\n", - "\n", - "p['soma_params']['I_dend_incr'] = 2.71 / 10e-3\n", - "\n", - "\n", - "p['fixed_somatic_delay'] = 2 # this is an approximate time of how long it takes the soma to fire\n", - " # upon receiving an external stimulus \n", - "\n", - "# neuron parameters for the inhibitory neuron\n", - "p['inhibit_model'] = 'iaf_psc_exp'\n", - "p['inhibit_params'] = {}\n", - "p['inhibit_params']['C_m'] = 250. # membrane capacitance (pF)\n", - "p['inhibit_params']['E_L'] = 0. # resting membrane potential (mV)\n", - "p['inhibit_params']['I_e'] = 0. # external DC currents (pA)\n", - "p['inhibit_params']['V_m'] = 0. # initial potential (mV)\n", - "p['inhibit_params']['V_reset'] = 0. # reset potential (mV)\n", - "p['inhibit_params']['V_th'] = 15. # spike threshold (mV)\n", - "p['inhibit_params']['t_ref'] = 2.0 # refractory period\n", - "p['inhibit_params']['tau_m'] = 5. # membrane time constant (ms)\n", - "p['inhibit_params']['tau_syn_ex'] = .5 # synaptic time constant of an excitatory input (ms) \n", - "p['inhibit_params']['tau_syn_in'] = 1.65 # synaptic time constant of an inhibitory input (ms)\n", - "\n", - "# synaptic parameters\n", - "p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", - "p['J_IE_psp'] = 1.2 * p['inhibit_params']['V_th'] # inhibitory PSP as a response to an input from E neuron\n", - "p['J_EI_psp'] = -2 * p['soma_params']['V_th'] # somatic PSP as a response to an inhibitory input\n", - "p['convergence'] = 5\n", - "p['pattern_size'] = 20\n", - "\n", - "# parameters for ee synapses (stdsp)\n", - "p['syn_dict_ee'] = {}\n", - "p['permanence_min'] = 0.\n", - "p['permanence_max'] = 8.\n", - "p['calibration'] = 40.\n", - "p['syn_dict_ee']['weight'] = 0.01 # synaptic weight\n", - "p['syn_dict_ee']['synapse_model'] = synapse_model_name # synapse model\n", - "p['syn_dict_ee']['permanence_threshold'] = 10. # synapse maturity threshold\n", - "p['syn_dict_ee']['tau_pre_trace'] = 20. # plasticity time constant (potentiation)\n", - "p['syn_dict_ee']['delay'] = 2. # dendritic delay \n", - "p['syn_dict_ee']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", - "p['syn_dict_ee']['lambda_plus'] = 0.05 #0.1 # potentiation rate\n", - "p['syn_dict_ee']['zt'] = 1. # target dAP trace [pA]\n", - "p['syn_dict_ee']['lambda_h'] = 0.01 # homeostasis rate\n", - "p['syn_dict_ee']['Wmax'] = 1.1 * p['soma_params']['theta_dAP'] / p['convergence'] # Maximum allowed weight\n", - "p['syn_dict_ee']['permanence_max'] = 20. # Maximum allowed permanence\n", - "p['syn_dict_ee']['permanence_min'] = 1. # Minimum allowed permanence\n", - "p['syn_dict_ee']['lambda_minus'] = 0.004\n", - "\n", - "# parameters of EX synapses (external to soma of E neurons)\n", - "p['conn_dict_ex'] = {}\n", - "p['syn_dict_ex'] = {}\n", - "p['syn_dict_ex']['receptor_type'] = 1 # receptor corresponding to external input\n", - "p['syn_dict_ex']['delay'] = DELAY # dendritic delay\n", - "p['conn_dict_ex']['rule'] = 'all_to_all' # connection rule\n", - "\n", - "# parameters of EdX synapses (external to dendrite of E neurons) \n", - "p['conn_dict_edx'] = {}\n", - "p['syn_dict_edx'] = {}\n", - "p['syn_dict_edx']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", - "p['syn_dict_edx']['delay'] = DELAY # dendritic delay\n", - "p['syn_dict_edx']['weight'] = 10.4 * p['soma_params']['theta_dAP']\n", - "p['conn_dict_edx']['rule'] = 'fixed_outdegree' # connection rule\n", - "p['conn_dict_edx']['outdegree'] = p['pattern_size'] + 1 # outdegree\n", - "\n", - "# parameters for IE synapses \n", - "p['syn_dict_ie'] = {}\n", - "p['conn_dict_ie'] = {}\n", - "p['syn_dict_ie']['synapse_model'] = 'static_synapse' # synapse model\n", - "p['syn_dict_ie']['delay'] = DELAY # dendritic delay\n", - "p['conn_dict_ie']['rule'] = 'fixed_indegree' # connection rule\n", - "p['conn_dict_ie']['indegree'] = 5 # indegree \n", - "\n", - "# parameters for EI synapses\n", - "p['syn_dict_ei'] = {}\n", - "p['conn_dict_ei'] = {}\n", - "p['syn_dict_ei']['synapse_model'] = 'static_synapse' # synapse model\n", - "p['syn_dict_ei']['delay'] = DELAY # dendritic delay\n", - "p['syn_dict_ei']['receptor_type'] = 3 # receptor corresponding to the inhibitory input \n", - "p['conn_dict_ei']['rule'] = 'fixed_indegree' # connection rule\n", - "p['conn_dict_ei']['indegree'] = 20 # indegree" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Running simulations\n", - "Running experiment type: ff\n", "\n", - "Feb 29 08:10:45 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml [Warning]: \n", - " Simulation resolution has changed. Internal state and parameters of the \n", - " model have been reset!\n", - "\n", - "Feb 29 08:10:45 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml [Warning]: \n", + " simulate\n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml [Warning]: \n", " Simulation resolution has changed. Internal state and parameters of the \n", " model have been reset!\n", "\n", - "Feb 29 08:10:45 SimulationManager::set_status [Info]: \n", - " Temporal resolution changed from 0.1 to 0.1 ms.\n", - "### simulating network\n", - "\n", - "Feb 29 08:10:45 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "Running experiment type: dendrite\n", - "\n", - "Feb 29 08:10:45 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 100\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:45 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:45 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml [Warning]: \n", + "Mar 11 03:52:36 iaf_psc_exp_nonlineardendrite57f0cdcdcfc04768b800477e95499ba4_neuron_nestml__with_stdsp57f0cdcdcfc04768b800477e95499ba4_synapse_nestml [Warning]: \n", " Simulation resolution has changed. Internal state and parameters of the \n", " model have been reset!\n", "\n", - "Feb 29 08:10:45 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml [Warning]: \n", - " Simulation resolution has changed. Internal state and parameters of the \n", - " model have been reset!\n", + "Mar 11 03:52:36 SimulationManager::set_status [Info]: \n", + " Temporal resolution changed.\n", "\n", - "Feb 29 08:10:45 SimulationManager::set_status [Info]: \n", - " Temporal resolution changed from 0.1 to 0.1 ms.\n", - "### simulating network\n", "\n", - "Feb 29 08:10:45 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", + "Mar 11 03:52:36 NodeManager::prepare_nodes [Info]: \n", + " Preparing 66 nodes for simulation.\n", "\n", - "Feb 29 08:10:45 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 100\n", - " Number of OpenMP threads: 1\n", + "Mar 11 03:52:36 SimulationManager::start_updating_ [Info]: \n", + " Number of local nodes: 66\n", + " Simulation time (ms): 10\n", + " Number of OpenMP threads: 8\n", " Not using MPI\n", "\n", - "Feb 29 08:10:45 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "Running experiment type: ff_dendrite\n", - "\n", - "Feb 29 08:10:45 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml [Warning]: \n", - " Simulation resolution has changed. Internal state and parameters of the \n", - " model have been reset!\n", - "\n", - "Feb 29 08:10:45 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml [Warning]: \n", - " Simulation resolution has changed. Internal state and parameters of the \n", - " model have been reset!\n", - "### simulating network\n", + "[ 100% ] Model time: 10.0 ms, Real-time factor: 0.0887\n", "\n", - "Feb 29 08:10:45 SimulationManager::set_status [Info]: \n", - " Temporal resolution changed from 0.1 to 0.1 ms.\n", + "Mar 11 03:52:36 SimulationManager::run [Info]: \n", + " Simulation finished.\n", "\n", - "Feb 29 08:10:45 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", + "Mar 11 03:52:36 NodeManager::prepare_nodes [Info]: \n", + " Preparing 66 nodes for simulation.\n", "\n", - "Feb 29 08:10:45 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 100\n", - " Number of OpenMP threads: 1\n", + "Mar 11 03:52:36 SimulationManager::start_updating_ [Info]: \n", + " Number of local nodes: 66\n", + " Simulation time (ms): 200\n", + " Number of OpenMP threads: 8\n", " Not using MPI\n", "\n", - "Feb 29 08:10:45 SimulationManager::run [Info]: \n", - " Simulation finished.\n" + "[ 54% ] Model time: 117.0 ms, Real-time factor: 0.0845" + ] + }, + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [9], line 131\u001b[0m\n\u001b[1;32m 127\u001b[0m data[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mpermanences_cs\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m permanences_cs\n\u001b[1;32m 129\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m data\n\u001b[0;32m--> 131\u001b[0m data \u001b[38;5;241m=\u001b[39m \u001b[43msimulate_foobar\u001b[49m\u001b[43m(\u001b[49m\u001b[43mparams\u001b[49m\u001b[43m)\u001b[49m\n", + "Cell \u001b[0;32mIn [9], line 98\u001b[0m, in \u001b[0;36msimulate_foobar\u001b[0;34m(params)\u001b[0m\n\u001b[1;32m 96\u001b[0m \u001b[38;5;66;03m# simulate the network\u001b[39;00m\n\u001b[1;32m 97\u001b[0m sim_time \u001b[38;5;241m=\u001b[39m times_neuron_1[i] \u001b[38;5;241m-\u001b[39m last_sim_time \n\u001b[0;32m---> 98\u001b[0m \u001b[43mnest\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mSimulate\u001b[49m\u001b[43m(\u001b[49m\u001b[43msim_time\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 99\u001b[0m last_sim_time \u001b[38;5;241m=\u001b[39m times_neuron_1[i]\n\u001b[1;32m 101\u001b[0m w_after \u001b[38;5;241m=\u001b[39m synColl\u001b[38;5;241m.\u001b[39mweight\n", + "File \u001b[0;32m~/julich/nest-simulator-install/lib/python3.11/site-packages/nest/ll_api.py:228\u001b[0m, in \u001b[0;36mstack_checker..stack_checker_func\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 225\u001b[0m \u001b[38;5;129m@functools\u001b[39m\u001b[38;5;241m.\u001b[39mwraps(f)\n\u001b[1;32m 226\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mstack_checker_func\u001b[39m(\u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs):\n\u001b[1;32m 227\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m get_debug():\n\u001b[0;32m--> 228\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mf\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 229\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 230\u001b[0m sr(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mcount\u001b[39m\u001b[38;5;124m'\u001b[39m)\n", + "File \u001b[0;32m~/julich/nest-simulator-install/lib/python3.11/site-packages/nest/lib/hl_api_simulation.py:63\u001b[0m, in \u001b[0;36mSimulate\u001b[0;34m(t)\u001b[0m\n\u001b[1;32m 49\u001b[0m \u001b[38;5;250m\u001b[39m\u001b[38;5;124;03m\"\"\"Simulate the network for `t` milliseconds.\u001b[39;00m\n\u001b[1;32m 50\u001b[0m \n\u001b[1;32m 51\u001b[0m \u001b[38;5;124;03mParameters\u001b[39;00m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 59\u001b[0m \n\u001b[1;32m 60\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m 62\u001b[0m sps(\u001b[38;5;28mfloat\u001b[39m(t))\n\u001b[0;32m---> 63\u001b[0m \u001b[43msr\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mms Simulate\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/julich/nest-simulator-install/lib/python3.11/site-packages/nest/ll_api.py:106\u001b[0m, in \u001b[0;36mcatching_sli_run\u001b[0;34m(cmd)\u001b[0m\n\u001b[1;32m 103\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mdecode\u001b[39m(s):\n\u001b[1;32m 104\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m s\u001b[38;5;241m.\u001b[39mdecode(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mutf-8\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[0;32m--> 106\u001b[0m \u001b[43mengine\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrun\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m{\u001b[39;49m\u001b[38;5;132;43;01m%s\u001b[39;49;00m\u001b[38;5;124;43m} runprotected\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;241;43m%\u001b[39;49m\u001b[43m \u001b[49m\u001b[43mdecode\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcmd\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 107\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m sli_pop():\n\u001b[1;32m 108\u001b[0m errorname \u001b[38;5;241m=\u001b[39m sli_pop()\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "> \u001b[0;32m/home/charl/julich/nest-simulator-install/lib/python3.11/site-packages/nest/ll_api.py\u001b[0m(106)\u001b[0;36mcatching_sli_run\u001b[0;34m()\u001b[0m\n", + "\u001b[0;32m 104 \u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0ms\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdecode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'utf-8'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 105 \u001b[0;31m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m--> 106 \u001b[0;31m \u001b[0mengine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'{%s} runprotected'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0mdecode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcmd\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 107 \u001b[0;31m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0msli_pop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 108 \u001b[0;31m \u001b[0merrorname\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msli_pop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\n" + ] + }, + { + "name": "stdin", + "output_type": "stream", + "text": [ + "ipdb> q\n" ] } ], "source": [ - "print(\"Running simulations\")\n", - "data = {}\n", - "for i, name in enumerate(['ff', 'dendrite', 'ff_dendrite']): \n", - " print(\"Running experiment type: \" + name)\n", - " # init kernel\n", - " seed = 1\n", + "def simulate_foobar(params):\n", + " \n", " nest.ResetKernel()\n", " nest.set_verbosity(\"M_ALL\")\n", " nest.SetKernelStatus({\n", " 'resolution': params['dt'],\n", " 'print_time': params['print_simulation_progress'],\n", - " #'local_num_threads': n_threads\n", - " 'rng_seed': seed\n", + " 'local_num_threads': n_threads,\n", + " 'rng_seed': params['seed']\n", " })\n", + " \n", + " neuron_1 = nest.Create(params['soma_model'], params=params['soma_params'])\n", + " neuron_2 = nest.Create(params['soma_model'], params=params['soma_params'])\n", + " \n", + " # connect two neurons\n", + " nest.Connect(neuron_1, neuron_2, syn_spec=params['syn_dict_ee'])\n", + " \n", + " # creation of spike generator\n", + " time_neuron_1 = 10.\n", + " time_neuron_2 = time_neuron_1 + params['DeltaT']\n", + " \n", + " training_steps = 120\n", + " between_exc = 5*params['DeltaT']\n", + " \n", + " times_neuron_1 = [time_neuron_1+i*between_exc for i in range(training_steps)]\n", + " times_neuron_2 = [time_neuron_2+i*between_exc for i in range(training_steps)]#[:10]\n", + " \n", + " # create the spike generators \n", + " # disable spike generator for the interval 'dis', to see the affect of stpd\n", + " dis = 20\n", + " spike_generator_1 = nest.Create('spike_generator', params={'spike_times': times_neuron_1})\n", + " spike_generator_2 = nest.Create('spike_generator', params={'spike_times': times_neuron_2})\n", + " \n", + " # connect the spike generator \n", + " \n", + " params['R_m_soma'] = params['soma_params']['tau_m'] / params['soma_params']['C_m']\n", + " params['syn_dict_ex']['weight'] = psp_max_2_psc_max(params['J_EX_psp'], \n", + " params['soma_params']['tau_m'], \n", + " params['soma_params']['tau_syn1'], \n", + " params['R_m_soma'])\n", + " \n", + " syn_dict_ff = {'receptor_type': 1, 'weight': params['syn_dict_ex']['weight'], 'delay': params['syn_dict_ex']['delay']}\n", + " nest.Connect(spike_generator_1, neuron_1, syn_spec=syn_dict_ff)\n", + " nest.Connect(spike_generator_2, neuron_2, syn_spec=syn_dict_ff)\n", + " \n", + " # record voltage neuron 1, neuron 2\n", + " dap_mm_1 = nest.Create('multimeter', {\"record_from\": [\"dAP_trace\"]})\n", + " nest.Connect(dap_mm_1, neuron_1)\n", + " \n", + " dap_mm_2 = nest.Create('multimeter', {\"record_from\": [\"dAP_trace\"]})\n", + " nest.Connect(dap_mm_2, neuron_2)\n", + " \n", + " vm_1 = nest.Create('voltmeter')\n", + " vm_2 = nest.Create('voltmeter')\n", + " nest.Connect(vm_1, neuron_1)\n", + " nest.Connect(vm_2, neuron_2)\n", + " \n", + " \n", + " sd_1 = nest.Create('spike_recorder')\n", + " nest.Connect(neuron_1, sd_1)\n", + " \n", + " sd_2 = nest.Create('spike_recorder')\n", + " nest.Connect(neuron_2, sd_2)\n", + " \n", + " data = {}\n", + " \n", + " synColl = nest.GetConnections(synapse_model=synapse_model_name)\n", + " assert len(synColl) == 1\n", + " \n", + " print('\\n simulate')\n", + " zs = [0.,1.,2.]\n", + " weights_cs = []\n", + " permanences_cs = []\n", + " \n", + " for z in zs:\n", + " \n", + " weights = []\n", + " permanences = []\n", + " last_sim_time = 0\n", + " \n", + " spike_generator_1.origin = nest.GetKernelStatus('biological_time')\n", + " spike_generator_2.origin = nest.GetKernelStatus('biological_time')\n", + " \n", + " # connect two neurons\n", + " synColl.set({'permanence': 1.}) \n", + " \n", + " for i in range(training_steps):\n", + " \n", + " # change toward using the weight recorder, example:\n", + " #wr = nest.Create('weight_recorder')\n", + " #nest.CopyModel('stdp_synapse', 'stdp_synapse_rec', {'weight_recorder': wr})\n", + " \n", + " nest.SetStatus(neuron_1, {'dAP_trace':z})\n", + " nest.SetStatus(neuron_2, {'dAP_trace':z})\n", + " \n", + " # simulate the network\n", + " sim_time = times_neuron_1[i] - last_sim_time \n", + " nest.Simulate(sim_time)\n", + " last_sim_time = times_neuron_1[i]\n", + " \n", + " w_after = synColl.weight\n", + " p_after = synColl.permanence\n", + " weights.append(w_after)\n", + " permanences.append(p_after)\n", + " \n", + " \n", + " fig, ax = plt.subplots(figsize=(24,6))\n", + " ax.plot(nest.GetStatus(vm_1)[0]['events'][\"times\"], nest.GetStatus(vm_1)[0]['events'][\"V_m\"], label=\"vm1\")\n", + " max_V_m = np.amax(nest.GetStatus(vm_1)[0]['events'][\"V_m\"])\n", + " ax.scatter(nest.GetStatus(sd_1)[0]['events']['times'], max_V_m * np.ones_like(nest.GetStatus(sd_1)[0]['events']['times']))\n", + " ax.plot(nest.GetStatus(vm_2)[0]['events'][\"times\"], nest.GetStatus(vm_2)[0]['events'][\"V_m\"], label=\"vm2\")\n", + " ax.scatter(nest.GetStatus(sd_2)[0]['events']['times'], max_V_m * np.ones_like(nest.GetStatus(sd_2)[0]['events']['times']))\n", + " ax.legend()\n", + " ax_ = ax.twinx()\n", + " ax_.plot(nest.GetStatus(dap_mm_1)[0]['events'][\"times\"], nest.GetStatus(dap_mm_1)[0]['events'][\"dAP_trace\"], label=\"dAP\")\n", + " ax_.plot(nest.GetStatus(dap_mm_2)[0]['events'][\"times\"], nest.GetStatus(dap_mm_2)[0]['events'][\"dAP_trace\"], label=\"dAP\")\n", + " \n", + " fig.savefig(\"/tmp/foo\" + str(z) + \".png\")\n", + " \n", + " weights_cs.append(weights)\n", + " permanences_cs.append(permanences)\n", + " \n", + " # store postprocessed\n", + " params['zs'] = zs\n", "\n", - " data[name] = {}\n", - "\n", - " #############################\n", - " # create and connect neurons\n", - " # ---------------------------\n", - "\n", - " # create excitatory population\n", - " exc_neuron = nest.Create(params['soma_model'], params=params['soma_params'])\n", - "\n", - " # create inhibitory population\n", - " inh_neuron = nest.Create(params['inhibit_model'], params=params['inhibit_params'])\n", - "\n", - " # connect inhibition\n", - " nest.Connect(exc_neuron, inh_neuron, syn_spec=params['syn_dict_ie'])\n", - " nest.Connect(inh_neuron, exc_neuron, syn_spec=params['syn_dict_ei'])\n", - "\n", - " ######################\n", - " # Input stream/stimuli\n", - " #---------------------\n", - " input_excitation = nest.Create('spike_generator', params={'spike_times':[soma_excitation_time]})\n", - " dendrite_excitation_1 = nest.Create('spike_generator', params={'spike_times':[dendrite_excitation_time]})\n", - " #dendrite_excitation_2 = nest.Create('spike_generator', params={'spike_times':[7.]})\n", - " inhibition_excitation = nest.Create('spike_generator', params={'spike_times':[10.]})\n", - "\n", - " # excitation soma feedforward\n", - " if name == 'ff' or name == 'ff_dendrite':\n", - " nest.Connect(input_excitation, exc_neuron, syn_spec={'receptor_type': 1, \n", - " 'weight': params['syn_dict_ex']['weight'], \n", - " 'delay': params['syn_dict_ex']['delay']})\n", - "\n", - " # excitation dendrite \n", - " if name == 'dendrite' or name == 'ff_dendrite':\n", - " nest.Connect(dendrite_excitation_1, exc_neuron, syn_spec={'receptor_type': 2, \n", - " 'weight': params['syn_dict_edx']['weight'], \n", - " 'delay': params['syn_dict_edx']['delay']})\n", - "\n", - " # record voltage inhibitory neuron \n", - " vm_inh = nest.Create('voltmeter', params={'record_from': ['V_m'], 'interval': 0.1})\n", - " nest.Connect(vm_inh, inh_neuron)\n", - "\n", - " # record voltage soma\n", - " vm_exc = nest.Create('voltmeter', params={'record_from': ['V_m'], 'interval': 0.1})\n", - " nest.Connect(vm_exc, exc_neuron)\n", - "\n", - " active_dendrite_exc_mm = nest.Create('multimeter', params={'record_from': ['active_dendrite_readout', 'I_dend'], 'interval': 0.1})\n", - " nest.Connect(active_dendrite_exc_mm, exc_neuron)\n", - "\n", - " # record spikes\n", - " sd = nest.Create('spike_recorder')\n", - " nest.Connect(exc_neuron, sd)\n", - "\n", - " # record inh spikes\n", - " sd_inh = nest.Create('spike_recorder')\n", - " nest.Connect(inh_neuron, sd_inh)\n", + " data[\"weights_cs\"] = weights_cs\n", + " data[\"permanences_cs\"] = permanences_cs\n", + " \n", + " return data\n", "\n", - " print('### simulating network')\n", - " #nest.Simulate(100.)\n", - " nest.Prepare()\n", - " nest.Run(100.)\n", - "\n", - " voltage_soma = nest.GetStatus(vm_exc)[0]['events'] \n", - " active_dendrite = nest.GetStatus(active_dendrite_exc_mm)[0]['events']\n", - " voltage_inhibit = nest.GetStatus(vm_inh)[0]['events'] \n", - " spikes_soma = nest.GetStatus(sd)[0]['events'] \n", - " spikes_inh = nest.GetStatus(sd_inh)[0]['events'] \n", - "\n", - " data[name]['exc'] = voltage_soma \n", - " data[name]['exc_active_dendrite'] = active_dendrite \n", - " data[name]['inh'] = voltage_inhibit\n", - " data[name]['spikes_exc'] = spikes_soma\n", - " data[name]['spikes_inh'] = spikes_inh" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Plotting" + "data = simulate_foobar(params)" ] }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 5, "metadata": {}, "outputs": [ { - "name": "stderr", + "ename": "NameError", + "evalue": "name 'data' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [5], line 107\u001b[0m\n\u001b[1;32m 103\u001b[0m \u001b[38;5;66;03m#print(\"save %s/%s.pdf\" % (path, fname))\u001b[39;00m\n\u001b[1;32m 104\u001b[0m \u001b[38;5;66;03m#plt.savefig(\"/tmp/%s.pdf\" % fname)\u001b[39;00m\n\u001b[1;32m 105\u001b[0m plt\u001b[38;5;241m.\u001b[39msavefig(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m/tmp/\u001b[39m\u001b[38;5;132;01m%s\u001b[39;00m\u001b[38;5;124m.png\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m%\u001b[39m fname)\n\u001b[0;32m--> 107\u001b[0m plot_foobar(\u001b[43mdata\u001b[49m, params)\n", + "\u001b[0;31mNameError\u001b[0m: name 'data' is not defined" + ] + }, + { + "name": "stdout", "output_type": "stream", "text": [ - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=10.0.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=10.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Bold.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Bold.ttf') with score of 0.050000.\n" + "> \u001b[0;32m/tmp/ipykernel_829587/2547051991.py\u001b[0m(107)\u001b[0;36m\u001b[0;34m()\u001b[0m\n", + "\u001b[0;32m 103 \u001b[0;31m \u001b[0;31m#print(\"save %s/%s.pdf\" % (path, fname))\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 104 \u001b[0;31m \u001b[0;31m#plt.savefig(\"/tmp/%s.pdf\" % fname)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 105 \u001b[0;31m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msavefig\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"/tmp/%s.png\"\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0mfname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 106 \u001b[0;31m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m--> 107 \u001b[0;31m\u001b[0mplot_foobar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mparams\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\n" ] }, { - "data": { - "image/png": "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q1c5ffo0Fy9etMg1LI3q2VTYFZb8Vmer2JLzsWPHjH/Uyq4cVJab9WyaO2bTlnythTRnab5gGefs7GwcHR3p0KFDhUNa9OTixYvi2tmSzkVFRaSlpZGdnW2X/6+qZ1NhV9x22216h2B1bMk5LS3N+PqOO+6osM6t9mzakq+1kOYszRcs41xSUoKzs7PNJZpQ+gChNCzpbGhnWxsuYS4q2VTYFevXr9c7BKtjS85lk80OHTpUWOdWx2zakq+1kOYszRcs52zu75W1yc7O1jsEq2NpZ1tta3NQyabCrpg8ebLeIVgdW3I2JJsNGjSgefPmFda5Wc+muWPKbMnXWkhzluYL8pxv9vlwM15++WXjMrizZ8826xhz61mL6jpLQiWbCrsiODhY7xCsji05p6amAtC+ffubfssu27NZWFhY7WvYkq+1kOYszRfkOaenp1er/j//+U+6dOkCWC7ZLH+3pbapytnS17dlVLKpsCtWrVqldwhWx5acDT2bNxuvCaY9m1evXjWWm9uzaUu+1kKaszRfqNvOX331FQEBAfj7+/OXv/yF4uJisrKy6N69O1euXOHy5ct07dqVAwcOUFxczBtvvIGfnx/du3fnk08+AUqn2dmzZw/Tpk2joKAAf39/XnjhBQCGDx9Oz5496dq1K5999hlAhfXmzZtnXBd8/vz5QGkCeNddd/Hiiy/i5+dHeHg4kyZNMsb++eefVzg/ZsOGDXn77be5++67ue+++zhz5gwA586d46mnnqJXr1706tWLbdu2ATBz5kxiYmKMx/v5+ZGenn7D9U+cOMGUKVPw8/OjW7dufPPNNwBs2rSJ/v378/TTT9OpUydeeOEFm5th4FawvVHFCkUlDB061K5WaagNbMW5uLjYOO3RzcZrgmnPZk2STVvxtSbSnKX5gnWcJ02aRFJSUq2f19/f35i8lefQoUN88803bNu2DRcXF8aPH8+KFSu4//77efLJJ5k+fToFBQX83//9H35+fixatIj09HSSkpJwdna+YZ3t999/nwULFph4REdH07hxYwoKCujVqxdPPfXUDfX27t3L0qVL2bVrF5qm0bt3b/r164e3tzdHjhxh+fLl3HfffeTl5XH33XcTERGBi4sLS5cuNVn/28Dly5e57777+Pvf/87UqVP5/PPPmT59Oq+99hqhoaE89NBDZGRkMGjQIOPcw+fP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9l69ejXDhw+3+TxA9WzaCT4+PnTt2tVkq+p2Zl3E0CMhCVtwLjtkw9wxm8XFxSbl5n6vtQVfayPNWZovyHM29OBJQqKzuahkU2FXLFu2TO8QrI4tOFcn2Sz7NHpNsAVfayPNWZov1G3nBx544Iay8gs/tGvXrsK1w3/44Qfef/99AIKDg/nuu+9uqLNnzx7jsLFNmzaxffv2Woi69qlssQvpqGRTYVd89NFHeodgdWzB2ZBsuri4GMfN3oxb7dm0BV9rI81Zmi/UbeeKkr8zZ86YdeyTTz7JtGnTKq1z7733GtdWr0myaa1lH2/mXJeWnawpKtlU2BWDBg3SOwSrYwvOhmSzdevWxmTyZtxs6iNzk01b8LU20pyl+ULddm7YsCFQmgj279+fp59+mv79+/PCCy+Y/N5/8skn3HPPPXTr1s24POOyZcuYMGGCsc6GDRu499576dixI2vXrjWed8iQIaSnp7N48WI+/vhj/P392bJlC+np6QwYMIDu3bvzyCOPGD+rgoODCQkJoXfv3kydOpU777zT+NxDSUkJd9xxxw3PQcycOZMxY8bQv39/2rdvb0xwAb766isCAgLw9/fnL3/5i/HLtMEdSp+jCA4OrvD6SUlJ3HfffXTv3p0RI0YY11Hv378/b775JgEBAXTs2JEtW7bceoPYIGrqI4VdkZmZqXcIVscWnA1PcbZu3brKuje7jW5usmkLvtZGmrM0X7COc1xcHKdPn6718/r6+vL444+bVXffvn2kpKTg5ubGkCFD2LZtGw899BBQuvpOYmIiCxcuZO7cufzzn/+84fj09HQSEhJIS0vj4YcfJjU11bivXbt2hISE0LBhQ9544w2g9En9oKAggoKCiI6ONj40C6VPem/fvh0nJyc8PT1ZsWIFkyZNYsOGDdx99900a9bshusfPnyYn3/+mdzcXO666y7++te/kpqayjfffMO2bdtwcXFh/PjxrFixghdffNHk2PJfsMtev3v37nzyySf069ePd955h1mzZhnXsi8qKiIhIYEff/yRWbNmsWHDBrP+r+0JlWwq7ArDt0FJ2IKzuRO6w81vo5uLLfhaG2nO0nzBOs6nT582TtmjFwEBAbRq1Yrz58/j7+9Penq6MdkcOXIkAD179uT777+v8PjAwEAcHR258847ad++vbEH9Gbs2LHDeK7Ro0czdepU475n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X2+y+cbGxrKIiAhWXFzMlEol++STT5idnR0rKytjOTk5zNbWln311VessbGRHT9+nEmlUrZnzx6uw+YcNZs85O/vz1avXq15rFAomIuLC9u0aROHUbW/Y8eOPdBsxsfHM1dXV61pq1evZgEBAVyE2O7UajU7ePAgCwoKYoWFhezDDz9kn3zyCQsODmYlJSWa+RISEpitrS2rr6/nMNr20dDQwD777DMGgBUXFzPGTHc73759m/n6+rLc3FwGgP3++++MMcbi4uJYWFgYq6ysZOnp6ezWrVts4cKF7N1339U0oMXFxez8+fNs/fr17Ndff9U06x3Vw5pNU92+ERER7J133mnxOVPN+V7dunVj7733HmPMdPPt1auX1u/fmpoaBoCdOXNG8zm+18KFC9mIESOMHWaHQ7vReaaqqgo5OTno37+/ZppYLEbv3r2RnJzMYWTGkZKSgt69e2vd+SY8PBxZWVmorq7mMLLH19TUhG+//RanT5/GuHHj4O7ujvfeew9isRhKpRIuLi6aecPDwyGXy5GZmclhxI9n//79cHBwgLW1Nd555x28/fbbmrtvmOJ2Zoxh1qxZeP/999GpUyet51JSUtC/f3/IZDIEBwfD19cX4eHh+P777zF//nzMnj1bU5uSkhKcPXsW6enpKCgowKpVq/D999/j/PnzAACVSqXZbcu15ORkuLq6ws/PDy+88AKys7MBmOb2lcvlOHXqFMzNzdG/f384Ozujb9++2L17NwDTzPleR48eRWZmJubMmQPAdPP961//ioSEBBQUFEChUGDNmjUIDAxEr169NJ/je4WHhwvid/Oj0AlCPNP8IXVwcNCa7ujoyOsPsK6qq6tbzL35OalUykFUbVddXY3z58/D3NwcgwYNQkNDA86ePYvXXnsNwN2TUB6VM18988wzqKysRHl5OTZu3AgfHx/Nc6a2nQFg3bp1YIxptu29qqur0bVrV61pzZ9pR0dHTe59+/ZFnz59UFtbC4lEgtraWri7u+POnTvIyMhA37598fnnn2uuAfrss8/C3Nwc1dXVcHJyMupZ8M8++yxefvlldOrUCfn5+XjvvfcwcuRIXLp0ySS3b3l5OdRqNTZu3IhffvkFvXv3xk8//YTnn38eiYmJJpnzvdauXYvRo0ejc+fOAEzzMwwAQ4YMwQ8//AAvLy+Ym5vDyckJe/fuhY2N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PXo09uzZ06aadVQymQy9evVC//79IRKJMHbsWMydOxeTJ09GaGgo6uvrkZWVhVOnTuHgwYNQqVT44YcfsGnTJpw4cQJqtZrrFAjpuBghJkStVrPy8nKmVqvZL7/8wuLi4tiaNWtYYWEh16EREzV8+HD297//XWvahg0bmLe3t+bxjBkzmKWlJdu5cydTKpVs7969TCQSscjISJaamsqUSiWbP38+69q1q9YyfH192blz55hKpWJJSUnM3t6eJSUltRiHXC5nANiZM2ceiE8mk7HExESmUqnY6tWrma2tLRszZgzLzs5mjY2NLDY2lkVFRTHGGKurq2MWFhbsyJEjjDHG6uvrNd8327lzJ3N2dm570XhKpVKx4uJiVlNTw9RqNdu6dStbuXIlW758OaupqWG//vor+89//sM2bdrECgsLmVqtZnV1dUytVnMdOiGcot3oxGTcvn0bv/32GwoKCjBx4kQMHz4cvXr1go+PD51tSjgXERGBZ599FgAwYcIEyGQyREVFaXblTp8+HV988QWqqqogk8mwatUq/P3vf0e/fv00r58yZQri4+NbPJmtoqICAFo8uWXSpEkYNmwYgLujrAsXLsRLL70Ef39/AMALL7yAV155RTO/hYUFrly5gl69esHFxQUjRozQWp5MJtOsT0jMzMzg6uqqefz8889DrVZDqVTC0tISfn5+KCgoQEFBAUpLS1FRUYHt27fD2toaAwYMQGRkJEpLS2Fubk6XYSKCQs0m4TW5XI4bN26gW7duSE1NRWlpKfr27YuuXbvC2tqa7vRDOgxPT0+txxKJRGta833Aa2pqIJPJcP36dSxatAh//etfNfMolUpN03g/R0dHAEBVVdVD1928nvun1dTUAABsbW1x4MABrFq1Cv/85z81t41csGCBZv6qqirN+oTOzMwMlpaWAIDg4GAEBwdrnqurq8OAAQOQn58PhUIBpVKJdevWQa1WQyaTYc6cOairq0NxcTE8PT3h4ODAURaEGBY1m4S3zp07h0OHDkGpVGLy5Ml4+umnER0dDbGY3tbEeAx1FQMPDw8sW7YM06dP12l+GxsbBAcHIz09HQMGDHisdQ8dOhRDhw4FYwyJiYkYPXo0goODMWrUKABAWlqaZsSVtE4ikWD06NFa0yZPnoysrCw0NjbC3Nwchw8fxtWrVwHcHfHu0qULkpOT4eTk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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" + "name": "stdin", + "output_type": "stream", + "text": [ + "ipdb> q\n" + ] } ], "source": [ - "def position_excitation_arrows(ax, soma_time, dendrite_time):\n", - "\n", - " arrow_width = 1.8\n", - " arrow_height = 1.8\n", - " y = -2.3\n", - " \n", - " # plot excitation arrows for panel A\n", - " x = soma_time - arrow_width/2 \n", - " pos = [x, y]\n", - " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", - " t1 = plt.Polygon(X, color=color_somatic_input)\n", - " ax[0].add_patch(t1)\n", - "\n", - " # plot excitation arrows for panel B\n", - " x = dendrite_time - arrow_width/2 \n", - " pos = [x, y]\n", - " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", - " t1 = plt.Polygon(X, color=color_dAP_input)\n", - " ax[1].add_patch(t1)\n", - "\n", - " # plot excitation arrows for panel C\n", - " x = dendrite_time - arrow_width/2 \n", - " pos = [x, y]\n", - " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", - " t1 = plt.Polygon(X, color=color_dAP_input)\n", - " ax[2].add_patch(t1)\n", - "\n", - " x = soma_time - arrow_width/2 \n", - " pos = [x, y]\n", - " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]+arrow_height]])\n", - " t1 = plt.Polygon(X, color=color_somatic_input)\n", - " ax[2].add_patch(t1)\n", - "\n", - "\n", - "color_dAP_input = '#8e7c42ff'\n", - "#color_somatic_input = '#0000ffff'\n", - "color_somatic_input = '#4581a7ff'\n", - "color_soma = '#000000ff'\n", - "color_dAP = '#00B4BE' \n", - "color_inhibit = '#808080ff' \n", - "color_hrl = 'black'\n", - "\n", - "#color_somatic_spike = '#ff0000ff'\n", - "color_somatic_spike = color_soma\n", - "color_inh_spike = color_inhibit\n", - "ms_spike = 7\n", - "mew_spike = 1.5\n", - "lw_vtheta = 0.5\n", - "lw_dAP = 1.5\n", - "lw_s = 1.5\n", - "lw_i = 1.5\n", - "\n", - "# plot settings \n", - "fig_size = (6., 5)\n", - "ymin = -4\n", - "ymax = params['soma_params']['V_th'] + 4\n", - "xmin = 0 \n", - "xmax = 85\n", - "label_pos = (-0.18, 1.)\n", - "panel_labels = ['A', 'B', 'C']\n", - "v_th=params['soma_params']['V_th'] \n", - "time_dAP = 10\n", - "soma_excitation_time = 25.\n", - "dendrite_excitation_time = 3.\n", - "\n", - "# set up the figure frame\n", - "fig = plt.figure()\n", - "gs = mpl.gridspec.GridSpec(5, 1, height_ratios=[15,15,15,5,6], bottom=0.1, right=0.95, top=0.93, wspace=0., hspace=0.1)\n", - "left, bottom, width, height = [0.4, 0.1, 0.2, 0.2]\n", - "axes = []\n", - "\n", - "\n", - "\n", - "for i, name in enumerate(['ff', 'dendrite', 'ff_dendrite']):\n", - "\n", - " #ax = fig.add_subplot(gs[i,0])\n", - " ax = plt.subplot(gs[i,0])\n", - " ax.text(label_pos[0], label_pos[1], panel_labels[i], transform=ax.transAxes, horizontalalignment='center', verticalalignment='center', size=10, weight='bold')\n", - " ax.plot(data[name]['exc']['times'], data[name]['exc']['V_m'], lw=lw_s, color=color_soma, zorder=2, label='excitatory neuron') \n", - " \n", - " \n", - " ax.plot(data[name]['exc_active_dendrite']['times'], data[name]['exc_active_dendrite']['active_dendrite_readout'], lw=lw_s, color=color_dAP) \n", - " \n", - " ax_ = ax.twinx()\n", - " ax_.plot(data[name]['exc_active_dendrite']['times'], data[name]['exc_active_dendrite']['I_dend'], lw=lw_s, color=\"red\", label=\"I_dend\") \n", - " ax_.plot((0., np.amax(data[name]['exc_active_dendrite']['times'])), 2*[p['soma_params']['theta_dAP']], c=\"red\", linestyle=':')\n", - " \n", - " ax.plot(data[name]['spikes_exc']['times'], (v_th+2)*np.ones(len(data[name]['spikes_exc']['times'])), '|', c=color_somatic_spike, ms=ms_spike, mew=mew_spike)\n", - " ax.plot(data[name]['spikes_inh']['times'], (v_th+2)*np.ones(len(data[name]['spikes_inh']['times'])), '|', c=color_inh_spike, ms=ms_spike, mew=mew_spike)\n", - " ax.legend()\n", - " \n", - " # add dendritic action potential bar manually\n", - " if name == 'dendrite': \n", - " ax.hlines(v_th+2, time_dAP, time_dAP+params['soma_params']['tau_dAP'], lw=lw_dAP, color=color_dAP)\n", - "\n", - " if name == 'ff_dendrite': \n", - " ax.hlines(v_th+2, time_dAP, data[name]['spikes_exc']['times'][0], lw=lw_dAP, color=color_dAP)\n", - "\n", - " # clamp voltage if doesn't reach the firing threshold\n", - " if name == 'ff' or name == 'ff_dendrite': \n", - " max_volt = max(data[name]['inh']['V_m']) \n", - " max_volt_ind = np.where(data[name]['inh']['V_m']==max_volt)[0]\n", - " data[name]['inh']['V_m'][max_volt_ind] = 20\n", - "\n", - " ax.plot(data[name]['inh']['times'], data[name]['inh']['V_m'], lw=lw_i, color=color_inhibit, zorder=1, label='inhibitory neuron') \n", - " ax.set_ylim([ymin, ymax])\n", - " ax.set_xlim([xmin, xmax])\n", - " ax.hlines(v_th, xmin, xmax, lw=lw_vtheta, color=color_hrl, linestyle='--')\n", - "\n", - " axes.append(ax)\n", - "\n", - "axes[1].set_ylabel('membrane potential (mV)')\n", - "\n", - "# set position of arrows\n", - "position_excitation_arrows(axes, soma_excitation_time, dendrite_excitation_time)\n", - "\n", - "axes[0].legend(loc='center right')\n", - "axes[0].set_yticklabels([])\n", - "axes[0].set_xticklabels([])\n", - "axes[1].set_xticklabels([])\n", - "axes[2].set_yticklabels([])\n", - "axes[2].set_xlabel('time (ms)')\n", - "\n", - "########################################\n", - "# plt spikes of A and B\n", - "# --------------------------------------\n", - "ax = fig.add_subplot(gs[i+1,0])\n", - "plt.axis('off')\n", - "\n", - "ax = plt.subplot(gs[i+2,0])\n", - "ax.text(label_pos[0], label_pos[1], 'D', transform=ax.transAxes, horizontalalignment='center', verticalalignment='center', size=10, weight='bold')\n", - "\n", - "xmin_d=25.6\n", - "xmax_d=29\n", - "\n", - "ymin_d=0\n", - "ymax_d=10\n", - "\n", - "name = 'ff'\n", - "ax.plot(data[name]['spikes_exc']['times'], (3*ymax_d/4)*np.ones(len(data[name]['spikes_exc']['times'])), '|', c=color_somatic_spike, ms=ms_spike, mew=mew_spike)\n", - "ax.plot(data[name]['spikes_inh']['times'], (3*ymax_d/4)*np.ones(len(data[name]['spikes_inh']['times'])), '|', c=color_inh_spike, ms=ms_spike, mew=mew_spike)\n", - "\n", - "name = 'ff_dendrite'\n", - "ax.plot(data[name]['spikes_exc']['times'], (ymax_d/4)*np.ones(len(data[name]['spikes_exc']['times'])), '|', c=color_somatic_spike, ms=ms_spike, mew=mew_spike)\n", - "ax.plot(data[name]['spikes_inh']['times'], (ymax_d/4)*np.ones(len(data[name]['spikes_inh']['times'])), '|', c=color_inh_spike, ms=ms_spike, mew=mew_spike)\n", - "ax.hlines(ymax_d/2, xmin, xmax, lw=0.5, color=color_hrl, linestyles='solid')\n", - "\n", - "ax.set_yticklabels([])\n", - "ax.tick_params(left=False)\n", - "ax.set_ylim([ymin_d, ymax_d])\n", - "ax.set_xlim([xmin_d, xmax_d])\n", - "ax.set_xlabel('time (ms)')\n", - "\n", - "ax.text(xmin_d+0.05, (3*ymax_d/4)-1, 'A', size=8, weight='bold')\n", - "ax.text(xmin_d+0.05, (ymax_d/4)-1, 'C', size=8, weight='bold')\n", - "\n", - "############################################################\n", - "# add lines between the subplots showing the zoomed in area\n", - "# ----------------------------------------------------------\n", - "xy_C = (xmin_d,ymin)\n", - "xy_D = (xmin_d,ymax_d)\n", - "con = mpl.patches.ConnectionPatch(xyA=xy_C, xyB=xy_D, coordsA='data', coordsB='data', axesA=axes[-1], axesB=ax, color='grey', linestyle='dotted')\n", - "ax.add_artist(con)\n", - "\n", - "xy_C = (xmax_d,ymin)\n", - "xy_D = (xmax_d,ymax_d)\n", - "con = mpl.patches.ConnectionPatch(xyA=xy_C, xyB=xy_D, coordsA='data', coordsB='data', axesA=axes[-1], axesB=ax, color='grey', linestyle='dotted')\n", - "ax.add_artist(con)\n", - "\n", - "plt.savefig(\"/tmp/sequences1.png\")" + "def plot_foobar(data, params):\n", + " \n", + " # plot recorded data\n", + " # ------------------\n", + " \n", + " # plot settings \n", + " fig_size = (5.2, 2.)\n", + " plt.rcParams['font.size'] = 8\n", + " plt.rcParams['legend.fontsize'] = 6\n", + " plt.rcParams['figure.figsize'] = fig_size\n", + " plt.rcParams['font.family'] = 'sans-serif'\n", + " plt.rcParams['savefig.dpi'] = 300\n", + " plt.rcParams['text.usetex'] = False\n", + "\n", + " ms = 0.5\n", + " alpha = 0.5\n", + " lw_hline = 1.\n", + " \n", + " #################\n", + " # visualize data\n", + " # ---------------\n", + " gs = mpl.gridspec.GridSpec(1, 3, right=0.92, left=0.09, bottom=0.2, top=0.89, wspace=0.2, hspace=0.2)\n", + " \n", + " # data for Ic=0\n", + " # -------------\n", + " ax1 = plt.subplot(gs[0,0])\n", + " \n", + " training_steps = len(data[\"weights_cs\"][0])\n", + " num_pulses = np.arange(training_steps)\n", + " lns1 = ax1.plot(num_pulses, data[\"weights_cs\"][0], '-o', ms=ms, color='black', label=r'$J$')\n", + " \n", + " #plt.ylabel('weight ($\\mu$S)')\n", + " ax1.set_xlim(0, training_steps)\n", + " ax1.set_ylim(-1, params[\"syn_dict_ee\"]['Wmax']+10)\n", + " #ax1.set_title(r'dAP rate $\\nu_\\mathsf{d}$=%0.1f' % zs[0])\n", + " ax1.set_title(r'$z$=%0.1f' % params['zs'][0])\n", + " ax1.set_ylabel(r'weight $J$ (pA)')\n", + " \n", + " ax2 = ax1.twinx()\n", + " lns2 = ax2.plot(num_pulses, data[\"permanences_cs\"][0], '-o', ms=ms, color='grey', alpha=alpha, label=r'$P$')\n", + " if 'permanence_threshold' in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['permanence_threshold'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", + " if 'th_perm' in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['th_perm'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", + "\n", + " if \"permanence_max\" in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['permanence_max'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed')\n", + " ax2.set_ylim(-1, params[\"syn_dict_ee\"]['permanence_max']+2)\n", + "\n", + " if \"Pmax\" in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['Pmax'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed') \n", + " ax2.set_ylim(-1, params[\"syn_dict_ee\"]['Pmax']+2)\n", + "\n", + " \n", + " ax2.tick_params(axis='y', labelcolor='grey')\n", + " #ax2.set_yticklabels([])\n", + " ax2.set_yticks([])\n", + " ax2.spines['right'].set_color('grey')\n", + " \n", + " # add legends\n", + " lns = [lns1[0],lns2[0]]\n", + " labs = [l.get_label() for l in lns]\n", + " ax1.legend(lns, labs, loc='lower right')\n", + " \n", + " # data for Ic=1\n", + " # -------------\n", + " ax1 = plt.subplot(gs[0,1])\n", + " \n", + " ax1.plot(num_pulses, data[\"weights_cs\"][1], '-o', ms=ms, color='black', label='weight')\n", + " \n", + " ax1.set_ylim(-1, params[\"syn_dict_ee\"]['Wmax']+10)\n", + " ax1.set_xlim(0, training_steps)\n", + " #ax1.set_title(r'dAP rate $\\nu_\\mathsf{d}$=%0.1f' % params['zs'][1])\n", + " ax1.set_title(r'$z$=%0.1f' % params['zs'][1])\n", + " ax1.set_xlabel('number of presynaptic-postsynaptic spike pairings')\n", + " ax1.set_yticks([])\n", + " \n", + " ax2 = ax1.twinx()\n", + " ax2.plot(num_pulses, data[\"permanences_cs\"][1], '-o', ms=ms, color='grey', alpha=alpha, label='permanence')\n", + " if 'permanence_threshold' in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['permanence_threshold'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", + " if 'th_perm' in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['th_perm'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", + "\n", + " if \"permanence_max\" in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['permanence_max'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed')\n", + " ax2.set_ylim(-1, params[\"syn_dict_ee\"]['permanence_max']+2)\n", + "\n", + " if \"Pmax\" in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['Pmax'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed') \n", + " ax2.set_ylim(-1, params[\"syn_dict_ee\"]['Pmax']+2)\n", + " \n", + " \n", + " ax2.tick_params(axis='y', labelcolor='grey')\n", + " ax2.set_yticks([])\n", + " ax2.spines['right'].set_color('grey')\n", + " \n", + " # data for Ic=2\n", + " # -------------\n", + " ax1 = plt.subplot(gs[0,2])\n", + " \n", + " ax1.plot(num_pulses, data[\"weights_cs\"][2], '-o', ms=ms, color='black', label='weight')\n", + " \n", + " ax1.set_ylim(-1, params[\"syn_dict_ee\"]['Wmax']+10)\n", + " ax1.set_xlim(0, training_steps)\n", + " #ax1.set_title(r'dAP rate $\\nu_\\mathsf{d}$=%0.1f' % params['zs'][2])\n", + " ax1.set_title(r'$z$=%0.1f' % params['zs'][2])\n", + " ax1.set_yticks([])\n", + " \n", + " ax2 = ax1.twinx()\n", + " ax2.plot(num_pulses, data[\"permanences_cs\"][2], '-o', ms=ms, color='grey', alpha=alpha, label=r'$P$')\n", + " if 'permanence_threshold' in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['permanence_threshold'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", + " if 'th_perm' in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['th_perm'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", + " if \"permanence_max\" in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['permanence_max'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed')\n", + " ax2.set_ylim(-1, params[\"syn_dict_ee\"]['permanence_max']+2)\n", + "\n", + " if \"Pmax\" in params['syn_dict_ee'].keys():\n", + " plt.hlines(params['syn_dict_ee']['Pmax'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed') \n", + " ax2.set_ylim(-1, params[\"syn_dict_ee\"]['Pmax']+2)\n", + "\n", + " ax2.tick_params(axis='y', labelcolor='grey')\n", + " ax2.set_ylabel(r\"permanence $P$\", color=\"grey\")\n", + " #ax2.spines['right'].set_color('grey')\n", + " \n", + " print('---------------------------------')\n", + " path = '.'\n", + " fname = 'plasticity_dynamics'\n", + " #print(\"save %s/%s.pdf\" % (path, fname))\n", + " #plt.savefig(\"/tmp/%s.pdf\" % fname)\n", + " plt.savefig(\"/tmp/%s.png\" % fname)\n", + "\n", + "plot_foobar(data, params)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Plasticity dynamics dependence on dAP" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [], - "source": [ - "\n", - "DELAY = 0.1\n", - "\n", - "p = para.ParameterSpace({})\n", - "\n", - "p['dt'] = 0.1 # simulation time resolution (ms)\n", - "p['print_simulation_progress'] = True # print the time progress.\n", - "\n", - "# neuron parameters of the excitatory neurons\n", - "p['soma_model'] = neuron_model_name\n", - "p['soma_params'] = {}\n", - "p['soma_params']['C_m'] = 250. # membrane capacitance (pF)\n", - "p['soma_params']['E_L'] = 0. # resting membrane potential (mV)\n", - "# p['soma_params']['I_e'] = 0. # external DC currents (pA)\n", - "p['soma_params']['V_m'] = 0. # initial potential (mV)\n", - "p['soma_params']['V_reset'] = 0. # reset potential (mV)\n", - "p['soma_params']['V_th'] = 20. # spike threshold (mV)\n", - "p['soma_params']['t_ref'] = 10. # refractory period\n", - "p['soma_params']['tau_m'] = 10. # membrane time constant (ms)\n", - "p['soma_params']['tau_syn1'] = 2. # synaptic time constant: external input (receptor 1)\n", - "p['soma_params']['tau_syn2'] = 5. # synaptic time constant: dendrtic input (receptor 2)\n", - "p['soma_params']['tau_syn3'] = 1. # synaptic time constant: inhibitory input (receptor 3)\n", - "# dendritic action potential\n", - "p['soma_params']['I_p'] = 200. # current clamp value for I_dAP during a dendritic action potenti\n", - "p['soma_params']['tau_dAP'] = 60. # time window over which the dendritic current clamp is active\n", - "p['soma_params']['theta_dAP'] = 59. # current threshold for a dendritic action potential\n", - "p['fixed_somatic_delay'] = 2 # this is an approximate time of how long it takes the soma to fire\n", - " # upon receiving an external stimulus \n", - "\n", - "# synaptic parameters\n", - "p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", - "p['convergence'] = 5\n", - "p['pattern_size'] = 20 # sparse set of active neurons per subpopulation\n", - "\n", - "# parameters for ee synapses (stdsp)\n", - "p['syn_dict_ee'] = {}\n", - "p['permanence_min'] = 0.\n", - "p['permanence_max'] = 8.\n", - "p['calibration'] = 0.\n", - "p['syn_dict_ee']['weight'] = 0.01 # synaptic weight\n", - "p['syn_dict_ee']['synapse_model'] = synapse_model_name # synapse model\n", - "p['syn_dict_ee']['permanence_threshold'] = 10. # synapse maturity threshold\n", - "p['syn_dict_ee']['tau_pre_trace'] = 20. # plasticity time constant (potentiation)\n", - "p['syn_dict_ee']['delay'] = 2. # dendritic delay \n", - "p['syn_dict_ee']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", - "p['syn_dict_ee']['lambda_plus'] = 0.08 # potentiation rate\n", - "p['syn_dict_ee']['zt'] = 1. # target dAP trace [pA]\n", - "p['syn_dict_ee']['lambda_h'] = 0.014 # homeostasis rate\n", - "p['syn_dict_ee']['Wmax'] = 1.1 * p['soma_params']['theta_dAP'] / p['convergence'] # Maximum allowed weight\n", - "p['syn_dict_ee']['permanence_max'] = 20. # Maximum allowed permanence\n", - "p['syn_dict_ee']['permanence_min'] = 1. # Minimum allowed permanence\n", - "p['syn_dict_ee']['lambda_minus'] = 0.0015\n", - "\n", - "# parameters of EX synapses (external to soma of E neurons)\n", - "p['conn_dict_ex'] = {}\n", - "p['syn_dict_ex'] = {}\n", - "p['syn_dict_ex']['receptor_type'] = 1 # receptor corresponding to external input\n", - "p['syn_dict_ex']['delay'] = DELAY # dendritic delay\n", - "p['conn_dict_ex']['rule'] = 'all_to_all' # connection rule\n", - "\n", - "## stimulus parameters\n", - "p['DeltaT'] = 40. # inter-stimulus interval" + "## Experiment 3: Network sequence generation" ] }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 2, "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "Feb 29 08:10:46 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml [Warning]: \n", - " Simulation resolution has changed. Internal state and parameters of the \n", - " model have been reset!\n", - "\n", - "Feb 29 08:10:46 iaf_psc_exp_nonlineardendritebf804901482f4460a08ae4ecee3c31cc_neuron_nestml__with_stdspbf804901482f4460a08ae4ecee3c31cc_synapse_nestml [Warning]: \n", - " Simulation resolution has changed. Internal state and parameters of the \n", - " model have been reset!\n", - "\n", - "Feb 29 08:10:46 SimulationManager::set_status [Info]: \n", - " Temporal resolution changed from 0.1 to 0.1 ms.\n" + "ename": "NameError", + "evalue": "name 'para' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [2], line 203\u001b[0m\n\u001b[1;32m 194\u001b[0m p[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124msyn_dict_ei\u001b[39m\u001b[38;5;124m'\u001b[39m][\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mweight\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m=\u001b[39m psp_max_2_psc_max(p[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mJ_EI_psp\u001b[39m\u001b[38;5;124m'\u001b[39m], \n\u001b[1;32m 195\u001b[0m p[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124msoma_params\u001b[39m\u001b[38;5;124m'\u001b[39m][\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtau_m\u001b[39m\u001b[38;5;124m'\u001b[39m], \n\u001b[1;32m 196\u001b[0m p[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124msoma_params\u001b[39m\u001b[38;5;124m'\u001b[39m][\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtau_syn3\u001b[39m\u001b[38;5;124m'\u001b[39m], \n\u001b[1;32m 197\u001b[0m p[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mR_m_soma\u001b[39m\u001b[38;5;124m'\u001b[39m])\n\u001b[1;32m 199\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m p\n\u001b[0;32m--> 203\u001b[0m params \u001b[38;5;241m=\u001b[39m \u001b[43mcreate_active_dendrite_parameters\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 205\u001b[0m run_psc_test(params)\n", + "Cell \u001b[0;32mIn [2], line 4\u001b[0m, in \u001b[0;36mcreate_active_dendrite_parameters\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mcreate_active_dendrite_parameters\u001b[39m():\n\u001b[1;32m 2\u001b[0m DELAY \u001b[38;5;241m=\u001b[39m \u001b[38;5;241m0.1\u001b[39m\n\u001b[0;32m----> 4\u001b[0m p \u001b[38;5;241m=\u001b[39m \u001b[43mpara\u001b[49m\u001b[38;5;241m.\u001b[39mParameterSpace({})\n\u001b[1;32m 6\u001b[0m p[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mdt\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[38;5;241m0.1\u001b[39m \u001b[38;5;66;03m# simulation time resolution (ms)\u001b[39;00m\n\u001b[1;32m 7\u001b[0m p[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mprint_simulation_progress\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m \u001b[38;5;66;03m# print the time progress.\u001b[39;00m\n", + "\u001b[0;31mNameError\u001b[0m: name 'para' is not defined" ] } ], "source": [ - "nest.ResetKernel()\n", - "nest.set_verbosity(\"M_ALL\")\n", - "nest.SetKernelStatus({\n", - " 'resolution': params['dt'],\n", - " 'print_time': params['print_simulation_progress'],\n", - " #'local_num_threads': n_threads,\n", - " 'rng_seed': seed\n", - "})" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - " simulate\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 10\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:46 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:46 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:46 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:47 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:47 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:47 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:48 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:48 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:48 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 10\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:49 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:49 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:49 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:50 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:50 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:50 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:51 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:51 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:51 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:52 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:52 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 10\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:52 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:52 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:52 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:52 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:52 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:52 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:52 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:52 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:52 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:52 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:52 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:52 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:52 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:53 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:53 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:53 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", - "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", - "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", - "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", + "def create_active_dendrite_parameters():\n", + " DELAY = 0.1\n", + " \n", + " p = para.ParameterSpace({})\n", + " \n", + " p['dt'] = 0.1 # simulation time resolution (ms)\n", + " p['print_simulation_progress'] = True # print the time progress.\n", + " \n", + " # neuron parameters of the excitatory neurons\n", + " p['soma_model'] = neuron_model_name\n", + " p['soma_params'] = {}\n", + " p['soma_params']['C_m'] = 250. # membrane capacitance (pF)\n", + " p['soma_params']['E_L'] = 0. # resting membrane potential (mV)\n", + " # p['soma_params']['I_e'] = 0. # external DC currents (pA)\n", + " p['soma_params']['V_m'] = 0. # initial potential (mV)\n", + " p['soma_params']['V_reset'] = 0. # reset potential (mV)\n", + " p['soma_params']['V_th'] = 20. # spike threshold (mV)\n", + " p['soma_params']['t_ref'] = 10. # refractory period\n", + " p['soma_params']['tau_m'] = 10. # membrane time constant (ms)\n", + " p['soma_params']['tau_syn1'] = 2. # synaptic time constant: external input (receptor 1)\n", + " p['soma_params']['tau_syn2'] = 5. # synaptic time constant: dendrtic input (receptor 2)\n", + " p['soma_params']['tau_syn3'] = 1. # synaptic time constant: inhibitory input (receptor 3)\n", + " # dendritic action potential\n", + " p['soma_params']['I_p'] = 200. # current clamp value for I_dAP during a dendritic action potenti\n", + " p['soma_params']['tau_dAP'] = 60. # time window over which the dendritic current clamp is active\n", + " p['soma_params']['theta_dAP'] = 59. # current threshold for a dendritic action potential\n", + " \n", + " p['soma_params']['I_dend_incr'] = 2.71 / (p['soma_params']['tau_syn2'])\n", + " \n", + " \n", + " p['fixed_somatic_delay'] = 2 # this is an approximate time of how long it takes the soma to fire\n", + " # upon receiving an external stimulus \n", + " \n", + " \n", + " \n", + " # neuron parameters for the inhibitory neuron\n", + " p['inhibit_model'] = 'iaf_psc_exp'\n", + " p['inhibit_params'] = {}\n", + " p['inhibit_params']['C_m'] = 250. # membrane capacitance (pF)\n", + " p['inhibit_params']['E_L'] = 0. # resting membrane potential (mV)\n", + " p['inhibit_params']['I_e'] = 0. # external DC currents (pA)\n", + " p['inhibit_params']['V_m'] = 0. # initial potential (mV)\n", + " p['inhibit_params']['V_reset'] = 0. # reset potential (mV)\n", + " p['inhibit_params']['V_th'] = 15. # spike threshold (mV)\n", + " p['inhibit_params']['t_ref'] = 2.0 # refractory period\n", + " p['inhibit_params']['tau_m'] = 5. # membrane time constant (ms)\n", + " p['inhibit_params']['tau_syn_ex'] = .5 # synaptic time constant of an excitatory input (ms) \n", + " p['inhibit_params']['tau_syn_in'] = 1.65 # synaptic time constant of an inhibitory input (ms)\n", + " \n", + " \n", + " \n", + " \n", + " # synaptic parameters\n", + " p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", + " p['J_IE_psp'] = 1.2 * p['inhibit_params']['V_th'] # inhibitory PSP as a response to an input from E neuron\n", + " p['J_EI_psp'] = -2 * p['soma_params']['V_th'] # somatic PSP as a response to an inhibitory input\n", + " p['convergence'] = 5\n", + " \n", + " \n", + " \n", + " \n", + " # parameters for setting up the network \n", + " p['M'] = 6 # number of subpopulations\n", + " p['n_E'] = 150 # number of excitatory neurons per subpopulation\n", + " p['n_I'] = 1 # number of inhibitory neurons per subpopulation\n", + " p['L'] = 1 # number of subpopulations that represents one sequence element\n", + " p['pattern_size'] = 20 # sparse set of active neurons per subpopulation\n", + " \n", + " # connection details\n", + " p['rule'] = 'fixed_indegree' \n", + " p['connection_prob'] = 0.2\n", + " \n", + " # synaptic parameters\n", + " p['J_EX_psp'] = 1.1 * p['soma_params']['V_th'] # somatic PSP as a response to an external input\n", + " p['J_EI_psp'] = -2 * p['soma_params']['V_th'] # somatic PSP as a response to an inhibitory input\n", + " p['convergence'] = 5\n", + " \n", + " # parameters for ee synapses (stdsp)\n", + " p['syn_dict_ee'] = {}\n", + " p['permanence_min'] = 0.\n", + " p['permanence_max'] = 8.\n", + "\n", + "\n", + " \n", + " p['calibration'] = 0.\n", + " p['syn_dict_ee']['weight'] = 0.01 # synaptic weight\n", + " p['syn_dict_ee']['synapse_model'] = synapse_model_name # synapse model\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " p['syn_dict_ee']['permanence_threshold'] = 10. # synapse maturity threshold\n", + " p['syn_dict_ee']['tau_pre_trace'] = 20. # plasticity time constant (potentiation)\n", + " else:\n", + " p['syn_dict_ee']['th_perm'] = 10. # synapse maturity threshold\n", + " p['syn_dict_ee']['tau_plus'] = 20. # plasticity time constant (potentiation)\n", + " p['syn_dict_ee']['delay'] = 2. # dendritic delay \n", + " p['syn_dict_ee']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", + " p['syn_dict_ee']['lambda_plus'] = 0.08 # potentiation rate\n", + " p['syn_dict_ee']['zt'] = 1. # target dAP trace\n", + " p['syn_dict_ee']['lambda_h'] = 0.014 # homeostasis rate\n", + " p['syn_dict_ee']['Wmax'] = 1.1 * p['soma_params']['theta_dAP'] / p['convergence'] # Maximum allowed weight\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " p['syn_dict_ee']['permanence_max'] = 20. # Maximum allowed permanence\n", + " p['syn_dict_ee']['permanence_min'] = 1. # Minimum allowed permanence\n", + " else:\n", + " p['syn_dict_ee']['Pmax'] = 20. # Maximum allowed permanence\n", + " p['syn_dict_ee']['Pmin'] = 1. # Minimum allowed permanence\n", + " p['syn_dict_ee']['lambda_minus'] = 0.0015 # depression rate\n", + " if \"synapse_nestml\" in synapse_model_name:\n", + " p['syn_dict_ee']['dt_min'] = 4. # minimum time lag of the STDP window\n", + " else:\n", + " p['syn_dict_ee']['dt_min'] = -4. # minimum time lag of the STDP window\n", + " p['inh_factor'] = 7.\n", + " \n", + " # parameters of EX synapses (external to soma of E neurons)\n", + " p['conn_dict_ex'] = {}\n", + " p['syn_dict_ex'] = {}\n", + " p['syn_dict_ex']['receptor_type'] = 1 # receptor corresponding to external input\n", + " p['syn_dict_ex']['delay'] = DELAY # dendritic delay\n", + " p['conn_dict_ex']['rule'] = 'all_to_all' # connection rule\n", + " \n", + " # parameters of EdX synapses (external to dendrite of E neurons) \n", + " p['conn_dict_edx'] = {}\n", + " p['syn_dict_edx'] = {}\n", + " p['syn_dict_edx']['receptor_type'] = 2 # receptor corresponding to the dendritic input\n", + " p['syn_dict_edx']['delay'] = DELAY # dendritic delay\n", + " p['syn_dict_edx']['weight'] = 1.4 * p['soma_params']['theta_dAP']\n", + " p['conn_dict_edx']['rule'] = 'fixed_outdegree' # connection rule\n", + " p['conn_dict_edx']['outdegree'] = p['pattern_size'] + 1 # outdegree\n", + " \n", + " # parameters for IE synapses \n", + " p['syn_dict_ie'] = {}\n", + " p['conn_dict_ie'] = {}\n", + " p['syn_dict_ie']['synapse_model'] = 'static_synapse' # synapse model\n", + " p['syn_dict_ie']['delay'] = DELAY # dendritic delay\n", + " p['conn_dict_ie']['rule'] = 'fixed_indegree' # connection rule\n", + " p['conn_dict_ie']['indegree'] = 5 # indegree \n", + " \n", + " # parameters for EI synapses\n", + " p['syn_dict_ei'] = {}\n", + " p['conn_dict_ei'] = {}\n", + " p['syn_dict_ei']['synapse_model'] = 'static_synapse' # synapse model\n", + " p['syn_dict_ei']['delay'] = DELAY # dendritic delay\n", + " p['syn_dict_ei']['receptor_type'] = 3 # receptor corresponding to the inhibitory input \n", + " p['conn_dict_ei']['rule'] = 'fixed_indegree' # connection rule\n", + " p['conn_dict_ei']['indegree'] = 20 # indegree\n", + " \n", + " # stimulus parameters\n", + " p['DeltaT'] = 40. # inter-stimulus interval\n", + " p['excitation_start'] = 30. # time at which the external stimulation begins\n", + " p['time_dend_to_somatic'] = 20. # time between the dAP activation and the somatic activation (only used if sparse_first_char is True) \n", + " p['DeltaT_cue'] = 80. # inter-cue interval during replay\n", + " \n", + " # simulation parameters \n", + " p['dt'] = 0.1 # simulation time resolution (ms)\n", + " p['overwrite_files'] = True # if True, data will be overwritten,\n", + " # if False, a NESTError is raised if the files already exist\n", + " p['seed'] = para.ParameterRange([1,2,3,4,5]) # seed for NEST\n", + " p['print_simulation_progress'] = True # print the time progress.\n", + " p['pad_time'] = 5.\n", + " p['idend_recording_interval'] = 10 * p['dt'] # dendritic current recording resolution\n", + " p['idend_record_time'] = 8. # time interval after the external stimulation at which the dendritic current is recorded\n", + " p['evaluate_performance'] = True # if turned on, we monitor the dendritic current at a certain time steps\n", + " # during the simulation. This then is used for the prediction performance assessment\n", + " p['evaluate_replay'] = False \n", + " p['record_idend_last_episode'] = True # used for debugging, if turned on we record the dendritic current of all neurons\n", + " # this can consume too much memory\n", + " p['store_connections'] = False \n", + " p['load_connections'] = False\n", + " p['sparse_first_char'] = False # if turned on, the dAP of a subset of neurons in the subpopulation representing \n", + " # first sequence elements is activated externally \n", + " p['active_weight_recorder'] = False # if turned on, the weights are recorded every presynaptic spike\n", + " \n", + " # task parameters\n", + " p['task'] = {}\n", + " p['task']['task_name'] = 'hard_coded' # name of the task\n", + " p['task']['task_type'] = 1 # this chooses between three hard coded sequence sets (see ./utils.py)\n", + " p['task']['vocab_size'] = 6 # vocabulary size\n", + " p['task']['seed'] = 111 # seed number\n", + " p['task']['store_training_data'] = True # if turned on, the sequence set is stored in directory defined in dict data_path\n", + " if p['task']['task_name'] != 'hard_coded':\n", + " p['task']['num_sequences'] = 2 # number of sequences per sequence set\n", + " p['task']['num_sub_seq'] = 2 # if task_name == 'high_order', \n", + " # it sets the number of sequences with same shared subsequence\n", + " p['task']['length_sequence'] = 6 # number of elements per sequence\n", + " p['task']['replace'] = False # random choice of characters with replacement\n", + " \n", + " # setup the training loop \n", + " p['learning_episodes'] = 42 #XXX: was 85 # total number of training episodes ('repetitions of the sequence sets')\n", + " p['episodes_to_testing'] = 1 # number of episodes after which we measure the prediction perfomance\n", + "\n", + " if \"synapse_nestml\" not in synapse_model_name:\n", + " p['mu_plus']= 0.0 \n", + " p['mu_minus']= 0.0\n", + "\n", + " \n", + " return p\n", + "\n", + "\n", + "\n", + "params = create_active_dendrite_parameters()\n", + "\n", + "run_psc_test(params)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", + "Save training data to training_data\n", "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", + "Initialising model and simulation...\n", + "XXXXXXXXXX\n", "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", + "#### postsynaptic potential ####\n", + "PSP maximum J_EX psp: 22.000000 mV\n", + "PSP maximum J_IE psp: 0.900000 mV\n", + "PSP maximum J_EI psp: -40.000000 mV\n", "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", + "#### postsynaptic current ####\n", + "PSC maximum J_EX: 4112.209148 pA\n", + "PSC maximum J_IE: 581.197349 pA\n", + "PSC maximum J_EI: -12915.496650 pA\n", + "Model parameters: {'dt': 0.1, 'print_simulation_progress': True, 'soma_model': 'iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml', 'soma_params': {'C_m': 250.0, 'E_L': 0.0, 'V_m': 0.0, 'V_reset': 0.0, 'V_th': 20.0, 't_ref': 10.0, 'tau_m': 10.0, 'tau_syn1': 2.0, 'tau_syn2': 5.0, 'tau_syn3': 1.0, 'I_p': 200.0, 'tau_dAP': 60.0, 'theta_dAP': 59.0}, 'fixed_somatic_delay': 2, 'inhibit_model': 'iaf_psc_exp', 'inhibit_params': {'C_m': 250.0, 'E_L': 0.0, 'I_e': 0.0, 'V_m': 0.0, 'V_reset': 0.0, 'V_th': 15.0, 't_ref': 2.0, 'tau_m': 5.0, 'tau_syn_ex': 0.5, 'tau_syn_in': 1.65}, 'J_EX_psp': 22.0, 'J_IE_psp': 0.9, 'J_EI_psp': -40.0, 'convergence': 5, 'M': 6, 'n_E': 150, 'n_I': 1, 'L': 1, 'pattern_size': 20, 'rule': 'fixed_indegree', 'connection_prob': 0.2, 'syn_dict_ee': {'weight': 0.01, 'synapse_model': 'stdsp_synapse', 'th_perm': 10.0, 'tau_plus': 20.0, 'delay': 2.0, 'receptor_type': 2, 'lambda_plus': 0.08, 'zt': 1.0, 'lambda_h': 0.014, 'Wmax': 12.98, 'Pmax': 20.0, 'Pmin': 1.0, 'lambda_minus': 0.0015, 'dt_min': -4.0, 'permanence': , 'dt_max': -80.0}, 'permanence_min': 0.0, 'permanence_max': 8.0, 'calibration': 0.0, 'inh_factor': 7.0, 'conn_dict_ex': {'rule': 'all_to_all'}, 'syn_dict_ex': {'receptor_type': 1, 'delay': 0.1, 'weight': 4112.209148358356}, 'conn_dict_edx': {'rule': 'fixed_outdegree', 'outdegree': 21}, 'syn_dict_edx': {'receptor_type': 2, 'delay': 0.1, 'weight': 82.6}, 'syn_dict_ie': {'synapse_model': 'static_synapse', 'delay': 0.1, 'weight': 581.1973492566976}, 'conn_dict_ie': {'rule': 'fixed_indegree', 'indegree': 5}, 'syn_dict_ei': {'synapse_model': 'static_synapse', 'delay': 0.1, 'receptor_type': 3, 'weight': -12915.496650148836}, 'conn_dict_ei': {'rule': 'fixed_indegree', 'indegree': 20}, 'DeltaT': 40.0, 'excitation_start': 30.0, 'time_dend_to_somatic': 20.0, 'DeltaT_cue': 80.0, 'overwrite_files': True, 'seed': 1, 'pad_time': 5.0, 'idend_recording_interval': 1.0, 'idend_record_time': 8.0, 'evaluate_performance': True, 'evaluate_replay': False, 'record_idend_last_episode': True, 'store_connections': False, 'load_connections': False, 'sparse_first_char': False, 'active_weight_recorder': False, 'task': {'task_name': 'hard_coded', 'task_type': 1, 'vocab_size': 6, 'seed': 111, 'store_training_data': True}, 'learning_episodes': 1, 'episodes_to_testing': 1, 'R_m_soma': 0.04, 'R_m_inhibit': 0.02, 'label': '68e068d0ae80a21b28caff1d0986adba', 'conn_dict_ee': {'rule': 'fixed_indegree', 'indegree': 180, 'allow_autapses': False, 'allow_multapses': False}, 'DeltaT_seq': 100.0}\n", + "Data will be written to: 68e068d0ae80a21b28caff1d0986adba\n", "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", + "Duration of a sequence set 440 ms\n", "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", + "Creating and configuring nodes...\n", "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", + "Mar 12 04:32:50 iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml [Warning]: \n", + "Learning episode: 0 of 2\n", + "Learning episode: 1 of 2\n", + "mkdir: 68e068d0ae80a21b28caff1d0986adba\n", + " Simulation resolution has changed. Internal state and parameters of the \n", + " model have been reset!\n", "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", + "Mar 12 04:32:50 iaf_psc_exp_nonlineardendrite45b2cc450f1343c880cd5eed30ad08bd_neuron_nestml__with_stdsp45b2cc450f1343c880cd5eed30ad08bd_synapse_nestml [Warning]: \n", + " Simulation resolution has changed. Internal state and parameters of the \n", + " model have been reset!\n", + "Saving idend_recording_times to 68e068d0ae80a21b28caff1d0986adba/idend_recording_times\n", + "connect().....\n", "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n", + "Connecting network and devices...\n", + "Conn exc neurons\n", + "{'rule': 'fixed_indegree', 'indegree': 180, 'allow_autapses': False, 'allow_multapses': False}\n", + "{'weight': 0.01, 'synapse_model': 'stdsp_synapse', 'th_perm': 10.0, 'tau_plus': 20.0, 'delay': 2.0, 'receptor_type': 2, 'lambda_plus': 0.08, 'zt': 1.0, 'lambda_h': 0.014, 'Wmax': 12.98, 'Pmax': 20.0, 'Pmin': 1.0, 'lambda_minus': 0.0015, 'dt_min': -4.0, 'permanence': , 'dt_max': -80.0}\n", "\n", - "Feb 29 08:10:54 NodeManager::prepare_nodes [Info]: \n", - " Preparing 10 nodes for simulation.\n", + "Set min synaptic strength ...\n", "\n", - "Feb 29 08:10:54 SimulationManager::start_updating_ [Info]: \n", - " Number of local nodes: 10\n", - " Simulation time (ms): 200\n", - " Number of OpenMP threads: 1\n", - " Not using MPI\n", + "Set min synaptic strength .2..\n", "\n", - "Feb 29 08:10:54 SimulationManager::run [Info]: \n", - " Simulation finished.\n" + "Set min synaptic strength .3..\n", + "> \u001b[0;32m/tmp/ipykernel_905629/455496507.py\u001b[0m(443)\u001b[0;36m__set_min_synaptic_strength\u001b[0;34m()\u001b[0m\n", + "\u001b[0;32m 441 \u001b[0;31m \u001b[0;32mimport\u001b[0m \u001b[0mpdb\u001b[0m\u001b[0;34m;\u001b[0m\u001b[0mpdb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mset_trace\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 442 \u001b[0;31m \u001b[0;31m#connections.set({'permanence_min': connections.permanence}) # XXXXXXXXXXXXXXXX\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m--> 443 \u001b[0;31m \u001b[0mconnections\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m{\u001b[0m\u001b[0;34m'Pmin'\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mconnections\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpermanence\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# XXXXXXXXXXXXXXXX\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 444 \u001b[0;31m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\u001b[0;32m 445 \u001b[0;31m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'\\nSet min synaptic strength .3..'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0m\n" ] }, { - "data": { - "image/png": "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7NmTTT0dlOsdQgMHDpQU/U1J7Xn11VdVXl6uX/3qV26HAwAAAAAAAAAAAAAAABAivvxqo6lTp2rIkCE6+uij273vN77xDdXV1alfv366++67deGFF6a8f0lJifbs2WP5tx07dqQ1XwAAAAAAAAAAAAAAAACZ1SnTA3z00UdatmyZRowYkfJ+p556qtauXautW7eqqKhIl112mQYOHKi1a9emPG7q1Knq16+f5b+RI0dKklavXq38/HxNnDhR+/bt09ChQyVJgwYNkiSNGjVKRUVFmjFjhnJzc1VQUKBx48apqqpKgwcPttx37NixKiws1KxZszRr1iwVFhZq7NixlvsMHjxYVVVVGjdunAoKCpSbm6sZM2aoqKhIo0aNstx36NCh2rdvnyZOnKj8/Hzl5eVpypQpKi4u1vDhwy33HT58uIqLizVlyhTl5eVlZU8rVqxI+hja7amwsDB2zKJFiyw1nPTU7P3337fctttT4tjx7D5O0x6fFjumpKTEUsPJ49Rs+/btltt2H6f3318eO6axsalVP3auvZ9e8dOk58PJtZeqht1rLxUnz6dmFRUVsa/nz59v+/mUzO233277+RRv//79sa9LS/fazoh4ixcvjn29e/du2xkRb8+e0tjXM558UpK9jIhXVVUV+3rr1m22cy/eE9OfsNx2knvN3nmn5Xx8WlRkuU+qnpIp2VNiO8urqqpjxz311JOWOk6yvNljj/3dcttulhfvLE7aj931KT7b161bZ6lhd32qr6+PHfPkk9bzYXd9+uyzz2LHxD9f4ufSXk+TJk2K3T/+OpVke83d9PGmpOfD7ppbU1MTO6a8vKxVL3bW3DvuuL3Vcc3srrmJj0Vbc3Cy5iZy8joiGSevjeLFX3M333yz7Z7iNTW1rJlvv/OO7ddG8TZu3Gi57eT1Xvx5bDZnzpy019xFixa5WnOXL19uue1mzX3uuediX+/4bEfaa+66dYWu1txVH3wQ+7q+vt72mtvUFIkd9/vf/z72dUNjo+01N/75X1T0aau52Vlz4987xb+OkWR7zd29e3fsmOnTp1tquFlz16xZ06oXO2vuvNdea3VcM7trbvzr9vXr17c5BydrbuJrAbtr7py5c5L2YnfNjc/22to6Sw3b7wmrretbPCfvCVNx8j63LU7e5yYzYcIE2+9z4yVmm5P37s3is33lylW237vH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61SS7TV308ebYsesSzgfdtfcmpqa2DHl5WWterGz5t59992tjmtmd8194YUXktb46RU/td1TMpu3bLG15k6dOjVpjS927bL92ihe/DU38raRlvvaWXMlqampZc18553Ftl8bxdu4caPltpPXe83ic2nOnDm2X+8ls2jRItuv9+ItX77cctvNmhu/fu74bEfaa+66dYWu1tz45259fb3tNbcp7v+Nd9ddd8W+bmhstL3mxj//t23b1mpudtbctWvXxu5fWWH9P4HYXXN3794dO+Yf//iHpYabNXfNmjWterGz5s577bVWxzWzu+bGv25fv359m3NwsuYmvhawu+bOnTs3aS9219z4bK+trbPUsLvmVldXK5lZz9tbcz/44IOkNZrn0l5PzetIW6ZOnWr7fW4yDz/8sO33ufESs83Je/dm8dm+cuUq2+/d4zU0NMS+bn594nTN/eKLXbGvS0v32n7vHm9G3OuyispKV2vuli1bYl83v/52uubW1tbGvi4p2eNqzZ38yCOW227W3Pj3JJUHD9pec3ft2qVk7K6527Zvix0zf/4CS41019zmedhZczdusL52iWd3zX3xxRdjx8S/hm/uwU5PlQcPxo6Jf58ryfaau3Xr1tgxbf2fJu2suX/8422x+zc2NlqOt7vmxmdZWVm5pYabNbctdtbcMWPGJD3+3ffes7XmpnrdftNNN9nuKV59XB5u2rTJ9meW8eIf67Kyctufw8aLf4/54IMTLfdN1VMyy99/3/bnsPHeSbjenXy2HBs77nV7wcqVaa+5a9ascbXmvr3obcttN2tufLaXV5TbXnNralrWldq419/7DxyQZG/Njf8cdtMnLZ8DNI9lp6ea2paxx4+fYKlhd82N/9wyfs1NPK+pepo9e3bs/nVx75Ul2V5zN21qOQdvvvmmpUa673Ml2V5zE5//8eyuuc8880zsmL1797Z5Pt1+ttw8Dztrbm5ubtJeqqrtrbmpfonAH9u4b5s9pfi8/fkXnrf986d4ieuuk58/NSvZ0/LzlBdffMn2z9SSeXzaNFdrbvwaE38fJ5+Xx7+227xly//f3p1HSVWd6x9/ikEFmVTAWVBjrlFQyVVvjNEYYzQmIWqMGKMGczPINQmGSKKS3w1G1OQGNMSIc1CjYhwBRUXFAVAMg4CMDszQCE3TMz131++PoqvqdHc1p6p3nXrr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+d1DsZp8ZETz8Sx6+S4Vl+/S+PdqNXtDg2YuXOs792o2LVfZ/OfVWF2h//7D/Z7jmk7ulcx+THU7NuiZl9/SlOX1Wr69UWOeXe15Tns1Fb/5kKem4dOqVVwd1fg3CnxneeH8F1W97gPVbFquB/7xTxVXRzV8mvc69VNT8xwmTvyblm9v1JTl9bGafGb52ndfUn3J1nhNzcdz+LRq3/3pzYdvU0NFkSoWz9Di92dr9oYGjX+vNlaTz/5UV1OtHdP+LEmadPPPYtfemzWxmnz2p/WrP1TVJ/NUuex17dy6UaNm1nhr8tFz7/j1jyVJO1+7R5XFhbH+tKYhVpPPnrvqw8Uqfe8pNdXXaO79v/fMwW/Pra6uUul7T6l268favmxOrD8VNyVq8tFz//C7X3uukUx67r+eeCzec0vfe8rbcy/+nu+amntu6XtPeXvu2nW+eu79996buudu3eb7tVFzz636ZJ4WbKpJ9Nyfeefgp+fumPZnVdU1Jnruq2/7fm3U3HMbKoo04tEPvTWl8Xov3nPf/DjRcx98wffrvZQ999HXMuu5z8/tcM8dfefjiZ47f33He+49izLqufMWLEn03NJa3z23oao83nN/cl1s/FEza7SmqN53z63Yujbecz/55JNEz22uyUfPfefvN8RrKi8rTfTcNQ2+e+6WVYviPfdvt4z2zCGTnrtg1ouJnvumN8vaq+mZe7zvH+I9971a3z331WcejffcRS891uGeu/SF+zLqudOefqLDPfcPv/t1vOeWfbowo55bXVUV77nNNcV77lP/8tVzP1i0MN5z60u2ZtRzv3fxRZJiPbehosjbc+++3/f73Oae21xTvOfe/lff73Obe27VJ/M0ed72tHtuc03xnvvoh4meO3uB7/funp5b25DouSPHx2pKt+d+VJDouVt2+H7v7um5u1/vj5hRrYKi8ox67sIVaxM9d8Isz3N999zqmkTPXfRZRj33t7eM91wjmfTcZ56fnui5s4p999xPXn7QU1O8586u9d1zV732RLznPv/Ukx3uuZPvui3Rc1fX++65H74zo+2e+2yV75776J9+G++565cvTPTc8ibfPbeirCTec6f/5frYtTezJlaTz5679uNV8Z5bsmVNRj33+h//QFKs59btKs+o5y6Y9268565//i+eOWTSc3eteiejnjvmxtGea8TTc+e+56vn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B1/w/XovZc999DXfr/eSe+69L8xNu+c219Q8h9/d9USi585f3/Gee8/CjHru+4s+TPTc0lrfPbehqjzec6+9/qbY/TSzRmuK6nz33Iqta+M999NP1yR6bnNNPnru23ffEK+pvKws0XPXNPjuuVtWLYr33L/eerNnDpn03PmzXkr03De9WdZeTc/c433/EO+579X67rmvPvNovOcueumxDvfcJS/cl1HPfenZJzvcc8fdPCrec8s+XejtuT/+sa+aqquq4j23uaZ4z336WV89d8kHC+M9t75ka0Y99/JLL5YU67kNFUXennvPw77f5zb33Oaa4j33T3/3/T63uedWfTJPk+cVpt1zm2uK99xHP0z03DkLfb939/Tc2oZEzx05PlZTuj33462Jnrtlh+/37sk996IbY9friBnVKiiq8P15RHLPXbRybaLnTpjlea7vnltdk+i5i7Zm1HNvum2i5xrJpOc+N+3lRM+dVey7537y8oOemuI9d3at7567cuYT8Z77/DP/6nDPfXjinxM9d3W975774Tsz2u65z1b57rmP3PHbeM9dv3xhoueWN/nuuRVlJfGeO/0v18euvZk1sZp89tx1n6yK99ySLZn13Bt+9kNJsZ5bt6s8o5676P134z13/fN/8cxh1G9uSLvn7lr1TkY99w83/9ZzjXh67rvv++q5D91/X7znls1/3ttzr7w2VlMaPbdk9mNa/lltoueu/tT3Z5aennvfR4maSst9fw7b3HOr132g2R8VJXrujeM9z22vppQ995X3fH8O6+m5D7zhuUbS+Wy5uefe+8LcRM999t8d77lPLsyo5z457Y0O99ybbpuY6LkrS3z33JJV78Z7bnV1TaLnPrI1VpOPnrv00bHxnrt8xcpEzy1u8t1zq0oK4z33d78eGbv2mt+7++y5pds2xXvuJyuXJXpuGp+XP/7H6yTFem5tTXWi566u991zV8yfHe+50+/5o+cayaTnrnx7WqLnzq713XMf/uvtnmskk577xIN/j/fcTe9O7XDP3fzKfRn13Beff6bDPXfkiJ/Ge27NpuXenvvrG33VVFJcHO+58c/Lm3vuk8/5/vlTc8+t27FBY17d6a0pjZ8/Nb93H/9GQaLn/vN53z9Ta+658c/Lm3vuHfdn1nPnrkm757b8vHz4hJcSPXfJGt8/J/T03PJdiZ479plYTWn2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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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aqGzltZtInPhTC2+JXdOwUc00aK5IB6cDmP8HqdwRhWBOSOaksdA4p21FCEqVgT2c3uOzil0bufEA5Xb1f0ha25nxAPly5yOFb5ICBtZxogHl+isxema2LciEvKAjaThcB19RBPBdZCOFbqwwtwVixYJJXXnGuR2orOWynWosag2uA6a21kioeTOKazuKwTX4YyjTOY6ji6KILpizfSoYY3rZB41THdNJHk7Y/xeC3De7oCrcx2Ut9sbNczhOllHDVNdRB1wya6JHK5DjRquWRg1XGcdEBhca4HrTP+oYV8klIfrUOP3+FwH6zQnKB7uv/9+uOWWW7T/PfbYY8ZrN2/eDPfeey8cccQRwd9VKhV43vOeZxQP7bbbbnDiiSfC97//fZicnIRNmzbBj370I3jLW96Saa07tNDouuuug5UrV8JZZ50F4+PjMH/+fAAAOProowEAYOHChbBu3TpYsmQJLFu2DFavXg1nnHEGTE5OwrHHHqtdu2jRIlizZg0sXboUli5dCmvWrIFFixZp1xx77LEwOTkJZ5xxBqxevRqWLVsGS5YsgXXr1sHChQu1a+fPnw/j4+Nw1llnwcqVK2HFihWwePFiWL9+PSxYsEC7dsGCBbB+/XpYvHgxrFixYru8pycu/pZ37XleIlvw8/u0e7rrptWwedWvYHzKhfkXThnvadtNf4TNd6yG1et7cMbKFky2+7F72rjyXFjzaA+WrunA0jUd4z09duEXYbLjwhkrW7B6fU+7px+cdRoAALztvI3ePV04BePjG7V72nrdRdDdugEWXDSl39Pge/rVT/4Ppu6+FlbdNwlnXd7y7unE/9HWMH7J96Gz8SFYcn0blt3W8e4p8j09dsFnve/pkqZ3T7/5U+x78q859peT3j0p39NPf/wj6Gx8CL7/x9u1darfU/P+NTB197WweHUb1m/ph/c0WOcJJ/w3dLdugEuuWQcr1nVh5b1dOOunf9R8777zvGe2cEUT1o33vXuK+N7jF35BW8OiH/xJ871tD98NG1eeq10T9b3JO66Am268GdaN92HhimbM99oTW2Dzql/Bynu7sGJd17snQzz9fcVyWL+lD4tXt2HFjQ9r8XTJOadpa1i4ohmLp02XnwfdThuO/aV3zdHfukmLp5sv+x1M3HoprHm0B4su0dfp39Omy8+DrQ/dDctu68CS69uw7vFW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58G5lLEtJYb/5LTFyNzuPzn9LoOcPKScl2Bdy/7XOiqE0/gPTgz/RVIeKgSr1pEylxERkTrhtD5IyTWS6pBIiqGCsTxktFfKNaSClLYwj5bHkDL+w6nPwiWGCnLyUBEjOONBBd63kzOTyYT+/fujf//+bvtOP/10VFZWarYde+yxGDlyJEaOHOn3Z/MvGlH4UvT7gWFDSntV5KEkhv8h5LRFSIxgfQ5jqI+hAvMIDSntlXItM4b6GMEipb1S+iyS8oikGMHCWpcxIkU4tZdjhjEihZQ+k9LvkZRHJMUIFintZQyZMVQIq+ep/oeIqH5nDPUxgkVKexlDPeYRGtHWXhKFLxoREREREREREREREREREREREZEuvmhERERERERERERERERERERERES6+KIRERERERERERERERERERERERHp4otGRERERERERERERERERERERESkiy8aERERERERERERERERERERERGRLr5oRCFiVhBCQYygfU4YtVePijwiqS0qGMqD/a5cROUh5fqQkkewPkdKe4XkEVFjSoGwupYViKg8pIwHIXlIuZaN5BFR/e5/CCUiamwrEKxrLJzaK2bc+R8irPo9GCIqjwgbd8EQUXlIWdvDqE/Z7+oxDy0pc7uUe51g4dhWL5zykJKrClLawjy0ImmOMfZBMmJIOf8UlfiiEQVNoKc6k8mkLJY/udqyELLEwAz/+8VXDOP9ru78+BNdRX/4zMNgf/juUwV5GPgcozH8ysPaGL/yUHjKfPa7gvjGr8MAxzB8HfqfSODndnWx1MztgZ1TjSYS+Lnd/xgqyJnb/c9DydyuIIhJQV+pGQ8y6jYjVMypwV0ffK11CtYHBVSOWP9qDAV1ioI8bMJhLlOTh//1spI8DB6n4l4o8OuD/zFsAj/+VYw7Www/8rDXVIFlfNwFlor5X8z9kpCaSiUV4yHUeRiJoWTOVJCHUSquQylrWaCpmFNVPE9V+UxWBTlrTHCeQfqVh+F1KtBtkTGnButZqIoYKmodFedfBTlzu4zZ3TG3h/ZaVlH7qxTw7xeUzO3+f2enJA+DWYRTvaRiPAS6TiUKJr5oREEjozwCTEGagqOtvfqk5CGflBeQhaQRvP+4KDgfo0tKHnISIdV4akNDztwuJJEow16PXGLOrZhEootZyOQuJI0W8ec+VeVa5s99exh2u1+ktNfo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TnO7knpZRR4Gj5MytgP+qo2QQeV4BkUUOfiiERERERERERERERERERERERER6eKLRkREREREREREREREREREREREpIsvGhERERERERERERERERERERERkS6+aERERERERERERERERERERERERLr4ohEREREREREREREREREREREREenii0ZERERERERERERERERERERERKSLLxpRhDOHOgEKGCnnNsryMEdZe3VJySPasN8jl5RzG2V5cG6ngOO5DQ0p/c48QkLM3B5tpPR7lOUh5XqXkoeY80/q8dyGhpR+Zx4hwbk9gknpUyl5BIuU9jKPqCZmbicKb3zRiGQwmUKdAQBARhaASUh/BIuU1hrt92grQaS01yzkSpGSR1gQ0lUmIYlE2dQup98NHhdtY1tKe6XkQeEn2uZUowL9rMx4v8s4QdE2x/jTXo6p1gv0dWb8PlXGSTSbZeQRLH5Nu9HVVWJIme+M3i8Ffo4JaPiwJaXf5TyTiy5y5nYOUKOMjykpYzvAeQQ0esuJqVNDnYCVlDzCgZw6RUYicvqDyIIvGhERERERERERERERERERERERkS6+aERERERERERERERERERERERERLr4ohEFjUnIHwQMVh6R0F6VP70gpT/CgVnI78MKSSNo/cF+1zJzzEYsKddYtJHS7Tz/oSFljSH1pJxbGVkED/tdS0h3BI2U+9Roq5fDb9wFNl+j/RFtz0IC/WsOxvudwo2QKSbKRqygfheSBxGpJWVoByuP8KuXA0tIdxBRAPFFIyIiojAk5YG1lDyCRUp7peRBFCmkjCkpeUQb9jsFmpRrTEoeREQUqbjOUGBJeYlQSh7BEm3tJYoWUsa2lDyCJdraS5GNLxpRaJiibCqV0l4peRCRWlLGtpQ8gkVKe6XkQRQppIwpIWkQkWJS5hhJ2CcUaLzGQkNKv0vJg4jU4tgODfY7UWSSMral5BEs0dZeijh80YhCw8jfzNM7Jmh/d0/B56jIlTHUC6c8pOSqgpS2RFIejNGaD1IQgjGUx1AhnPJQkmsYtTcYpFzLSmL4H0JMW4x9kM7uIOUhpc8iaUypEEl5GIoRTu0Vcr1LiaGCkDTk9AfHXUhIGVOM0ZoP0tnNuT0kmIdW0O51IugeQwUpY0rKva4KUq6hcJrbVWAeWmLGtpC6Xcq4DKcYRK0UsBeNLr74YrRt29b+P0cddRRMJhOmTJni8fhbb70VCQkJmn8zfPjwQKVHIWAO8H+WrTK6P7naXkBV0V41Xz8GNg+j0QN//o3FD/SSq+IFZJOCILb+8Ke9atoCax4y3sz2lYfKfvcvD2OfFfAYCtqigsqX+v2a2+1jKpLmdhXXUGAZX2MCS82YUpCHihhC5nYpdZuRGCpqHaNrjJp52TsxdZvCyV1FreNf7S9rffDF+HUY6DyMHRcWdZvfWaidl1UIh/t2tffcAb5PUXC9BzENMePOdwz/SblvV0FeTeVDEOf/QN9zqVjLVFAxpmyazf4/C/XnilRzj6GuLlNByvMSn/cHKuZDg8cFPI8gtiXQpNV2AZ/bDech4z5VSt0WaI7+CO2zH1sMOXO7d0rqZQW1TjDn5Uh6vhzoaI5ax39SxgNRwF40ys7ORmVlpf1/Pv30U5x44om45557vP6bd955R/NvXnnllUClR0RERERERERERERERERERERELRC0n0777rvv8NxzzyEpKSlYH0lERERERERERERERERERERERIoE5UWjhQsXYseOHUhOTvZ53HfffYfjjz8eF1xwAd577z1UVlbqxi4oKEB2drbmf/Ly8lSlTkRERERERERERERERERERERECNKLRsOHD8fdd9+Ns846y+sxH3/8MXbu3IkjR45g/PjxmDNnDp577jlDsTt06KD5n27dugEA1q1bh4yMDAwaNAjFxcXo0qULAOC+++4DAHTv3h05OTkYOXIkpkyZgszMTAwYMADV1dXo1KmT5tiUlBRkZWVhzJgxGDNmDLKyspCSkqI5plOnTqiursaAAQOQmZmJKVOmYOTIkcjJyUH37t01x3bp0gXFxcUYNGgQMjIykJaWhmHDhiE/P9/+Qpbt2OTkZOTn52PYsGFIS0sLyza5Kigs1LRp7949bsc80LGjpk2uzDC7tclV9pYtbm1y5dlnp+YAANhmSURBVNymX3791W1/SWmppk3e2M7Tn3/+6bYv5YMPfOYAwO08uVqwcKHbefIUw3aexo4d6/EY5/PkjS3PN954w23fovRFmmuvvLzc7RjXa89VxuLFmmuvtq7O7RjXa89Xnl26dEFDY4Pbfk/jyVlhUaFmPK1cudLtGNfx5L5/FwDHeNq+fbvXPG1tctXY1Og2nlzNnTfXbY5wZjZDM0fM9nKtOs8R3thy+O2339z2ffb5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3n6WIMkhqzhOxEKUPJoCUa6UxME9KaK97nEf26OeY1paOxHjfFvedW/6RBlSBUlDOOLUy2LcIVHySJwYnoVVzKKliXc7a2q1TEt7Xo7lfNW8Yy3tusdCjJ4iznOqGFmIJ+5je9R5iEGUPBJFnLGdPTRaojynCDK0CzPHeIjSlkUZy0TJoykQZUwVrU8RiYILjSg5oplJI64obULTsSqrY1WIIUoewtw7Ub4pIoo8hLl3amAeSs2ob0eThzBjewu77pGDCBJDDRzbk0KY3wRqRn1KlDyEactRPUCokEYTuu4JwTyUEtXGBDnfROXKfheAeSix3zVZovRtVS4pa6qGpyHI/RelbzOPAKK0sQQRJldRrrsoMdQgynvMpjS2q4F5KIlyb0Wp20V5N5ygGMK0Q2qJuNCImg01F5TGtsJaUiGGeuI9TYny25XRfiuWKL/lHTaGCkE8K6xF+Q0cUX5HLmw7VPG6x5KHGr+BE3WMMN8Ap+Y3zcVCmN/yFeNyeKkxpqrTDuOrqc0xcY+hyjgVewxfCxGjY8S9P6jwzYuqxFCh1on+/ovfpzySPbb7rqka7TC+om9DYvyWb/h+KciYGnsIlZ4f1OxT0cSK/VuE4z12JzJGONGPd02h36mSiQARRKqpXET5aECUmircXVbjmTtaarw/EGVOjUZMv+WvRgwV3mN5iPJtRPGvqaMT/vlAjIJInZpKjPrQQ5zPBuL9/ij2WkeUdz/RtsSmNLbHwnNv1Zgf1BDuPbYoVHlOjfK48O+Poo0R31pHlG8BEmVsV6NeUiMPIjVxoREREREREREREREREREREREREUXEhUZERERERERERERERERERERERBQRFxoREREREREREREREREREREREVFEXGhEREREREREREREREREREREREQRcaERERERERERERERERERERERERFFxIVGREREREREREREREREREREREQUERcaERERERERERERERERERERERFRRFxoREREREREREREREREREREREREEXGhERERERERERERERERERERERERRcSFRkREREREREREREREREREREREFBEXGlGLIyXs58gJ+knhxXK+soqnIMr1aArUvO6xECQNyIm6IIKcsCBpQBYmE1KbKGNMSyNKn+L9Tw5e9+ZLlHsrTh6JSSRh9WEEYmQhzvVoiFieD9WcU2N6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rl/Q2F5Ua0erVuk433kAx9POgVXWumPIkCUd7LKEvDIrLuuWDl35IRzLvDRkf9AaWqG35giKUrrBJLUSv9bxG9tFqXX8a3+PU/vehC49zgWJoSl+o1HcFhoBQI8ePTB69GjvNwzZ7XZ06dIFEyZMCPk34bp3744dO3agT58+AICdO3fiwgsvxJEjRxr0N+E8N4ILjcQyc+ZM/P3vf092GkRERCFxniIiIpFxniIiIpFxniIiIpFxniIiIpE1dn1LstbjAHH802kAMGLECLz77rvYtWsXTCYTxo4dC71ej7vuuivo2NNPPx233HILnn76aZSWlqK0tBRPP/00Bg0a1OCTIiIiIiIiIiIiIiIiIiIiIiJqjpK5HieuC42efvppPPDAA7jxxhvRvn17rFmzBgsXLkTr1q1RUFCA1q1bY82aNd7jv/zyS3To0AE9e/ZEz549kZ2djRkzZsQzRUqg3r17JzsFIiKienGeIiIikXGeIiIikXGeIiIikXGeIiKi5iiZ63F0ap1EKJIk4fXXX8frr78etK9bt26ora1VbMvKysLMmTPjmRIl0TfffMNijoiIhMV5ioiIRMZ5ioiIRMZ5ioiIRMZ5ioiImqNkrseJ6zcaEfl78803k50CERFRvThPERGRyDhPERGRyDhPERGRyDhPERERqYsLjShhBg0alOwUiIiI6sV5ioiIRMZ5ioiIRMZ5ioiIRMZ5ioiISF1caEQJ8/PPPyc7BSIionpxniIiIpFxniIiIpFxniIiIpFxniIiIlIXFxpRwgwePDjZKRAREdWL8xQREYmM8xQREYmM8xQREYmM8xQREZG6uNCIEmbatGnJToGIiKhenKeIiEhknKeIiEhknKeIiEhknKeIiIjUxYVGlDATJkxIdgpERET14jxFREQi4zxFREQi4zxFREQi4zxFRESkLi40ooQZOHBgslMgIiKqF+cpIiISGecpIiISGecpIiISGecpIiIidXGhESVMYWFhslMgIiKqF+cpIiISGecpIiISGecpIiISGecpIiIidXGhESVMRUVFslMgIiKqF+cpIiISGecpIiISGecpIiISGecpIiIidXGhESXMgAEDkp0CERFRvThPERGRyDhPERGRyDhPERGRyDhPERERqYsLjShhJk2alOwUiIiI6sV5ioiIRMZ5ioiIRMZ5ioiIRMZ5ioiISF1caEQJ8/777yc7BSIionpxniIiIpFxniIiIpFxniIiIpFxniIiIlIXFxpRwgwaNCjZKRAREdWL8xQREYmM8xQREYmM8xQREYmM8xQREZG6uNCIEubnn39OdgpERET14jxFREQi4zxFREQi4zxFREQi4zxFRESkLi40ooQZMmRIslMgIiKqF+cpIiISGecpIiISGecpIiISGecpIiIidXGhESUM/wYuERGJjPMUERGJjPMUERGJjPMUERGJjPMUERGRurjQiBLmiy++SHYKRERE9eI8RUREIuM8RUREIuM8RUREIuM8RUREpC4uNKKEueyyy5KdAhERUb04TxERkcg4TxERkcg4TxERkcg4TxEREalLl+wE4qG2thYAsGHDhiRnQv62bt2KysrKZKdBREQUEucpIiISGecpIiISGecpIiISGecpIiISmWddi2edS1PQLBca7d69GwDw1ltvJTkTIiIiIiIiIiIiIiIiIiIiIqL6eda5NAXNcqHRsGHDAAAXXHABWrduneRsCAAKCgowatQofPjhh+jWrVuy0yEiIlLgPEVERCLjPEVERCLjPEVERCLjPEVERKKrra3F7t27vetcmgJJlmU52UlQ87d792706tULu3btwgUXXJDsdIiIiBQ4TxERkcg4TxERkcg4TxERkcg4TxEREalPk+wEiIiIiIiIiIiIiIiIiIiIiIhIfFxoREREREREREREREREREREREREEXGhERERERERERERERERERERERERRcSFRpQQ2dnZGDt2LLKzs5OdChERURDOU0REJDLOU0REJDLOU0REJDLOU0REROqTZFmWk50EERERERERERERERERERERERGJjd9oREREREREREREREREREREREREEXGhERERERERERERERERERERERERRcSFRkREREREREREREREREREREREFBEXGhERERERERERERERERERERERUURcaERERERERERERERERERERERERBFxoRHFnSzLGDt2LLp06YL09HQMGDAAu3btSnZaRETUxH377be45ppr0LZtW0iSBLvdrti/c+dODBgwAOnp6ejSpQteffVVyLLs3R/N/KRGDCIiapmef/559O7dG23btsUpp5yCv/3tbzh69KjimIKCAtx2221o06YNOnTogEcffRRWq1VxzKRJk9C9e3ekpaWhX79+WL16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DJuIiIiIiIiIiIiIiIiIiIiIiKge/NNpREREREREREREREREREREREQUERcaERERERERERERERERERERERFRRFxoREREREREREREREREREREREREEXGhERERERERERERERERERERERERRcSFRkREREREREREREREREREREREFBEXGhERERERERERERERERERERERUURcaERERERERERERERERERERERERBFxoREREREREREREREREREREREREUXEhUZERERERERERERERERERERERBQRFxoREREREREREREREREREREREVFEXGhEREREREREREREREREREREREQRcaERERERERERERERERERERERERFFxIVGREREREREREREREREREREREQUERcaERERERERERERERERERERERFRRP8PmGttSQgCgFQAAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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2Q9f61EZGRma/cUXprIDBw40Oh+e/u3bv89n7s3+4gvTdeR0Oi3jUlhY2Ozck1xrO5VVVabz9Prrr1vWTU1N1ZcWa8aStLPJfX7zli0+c++ee8Z4laWkpLjXVRvzlXvFRcVe5WPHjlVpWZnpWDZv2WKZe088+YTP9wlnfPqp6eesLM9405yxLD09XT/++GOzcm/58hXNzr3a2lqtXr1a9U6n+VieeMLqMJSRkaE333zLq7yqqkrl5eWme09uXp7P3Js2zXteZhWX0tKyFudebm6uGl8Dc+fOtaybmpqqjz/+2PK1pudv3759lvdzX31JSUlReXmFV/mhY2wcx6lTp1rOgceOHav8ggLTv5eXl2eZey+/8orP3Hv++edNP1dUVvoc93zl3vffr2lW7m3cuPGwuReqewla4/6IlhyT1Xv8rUHANyPNmTNHN954o95//30NGzbssHXPPvtsHX/88bLZbOrTp4/eeOMNrVy50udEX5Luuecebdq0yfTn5ZdfliQNGjRIQ4cO1UMPPaSkpCS98847kqQvv/xSkmuxoU+fPrrzzjs1fPhwDRkyRBMmTFBcXJz7jftDdSdPnqz+/ftr5MiRGjlypPr376/JDYs/h+p88skniouL04QJEzRkyBANHz5cd955p/r06eNe2DhU95133lFSUpIeeughDR06VMOGDdOYMWPUtWtX96atQ3Vfe+01de3aVWPGjNGwYcN+lsfU1GuvvaY2bdqYynr17KkY97s8AABd0UlEQVSkpCSvuslPPaU+ffp4lcfFxemWW281lZ1wwgnq37+/V93G/WxsyJAhOvvss5tV98wzz7TMYau6kjR06FDFxcWZyh78x4OWdYcMGaI///nPlq917tzZ9HOXE05wx6mxuLg43X///V7lVotqsTExeuihh7zKfW0YHDNmjE444QRT2cUXX2xZd9T/jdLw4d4PCJJ03XXXqfHko0uXLhpp8eaWZL155s4771SHDh28JhmHroPGRo4c6TP32rdPNJW1a9vOnXuN38gaM+Yen7k37pFHTDf98PAw9e/fX1GRkV71feXer371q2bV7dOnT4tz78Ru3Uz9s3oz7VA/HrHYLCHJ61pKSmpvnXuxcXrssce8yg/lXuN4RUVFWebe888/Z9mHMWPG6OSTTzaV9e59kvu/Gx/jjb//vc/cGzPmXtMEPD4+vsW5d8LxJ1jmXtOvILhq2DCfudfR4pP+kpKS1Llz5ybHcqPP3Hv1lVe9yvv372/5KYK+cu+aa6/xWbdxP7qccIJl7s2eNcurTHLl3oABA9T4Oj///PMt65599iCfCy+XXXaZ6ef4uDh37jXuX2xsjGUbntwzX6NWuffIw95vmkmu3Bs4YICpLDYmRpIUHR1tavuyyy7zmXv//ve/vR4QRo4cqaioKDVd/PWVez169PAqf+eddxQRYf6Ay3PPPddn7nU5oYtXeVJSkgYOHGjq30UXXWSde7Fxlm8E9O/fX3169/Yq9+STxzlnn215nqxyLyEhwTL3pr3l/ZAtuXLvsssuM7VxosW5kKR+/U73mXs33XST6efw8PBGuecRHR3d7NyTpIceekjR0dGmsv+77TbLPowZM0YXX3yR5Wt9+pxsavvsswf5zL3UD7zjNXLkSLVt29ZrLPOVe70tYvvOO+8oOsp8LH1PPtmde43799KLL1nmZFJSkq6+2jwOndznZMvci42Ntexf//79NWjQIK9yq9w7o18/y/P05ptvepVJ0rBhw3TJJZeYyrp08b6GJNfzhtXYIkmjRt1u+jkiPMKVNxbvAljdX63KJNeiddN8+uMfre/zDz30kAYPGWz5Wt++5vvreeed6/N57UOL63/48OFKTEz0Kre694wcOVL9zujnVf7JJ58oIiLcVHZSr16WufD6669bPit07drVq999T+5rmXuJiYmW88Y+ffro3HPPM5WFhYVZ5t7JffpYziGsjjsiIkLDhw9XWJj5sXuijw0Xw4YN0w3XX2/5WtNzfeopp/jMPau53YQJE7z6IbU89xISzP0YOnSoZd2HHnrI5/NC0/t83759feae1XkdPny4TjjhBK+x1qru74YPt3w+/OSTTxQVGWUqS2rf3p17jS/T5Kee8pl7d9x5h6kfbdu0scy9tm3b+sy9YcOu9DoWq9zr1q1bs3NPcp2npKQk07HceccdlnWHDRumO+643fK10047rUk/TvSZe//5t/cm7wkTJigiPNzrGK3y7CkfG/UmTJjgWitqVHbqqadY1r13zL0+8/L2JsfYqWNHd+41J5+GDx+uXr16eQ3jVnUvu/RSn7kXHWMew8Ma1sDi4+NNbY8ePdpn7v3TYkNN165dverHx8X5zL2m855D/WvquE6dWpx7vXr1MpVdfvnllnWvvOIK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AAAAAAAAAAAAAAAA4BdsRgIAAAAAAAAAAAAAAADgF2xGQlB06tRJEydOVKdOnY51VwC0cow3AIKF8QZAsDDeAAgWxhsAwcJ4AyBYGG8ABAvjDWBmMwzDONadAAAAAAAAAAAAAAAAAPDzxycjAQAAAAAAAAAAAAAAAPALNiMBAAAAAAAAAAAAAAAA8As2IwEAAAAAAAAAAAAAAADwCzYjAQAAAAAAAAAAAAAAAPALNiMBAAAAAAAAAAAAAAAA8As2IyHgDMPQxIkT1aVLF8XHx+uSSy7Rpk2bjnW3AISQjz76SBdffLHatWsnm82muro60+sbN27UJZdcovj4eHXp0kVPPPGEDMNwv96cccYfbQD4+Rs3bpz69++vdu3a6YQTTtDNN9+sffv2mers3btX11xzjdq2bauOHTvq3nvvVW1tralOSkqKevbsqbi4OA0aNEhLly71exsAft6efPJJ9e7dWwkJCerYsaOuvPJKbdiwwVSHOQ6AQBg+fLhsNpsWLlzoLluyZIkGDRqkuLg49erVS//9739Nf6empkZjxoxRx44d1bZtW11zzTVecyR/tAHg5+2JJ55QeHi42rRp4/5z8803u19nbgPA31asWKFLL71Ubdu2VWJioi644AI5nU5JjDkA/KNfv36muU1cXJxsNptmzpwpibEGOBpsRkLAPfvss5o2bZrmz5+vgoICXXjhhbryyitVUVFxrLsGIES0b99e99xzj1588UWv18rLy3XllVfqwgsvVEFBgebPn68333zTVPenxhl/tAGgdbDZbJo+fboKCgr0448/ymaz6dprr3W/7nQ6dc011ygpKUnZ2dlau3atli5dqoceeshd59NPP9X48eP1zjvvqKSkRHfddZd++9vfut9s80cbAH7+brrpJq1Zs0alpaU6cOCArrjiCl155ZWqr6+XxBwHQGC8++67qqqqMpXt2bNHV199te666y6VlJRo+vTpGjdunHtxXZIeeOABLVu2TGvXrlV2draSkpJ03XXXud/s80cbAFqH888/XxUVFe4/H374oSTmNgD8b8WKFbrqqqt0++23Kzc3VwUFBXrhhRdks9kYcwD4zebNm01zm2eeeUYdOnTQVVddxVgDHC0DCLCePXsaL774ovtnh8NhdOzY0Xj33XePYa8AhKLFixcbkgyHw+Eumz59utGpUydT2YsvvmicdNJJ7p9/apzxRxsAWqf169cbkoyioiLDMAxjyZIlRkREhJGfn++uM2vWLCMuLs6w2+2GYRjGr371K+P+++83tTNgwADjqaee8lsbAFqX6upq44UXXjAkGXl5eYZhMMcB4H/79u0zunXrZuzZs8eQZHz99deGYRjGE088YQwYMMBU9/777zcuvfRSwzAMw263G7GxscasWbPcr+fn5xsRERHG0qVL/dYGgJ+/iRMnGhdeeKHla8xtAPjbRRddZDzwwAOWrzHmAAiUU0891Xj44YcNw2CsAY4Wn4yEgCotLVVWVpaGDBniLouIiNDAgQO1fv36Y9gzAD8XGzZs0MCBAxUREeEuGzx4sHbt2qWysrJmjTP+aANA67RgwQL16NFD7du3l+QaL0466SR17NjRXWfw4MGqqqrS9u3b3XUajxeH6jQec462DQCtw9y5c5WYmKiYmBg98MADGjt2rDp16iSJOQ4A/zIMQ3feeacee+wxde/e3fTaT807tm3bJrvdbqrTsWNH9erVyzTeHG0bAFqH9evXq1OnTurRo4dGjhyp3bt3S2JuA8C/qqqqtHz5coWHh2vIkCHq0KGDzj77bH322WeSGHMABMY333yj7du3a/To0ZIYa4CjxWYkBFRZWZkkKTEx0VTevn1792sAcDhlZWWWY8ih15ozzvijDQCtz8KFC/Xkk0/qtddec5f91HhxuDrNHXOa0waA1uHqq69WSUmJCgsL9dxzz+n88893v8YcB4A//fe//5VhGPrLX/7i9Vpz5i7SkY03LWkDwM/fjTfeqC1btigvL0/Lly+XzWbT5ZdfroqKCuY2APyqqKhITqdT77zzjlJSUpSbm6t//vOfuvnmm7VixQrGHAABMXXqVA0bNky9evWSxNoNcLQifroKcOTatWsnSSopKTGVFxcXq2vXrsegRwB+btq1a6f9+/ebyoqLi92vGYYh6fDjjD/aANC6zJkzR7feeqvef/99DRs2zF3erl07y7Hg0GuHq/NTr7ekDQCtS1JSkv7+97+rffv26tu3r8466yzmOAD8ZufOnUpOTtbKlSstX2/O3EVyjRWxsbE+6xxtGwB+/s444wz3f3ft2lXTpk1TQkKCli9fztwGgF+1bdtWknT77bdr8ODBkqTf/e53+vWvf61Zs2Yx5gDwuwMHDmj27NmaNWuWu4yxBjg6fDISAiohIUE9e/bU999/7y6rq6tzfyQdAPyUAQMGaP369aqrq3OXrVmzRieddJLatWvXrHHGH20AaD0++OAD3XLLLfr44481fPhw02sDBgzQ7t27VVhY6C5bs2aN4uLi1LdvX3edxuPFoTqNx5yjbQNA6+N0OuVwOLRjxw5JzHEA+M+yZctUWFios88+Wx07dnR/Vezvf/97/eUvf/nJeccpp5yi2NhYU52CggJlZWWZxpujbQNA62Oz2WSz2WQYBnMbAH6VkJCg3r17y2azWb7OmAPA3/73v/+pW7duuuqqq9xljDXAUTKAAPvPf/5jdOvWzcjIyDCqqqqM8ePHG126dDHKy8uPddcAhIi6ujrDbrcb8+fPNyQZFRUVht1uN+rr642ysjLj+OOPN8aPH29UVVUZGRkZRrdu3YznnnvO/fd/apzxRxsAWodXXnnFSExMNJYuXWr5en19vdG/f39j1KhRRllZmbFnzx7jrLPOMv72t7+563zyySdGQkKCsXTpUqOmpsaYOnWqER8fb+zdu9dvbQD4+XvxxReNgwcPGoZhGHl5ecaf//xnIyEhwThw4IBhGP6ZnzDHAWAYhlFZWWns27fP9EeS8eGHHxqFhYVGVlaWERsba0ydOtWoqakxli5daiQkJBifffaZu4177rnHOOuss4w9e/YYZWVlxv/93/8ZZ511llFfX28YhuGXNgD8/H388cdGfn6+YRiGcfDgQeO2224zevToYZSVlTG3AeB3L774otG5c2dj/fr1Rn19vTF79mwjOjraWLlyJWMOAL9yOBxGly5djGeeecZUzlgDHB02IyHgnE6nMWHCBKNz585GbGyscfHFFxsbN2481t0CEELefvttQ5LXn8WLFxuGYRg//PCDcdFFFxmxsbFG586djYkTJxpOp9P995szzvijDQA/f5KMiIgIIz4+3vSn8eakrKws47e//a0RHx9vJCUlGWPGjDGqq6tN7bzyyitG9+7djZiYGGPgwIHGkiVLTK/7ow0AP29XX321cdxxxxlxcXHG8ccfb1x77bXG999/b6rDHAdAoEgyvv76a/fPixcvNgYMGGDExMQYPXr0MFJSUkz1q6urjXvuucdISkoy4uPjjd/+9rdem6T90QaAn7drr73W6NixoxEbG2t06dLFuOmmm4wdO3a4X2duA8DfJk+ebJx44olGmzZtjIEDBxqzZs1yv8aYA8BfZsyYYURHR7s3XTfGWAMcOZthNHwRIQAAAAAAAAAAAAAAAAAchbBj3QEAAAAAAAAAAAAAAAAArQObkQAAAAAAAAAAAAAAAAD4BZuRAAAAAAAAAAAAAAAAAPgFm5EAAAAAAAAAAAAAAAAA+AWbkQAAAAAAAAAAAAAAAAD4BZuRAAAAAAAAAAAAAAAAAPgFm5EAAAAAAAAAAAAAAAAA+AWbkQAAAAAAAAAAAAAAAAD4BZuRAAAAAAAAAAAAAAAAAPgFm5EAAAAAAAAAAAAAAAAA+AWbkQAAAAAAAAAAAAAAAAD4BZuRAAAAAAAAAAAAAAAAAPgFm5EAAAAAAAAAAAAAAAAA+AWbkQAAAAAAAAAAAAAAAAD4xf8D1lhMrwB/vfYAAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" + "name": "stdin", + "output_type": "stream", + "text": [ + "ipdb> c\n" + ] } ], "source": [ - "# neuron parameters\n", - "params = p\n", + "# experiments/sequence_learning_and_prediction/local_simulation.py\n", + "\n", + "def generate_sequences(params, fname):\n", + " \"\"\"Generate sequence of elements using three methods:\n", + " 1. randomly drawn elements from a vocabulary\n", + " 2. sequences with transition matrix\n", + " 3. higher order sequences: sequences with shared subsequences\n", + " 4. hard coded sequences\n", + "\n", + " Parameters\n", + " ----------\n", + " params : dict\n", + " dictionary contains task parameters\n", + " fname : str\n", + "\n", + " Returns\n", + " -------\n", + " sequences: list\n", + " test_sequences: list\n", + " vocabulary: list\n", + " \"\"\"\n", + "\n", + " task_name = params['task_name']\n", + " task_type = params['task_type']\n", + " \n", + " # set of characters used to build the sequences\n", + " vocabulary = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',\n", + " 'U', 'V', 'W', 'X', 'Y', 'Z'][:params['vocab_size']]\n", + " sequences = []\n", + "\n", + " # create high order sequences, characters are drawn without replacement\n", + " if task_name == \"high_order\":\n", + "\n", + " if (params['num_sequences'] % params['num_sub_seq'] != 0):\n", + " raise ZeroDivisionError(\n", + " 'for high order sequences number of sequences needs (\"num_sequences\") to be divisible by num_sub_seq')\n", + "\n", + " num_sequences_high_order = int(params['num_sequences'] / params['num_sub_seq'])\n", + " for i in range(num_sequences_high_order):\n", + " characters_sub_seq = copy.copy(vocabulary)\n", + " sub_seq = random.sample(characters_sub_seq, params[\"length_sequence\"] - 2)\n", + " for char in sub_seq:\n", + " characters_sub_seq.remove(char)\n", + "\n", + " for j in range(params['num_sub_seq']):\n", + " # remove the characters that were chosen for the end and the start of the sequence\n", + " # this is to avoid sequences with adjacent letters of the same kind\n", + " # we will add this feature to the code asap \n", + " end_char = random.sample(characters_sub_seq, 1)\n", + " characters_sub_seq.remove(end_char[0])\n", "\n", - "neuron_1 = nest.Create(params['soma_model'], params=params['soma_params'])\n", - "neuron_2 = nest.Create(params['soma_model'], params=params['soma_params'])\n", + " start_char = random.sample(characters_sub_seq, 1)\n", + " characters_sub_seq.remove(start_char[0])\n", "\n", - "# connect two neurons\n", - "nest.Connect(neuron_1, neuron_2, syn_spec=params['syn_dict_ee'])\n", + " sequence = start_char + sub_seq + end_char\n", + " sequences.append(sequence)\n", "\n", - "# creation of spike generator\n", - "time_neuron_1 = 10.\n", - "time_neuron_2 = time_neuron_1 + params['DeltaT']\n", + " # randomly shuffled characters\n", + " elif task_name == \"random\":\n", + " sequences = [random.sample(vocabulary, length_seq) for _ in range(params['num_sequences'])]\n", "\n", - "training_steps = 120\n", - "between_exc = 5*params['DeltaT']\n", + " # create sequences using matrix transition \n", + " elif task_name == \"structure\":\n", + " matrix_transition = defaultdict(list)\n", + " for char in vocabulary:\n", + " x = np.random.choice(2, len(vocabulary), p=[0.2, 0.8])\n", + " matrix_transition[char] = x / sum(x)\n", "\n", - "times_neuron_1 = [time_neuron_1+i*between_exc for i in range(training_steps)]\n", - "times_neuron_2 = [time_neuron_2+i*between_exc for i in range(training_steps)]#[:10]\n", + " for _ in range(params['num_sequences']):\n", + " sequence = random.sample(vocabulary, 1)\n", + " last_char = sequence[-1]\n", + " for _ in range(length_seq - 1):\n", + " sequence += np.random.choice(vocabulary, 1, p=matrix_transition[last_char])[0]\n", + " last_char = sequence[-1]\n", "\n", - "# create the spike generators \n", - "# disable spike generator for the interval 'dis', to see the affect of stpd\n", - "dis = 20\n", - "spike_generator_1 = nest.Create('spike_generator', params={'spike_times': times_neuron_1})\n", - "spike_generator_2 = nest.Create('spike_generator', params={'spike_times': times_neuron_2})\n", + " sequences += [sequence]\n", + " else:\n", "\n", - "# connect the spike generator \n", + " # hard coded sequences \n", + " if task_type == 1:\n", + " sequences = [['A', 'D', 'B', 'E'], ['F', 'D', 'B', 'C']]\n", + " elif task_type == 2:\n", + " sequences = [['E', 'N', 'D', 'I', 'J'], ['L', 'N', 'D', 'I', 'K'], ['G', 'J', 'M', 'C', 'N'], \n", + " ['F', 'J', 'M', 'C', 'I'], ['B', 'C', 'K', 'H', 'I'], ['A', 'C', 'K', 'H', 'F']]\n", + " elif task_type == 3:\n", + " sequences = [['E', 'N', 'D', 'I', 'J'], ['L', 'N', 'D', 'I', 'K'], ['G', 'J', 'M', 'E', 'N'], \n", + " ['F', 'J', 'M', 'E', 'I'], ['B', 'C', 'K', 'B', 'I'], ['A', 'C', 'K', 'B', 'F']]\n", + " else:\n", + " sequences = [['A', 'D', 'B', 'G', 'H', 'E'], ['F', 'D', 'B', 'G', 'H', 'C']]\n", "\n", - "params['R_m_soma'] = params['soma_params']['tau_m'] / params['soma_params']['C_m']\n", - "params['syn_dict_ex']['weight'] = psp_max_2_psc_max(params['J_EX_psp'], \n", - " params['soma_params']['tau_m'], \n", - " params['soma_params']['tau_syn1'], \n", - " params['R_m_soma'])\n", + " # test sequences used to measure the accuracy \n", + " test_sequences = sequences\n", "\n", - "syn_dict_ff = {'receptor_type': 1, 'weight': params['syn_dict_ex']['weight'], 'delay': params['syn_dict_ex']['delay']}\n", - "nest.Connect(spike_generator_1, neuron_1, syn_spec=syn_dict_ff)\n", - "nest.Connect(spike_generator_2, neuron_2, syn_spec=syn_dict_ff)\n", + " fname = 'training_data'\n", + " fname_voc = 'vocabulary'\n", + " print(\"\\nSave training data to %s\" % (fname))\n", + " np.save('%s' % os.path.join( fname), sequences)\n", + " np.save('%s' % os.path.join( fname_voc), vocabulary)\n", "\n", - "# record voltage neuron 1, neuron 2\n", - "dap_mm_1 = nest.Create('multimeter', {\"record_from\": [\"dAP_trace\"]})\n", - "nest.Connect(dap_mm_1, neuron_1)\n", + " return sequences, test_sequences, vocabulary\n", "\n", - "dap_mm_2 = nest.Create('multimeter', {\"record_from\": [\"dAP_trace\"]})\n", - "nest.Connect(dap_mm_2, neuron_2)\n", "\n", - "vm_1 = nest.Create('voltmeter')\n", - "vm_2 = nest.Create('voltmeter')\n", - "nest.Connect(vm_1, neuron_1)\n", - "nest.Connect(vm_2, neuron_2)\n", + "def generate_reference_data(params):\n", "\n", + " #############################################################\n", + " # get network and training parameters \n", + " # ===========================================================\n", + " p = copy.deepcopy(params)\n", + " PS = copy.deepcopy(p)\n", "\n", - "sd_1 = nest.Create('spike_recorder')\n", - "nest.Connect(neuron_1, sd_1)\n", + " # parameter-set id from command line (submission script)\n", + " PL = shtm.helper.parameter_set_list(PS) \n", + " params = PL[0]\n", "\n", - "sd_2 = nest.Create('spike_recorder')\n", - "nest.Connect(neuron_2, sd_2)\n", + " # start time \n", + " time_start = time.time()\n", "\n", + " # ###############################################################\n", + " # specify sequences\n", + " # ===============================================================\n", + " sequences, _, vocabulary = generate_sequences(params['task'], PL[0]['label'])\n", "\n", - "synColl = nest.GetConnections(synapse_model=synapse_model_name)\n", - "assert len(synColl) == 1\n", + " # ###############################################################\n", + " # create network\n", + " # ===============================================================\n", + " model_instance = Model(params, sequences, vocabulary)\n", + " time_model = time.time()\n", "\n", - "print('\\n simulate')\n", - "zs = [0.,1.,2.]\n", - "weights_cs = []\n", - "permanences_cs = []\n", + " model_instance.create()\n", + " time_create = time.time()\n", "\n", - "for z in zs:\n", + " # ###############################################################\n", + " # connect the netwok\n", + " # ===============================================================\n", + " print(\"connect().....\")\n", "\n", - " weights = []\n", - " permanences = []\n", - " last_sim_time = 0\n", + " model_instance.connect()\n", + " print(\"connect()ed\")\n", + " time_connect = time.time()\n", " \n", - " spike_generator_1.origin = nest.GetKernelStatus('biological_time')\n", - " spike_generator_2.origin = nest.GetKernelStatus('biological_time')\n", + " # store connections before learning\n", + " print(\"Store connections.....\")\n", + " if params['store_connections']:\n", + " model_instance.save_connections(fname='ee_connections_before')\n", + "\n", + " # ###############################################################\n", + " # simulate the network\n", + " # ===============================================================\n", + " print(\"Simulating.....\")\n", + "\n", + " model_instance.simulate()\n", + " time_simulate = time.time()\n", + "\n", + "\n", + "\n", + " print(\"Store connections.....\")\n", " \n", - " # connect two neurons\n", - " synColl.set({'permanence': 1.}) \n", + " # store connections after learning\n", + " if params['store_connections']:\n", + " model_instance.save_connections(fname='ee_connections')\n", "\n", - " for i in range(training_steps):\n", + " print(\n", + " '\\nTimes of Rank {}:\\n'.format(\n", + " nest.Rank()) +\n", + " ' Total time: {:.3f} s\\n'.format(\n", + " time_simulate -\n", + " time_start) +\n", + " ' Time to initialize: {:.3f} s\\n'.format(\n", + " time_model -\n", + " time_start) +\n", + " ' Time to create: {:.3f} s\\n'.format(\n", + " time_create -\n", + " time_model) +\n", + " ' Time to connect: {:.3f} s\\n'.format(\n", + " time_connect -\n", + " time_create) +\n", + " ' Time to simulate: {:.3f} s\\n'.format(\n", + " time_simulate -\n", + " time_connect))\n", "\n", - " # change toward using the weight recorder, example:\n", - " #wr = nest.Create('weight_recorder')\n", - " #nest.CopyModel('stdp_synapse', 'stdp_synapse_rec', {'weight_recorder': wr})\n", + " #\n", + " # PLOTTING\n", + " #\n", "\n", - " nest.SetStatus(neuron_1, {'dAP_trace':z})\n", - " nest.SetStatus(neuron_2, {'dAP_trace':z})\n", + " nest.raster_plot.from_device(model_instance.spike_recorder_soma)\n", + " fname_snip = str(time.time())\n", + " plt.savefig(\"/tmp/nestml_raster_\"+fname_snip + \".png\")\n", "\n", - " # simulate the network\n", - " sim_time = times_neuron_1[i] - last_sim_time \n", - " nest.Simulate(sim_time)\n", - " last_sim_time = times_neuron_1[i]\n", + " for gid in [1, 100, 200]:\n", "\n", - " w_after = synColl.weight\n", - " p_after = synColl.permanence\n", - " weights.append(w_after)\n", - " permanences.append(p_after)\n", + " \n", + " events = model_instance.spike_recorder_soma_.get()[\"events\"]\n", + " times = events[\"times\"]\n", + " senders = events[\"senders\"]\n", + " idx = np.where(senders == gid)[0]\n", + " spike_times = events[\"times\"][idx]\n", + "\n", + " events = model_instance.multimeter_vm_eval_.get()[\"events\"]\n", + " times = events[\"times\"]\n", + " senders = events[\"senders\"]\n", + " idx = np.where(senders == gid)[0]\n", + " V_m = events[\"V_m\"][idx]\n", + " times = times[idx]\n", + " assert len(times) > 100\n", "\n", " \n", - " fig, ax = plt.subplots(figsize=(24,6))\n", - " ax.plot(nest.GetStatus(vm_1)[0]['events'][\"times\"], nest.GetStatus(vm_1)[0]['events'][\"V_m\"], label=\"vm1\")\n", - " max_V_m = np.amax(nest.GetStatus(vm_1)[0]['events'][\"V_m\"])\n", - " ax.scatter(nest.GetStatus(sd_1)[0]['events']['times'], max_V_m * np.ones_like(nest.GetStatus(sd_1)[0]['events']['times']))\n", - " ax.plot(nest.GetStatus(vm_2)[0]['events'][\"times\"], nest.GetStatus(vm_2)[0]['events'][\"V_m\"], label=\"vm2\")\n", - " ax.scatter(nest.GetStatus(sd_2)[0]['events']['times'], max_V_m * np.ones_like(nest.GetStatus(sd_2)[0]['events']['times']))\n", - " ax.legend()\n", - " ax_ = ax.twinx()\n", - " ax_.plot(nest.GetStatus(dap_mm_1)[0]['events'][\"times\"], nest.GetStatus(dap_mm_1)[0]['events'][\"dAP_trace\"], label=\"dAP\")\n", - " ax_.plot(nest.GetStatus(dap_mm_2)[0]['events'][\"times\"], nest.GetStatus(dap_mm_2)[0]['events'][\"dAP_trace\"], label=\"dAP\")\n", - " \n", - " fig.savefig(\"/tmp/foo\" + str(z) + \".png\")\n", + " fig, ax = plt.subplots()\n", + " ax.plot(times, V_m)\n", + " ax.scatter(spike_times, np.zeros_like(spike_times), marker=\"D\", alpha=.5)\n", + " ax.set_ylabel(\"V_m\")\n", + " fig.savefig(\"/tmp/nestml_V_m_\" + str(gid) + \"_\" + fname_snip + \".png\")\n", + " \n", + " events = model_instance.multimeter_idend_eval_.get()[\"events\"]\n", + " times = events[\"times\"]\n", + " senders = events[\"senders\"]\n", + " idx = np.where(senders == gid)[0]\n", + " I_dend = events[\"I_dend\"][idx]\n", + " times = times[idx]\n", + " assert len(times) > 100\n", + " \n", + " fig, ax = plt.subplots()\n", + " ax.plot(times, I_dend)\n", + " ax.set_ylabel(\"I_dend\")\n", + " fig.savefig(\"/tmp/nestml_I_dend_\" + str(gid) + \"_\" + fname_snip + \".png\")\n", + "\n", + " events = model_instance.spike_recorder_inh_.get()[\"events\"]\n", + " times = events[\"times\"]\n", + " senders = events[\"senders\"]\n", + "\n", + " fig, ax = plt.subplots()\n", + "\n", + " for i, gid in enumerate(np.unique(senders)):\n", + " idx = np.where(senders == gid)[0]\n", + " spike_times = events[\"times\"][idx]\n", + "\n", + " ax.scatter(spike_times, i * np.ones_like(spike_times), marker=\"D\", alpha=.5)\n", + " ax.set_ylabel(\"Inhibitory neuron idx\")\n", + " fig.savefig(\"/tmp/nestml_inhibitory_spikes_\" + str(gid) + \"_\" + fname_snip + \".png\")\n", " \n", - " weights_cs.append(weights)\n", - " permanences_cs.append(permanences)\n", + " \n", + " # print Ic\n", + " #zs = np.array([nest.GetStatus(model_instance.exc_neurons)[i]['z'] for i in range(params['M']*params['n_E'])])\n", + " #id_zs = np.where(zs>0.5)\n", + " #print(zs[id_zs])\n", + "\n", + " # load spikes from reference data\n", + " somatic_spikes = shtm.helper.load_spike_data(model_instance.data_path, 'somatic_spikes')\n", + " idend_eval = shtm.helper.load_spike_data(model_instance.data_path, 'idend_eval')\n", + " excitation_times = shtm.helper.load_data(model_instance.data_path, 'excitation_times')\n", + "\n", + " # get recoding times of dendriticAP\n", + " idend_recording_times = shtm.helper.load_data(model_instance.data_path, 'idend_recording_times')\n", + " characters_to_subpopulations = shtm.helper.load_data(model_instance.data_path, 'characters_to_subpopulations')\n", + "\n", + " seq_avg_errors, seq_avg_false_positives, seq_avg_false_negatives, _ = shtm.helper.compute_prediction_performance(somatic_spikes, idend_eval, idend_recording_times, characters_to_subpopulations, model_instance.sequences, model_instance.params)\n", + "\n", + " # get number of active neuron for each element in the sequence\n", + " number_elements_per_batch = sum([len(seq) for seq in model_instance.sequences])\n", + " start_time = excitation_times[-number_elements_per_batch] - 5 \n", + " end_time = excitation_times[-1] + 5\n", + "\n", + " idx_times = np.where((np.array(excitation_times) > start_time) & (np.array(excitation_times) < end_time)) \n", + " excitation_times_sel = np.array(excitation_times)[idx_times]\n", + "\n", + " num_active_neurons = shtm.helper.number_active_neurons_per_element(model_instance.sequences, somatic_spikes[:,1], somatic_spikes[:,0], excitation_times_sel, params['fixed_somatic_delay'])\n", + "\n", + " print(\"\\n##### testing sequences with number of somatic spikes \")\n", + " count_false_negatives = 0\n", + " for i, (sequence, seq_counts) in enumerate(zip(model_instance.sequences, num_active_neurons)): \n", + " seq = ''\n", + " for j, (char, counts) in enumerate(zip(sequence, seq_counts)):\n", + " seq += str(char)+'('+ str(seq_counts[char])+')'.ljust(2)\n", + "\n", + " if j != 0 and seq_counts[char] > 0.5*params['n_E']:\n", + " count_false_negatives += 1\n", + "\n", + " print(\"sequence %d: %s\" % (i, seq)) \n", + "\n", + " print(\"False negative counts\", count_false_negatives) \n", + "\n", + " print(\"\\n### Plasticity parameters\")\n", + " print(\"lambda plus: %0.4f\" % params['syn_dict_ee']['lambda_plus'])\n", + " print(\"lambda homeostasis: %0.4f\" % params['syn_dict_ee']['lambda_h'])\n", + " print(\"lambda minus: %0.4f\" % model_instance.params['syn_dict_ee']['lambda_minus']) \n", + " print(\"inh factor:\", params['inh_factor'])\n", + " print(\"excitation step %0.1fms\" % params['DeltaT']) #30-50 \n", + " print(\"seed number: %d\" % params['seed']) \n", + " print(\"number of learning episodes: %d\" % params['learning_episodes'])\n", + "\n", + " return model_instance\n", "\n", - "# store postprocessed\n", - "params['zs'] = zs\n" + "model_instance = generate_reference_data(params)\n", + "\n", + "\n" ] }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXGeneral:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXGeneral:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXGeneral ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXGeneral.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXGeneral:style=italic:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXGeneral:style=italic:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXGeneral ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXGeneralItalic.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXGeneral:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXGeneral:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0 to STIXGeneral ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXGeneralBol.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXGeneral:style=italic:variant=normal:weight=bold:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXGeneral:style=italic:variant=normal:weight=bold:stretch=normal:size=8.0 to STIXGeneral ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXGeneralBolIta.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXNonUnicode:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXNonUnicode:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXNonUnicode ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXNonUni.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXNonUnicode:style=italic:variant=normal:weight=normal:stretch=normal:size=8.0.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "---------------------------------\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "DEBUG:findfont: Matching STIXNonUnicode:style=italic:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXNonUnicode ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXNonUniIta.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXNonUnicode:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXNonUnicode:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0 to STIXNonUnicode ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXNonUniBol.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXSizeOneSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXSizeOneSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXSizeOneSym ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXSizOneSymReg.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXSizeTwoSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXSizeTwoSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXSizeTwoSym ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXSizTwoSymReg.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXSizeThreeSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXSizeThreeSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXSizeThreeSym ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXSizThreeSymReg.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXSizeFourSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXSizeFourSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXSizeFourSym ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXSizFourSymReg.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching STIXSizeFiveSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching STIXSizeFiveSym:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to STIXSizeFiveSym ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/STIXSizFiveSymReg.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching cmsy10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching cmsy10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to cmsy10 ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/cmsy10.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching cmr10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching cmr10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to cmr10 ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/cmr10.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching cmtt10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching cmtt10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to cmtt10 ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/cmtt10.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching cmmi10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching cmmi10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to cmmi10 ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/cmmi10.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching cmb10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching cmb10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to cmb10 ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/cmb10.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching cmss10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching cmss10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to cmss10 ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/cmss10.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching cmex10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching cmex10:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to cmex10 ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/cmex10.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=italic:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=italic:variant=normal:weight=normal:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Oblique.ttf') with score of 0.150000.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=normal:variant=normal:weight=bold:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Bold.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=italic:variant=normal:weight=bold:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching DejaVu Sans:style=italic:variant=normal:weight=bold:stretch=normal:size=8.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-BoldOblique.ttf') with score of 0.150000.\n", - "DEBUG:findfont: Matching DejaVu Sans Mono:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching DejaVu Sans Mono:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to DejaVu Sans Mono ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSansMono.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching DejaVu Sans Display:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0.\n", - "DEBUG:findfont: Matching DejaVu Sans Display:style=normal:variant=normal:weight=normal:stretch=normal:size=8.0 to DejaVu Sans Display ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSansDisplay.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=9.6.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=9.6 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=9.6.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=9.6 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=6.0.\n", - "DEBUG:findfont: Matching sans\\-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=6.0 to DejaVu Sans ('/home/charl/.local/lib/python3.11/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000.\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ - "# load data\n", - "# ----------\n", - "\n", - "path_dict = {} \n", - "path_dict['data_root_path'] = 'data'\n", - "path_dict['project_name'] = 'sequence_learning_performance' \n", - "path_dict['parameterspace_label'] = 'plasticity_dynamics'\n", - "\n", - "\n", - "# plot recorded data\n", - "# ------------------\n", - "\n", - "# plot settings \n", - "fig_size = (5.2, 2.)\n", - "plt.rcParams['font.size'] = 8\n", - "plt.rcParams['legend.fontsize'] = 6\n", - "plt.rcParams['figure.figsize'] = fig_size\n", - "plt.rcParams['font.family'] = 'sans-serif'\n", - "plt.rcParams['savefig.dpi'] = 300\n", - "plt.rcParams['text.usetex'] = False\n", - "ms = 0.5\n", - "alpha = 0.5\n", - "lw_hline = 1.\n", - "\n", - "#################\n", - "# visualize data\n", - "# ---------------\n", - "gs = mpl.gridspec.GridSpec(1, 3, right=0.92, left=0.09, bottom=0.2, top=0.89, wspace=0.2, hspace=0.2)\n", - "\n", - "# data for Ic=0\n", - "# -------------\n", - "ax1 = plt.subplot(gs[0,0])\n", - "\n", - "training_steps = len(weights_cs[0])\n", - "num_pulses = np.arange(training_steps)\n", - "lns1 = ax1.plot(num_pulses, weights_cs[0], '-o', ms=ms, color='black', label=r'$J$')\n", - "\n", - "#plt.ylabel('weight ($\\mu$S)')\n", - "ax1.set_xlim(0, training_steps)\n", - "ax1.set_ylim(-1, params[\"syn_dict_ee\"]['Wmax']+10)\n", - "#ax1.set_title(r'dAP rate $\\nu_\\mathsf{d}$=%0.1f' % zs[0])\n", - "ax1.set_title(r'$z$=%0.1f' % zs[0])\n", - "ax1.set_ylabel(r'weight $J$ (pA)')\n", - "\n", - "ax2 = ax1.twinx()\n", - "lns2 = ax2.plot(num_pulses, permanences_cs[0], '-o', ms=ms, color='grey', alpha=alpha, label=r'$P$')\n", - "plt.hlines(params['syn_dict_ee']['permanence_threshold'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", - "plt.hlines(params['syn_dict_ee']['permanence_max'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed')\n", - "\n", - "ax2.set_ylim(-1, params[\"syn_dict_ee\"]['permanence_max']+2)\n", - "ax2.tick_params(axis='y', labelcolor='grey')\n", - "#ax2.set_yticklabels([])\n", - "ax2.set_yticks([])\n", - "ax2.spines['right'].set_color('grey')\n", - "\n", - "# add legends\n", - "lns = [lns1[0],lns2[0]]\n", - "labs = [l.get_label() for l in lns]\n", - "ax1.legend(lns, labs, loc='lower right')\n", - "\n", - "# data for Ic=1\n", - "# -------------\n", - "ax1 = plt.subplot(gs[0,1])\n", - "\n", - "ax1.plot(num_pulses, weights_cs[1], '-o', ms=ms, color='black', label='weight')\n", - "\n", - "ax1.set_ylim(-1, params[\"syn_dict_ee\"]['Wmax']+10)\n", - "ax1.set_xlim(0, training_steps)\n", - "#ax1.set_title(r'dAP rate $\\nu_\\mathsf{d}$=%0.1f' % zs[1])\n", - "ax1.set_title(r'$z$=%0.1f' % zs[1])\n", - "ax1.set_xlabel('number of presynaptic-postsynaptic spike pairings')\n", - "ax1.set_yticks([])\n", - "\n", - "ax2 = ax1.twinx()\n", - "ax2.plot(num_pulses, permanences_cs[1], '-o', ms=ms, color='grey', alpha=alpha, label='permanence')\n", - "plt.hlines(params['syn_dict_ee']['permanence_threshold'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", - "plt.hlines(params['syn_dict_ee']['permanence_max'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed')\n", - "\n", - "ax2.set_ylim(-1, params[\"syn_dict_ee\"]['permanence_max']+2)\n", - "ax2.tick_params(axis='y', labelcolor='grey')\n", - "ax2.set_yticks([])\n", - "ax2.spines['right'].set_color('grey')\n", - "\n", - "# data for Ic=2\n", - "# -------------\n", - "ax1 = plt.subplot(gs[0,2])\n", - "\n", - "ax1.plot(num_pulses, weights_cs[2], '-o', ms=ms, color='black', label='weight')\n", - "\n", - "ax1.set_ylim(-1, params[\"syn_dict_ee\"]['Wmax']+10)\n", - "ax1.set_xlim(0, training_steps)\n", - "#ax1.set_title(r'dAP rate $\\nu_\\mathsf{d}$=%0.1f' % zs[2])\n", - "ax1.set_title(r'$z$=%0.1f' % zs[2])\n", - "ax1.set_yticks([])\n", - "\n", - "ax2 = ax1.twinx()\n", - "ax2.plot(num_pulses, permanences_cs[2], '-o', ms=ms, color='grey', alpha=alpha, label=r'$P$')\n", - "plt.hlines(params['syn_dict_ee']['permanence_threshold'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dotted')\n", - "plt.hlines(params['syn_dict_ee']['permanence_max'], 0, training_steps, lw=lw_hline, color='grey', linestyles='dashed')\n", - "\n", - "ax2.set_ylim(-1, params[\"syn_dict_ee\"]['permanence_max']+2)\n", - "ax2.tick_params(axis='y', labelcolor='grey')\n", - "ax2.set_ylabel(r\"permanence $P$\", color=\"grey\")\n", - "#ax2.spines['right'].set_color('grey')\n", - "\n", - "print('---------------------------------')\n", - "path = '.'\n", - "fname = 'plasticity_dynamics'\n", - "#print(\"save %s/%s.pdf\" % (path, fname))\n", - "#plt.savefig(\"/tmp/%s.pdf\" % fname)\n", - "plt.savefig(\"/tmp/%s.png\" % fname)\n", - "\n" + "# from: experiments/sequence_learning_and_prediction/prediction_performance_analysis.py\n", + "\n", + "def analyse_prediction_performance(params, model_instance):\n", + " PS = copy.deepcopy(params)\n", + " PS_sel = copy.deepcopy(PS)\n", + " compute_overlap = True\n", + " \n", + " PL = shtm.helper.parameter_set_list(PS_sel)\n", + " \n", + " # get training data\n", + " sequences = shtm.helper.load_data('.', 'training_data')\n", + " \n", + " print(\"#### sequences used for training ### \")\n", + " for i, sequence in enumerate(sequences): \n", + " seq = '' \n", + " for char in sequence:\n", + " seq += str(char).ljust(2) \n", + " print(\"sequence %d: %s\" % (i, seq))\n", + " \n", + " fname = 'prediction_performance'\n", + " for cP, p in enumerate(PL):\n", + " \n", + " data = {}\n", + " \n", + " # get data path\n", + " # load somatic spikes and dendritic current\n", + " somatic_spikes = shtm.helper.load_spike_data(model_instance.data_path, 'somatic_spikes')\n", + " idend_eval = shtm.helper.load_spike_data(model_instance.data_path, 'idend_eval')\n", + " \n", + " # load record and excitation times \n", + " print(\"Loading idend_recording_times from \" + str(os.path.join(model_instance.data_path, 'idend_recording_times')))\n", + " idend_recording_times = shtm.helper.load_data(model_instance.data_path, 'idend_recording_times')\n", + " characters_to_subpopulations = shtm.helper.load_data(model_instance.data_path, 'characters_to_subpopulations')\n", + " excitation_times = shtm.helper.load_data(model_instance.data_path, 'excitation_times')\n", + " \n", + " # compute prediction performance\n", + " errors, false_positives, false_negatives, num_active_neurons = shtm.helper.compute_prediction_performance(somatic_spikes, idend_eval, idend_recording_times, characters_to_subpopulations, sequences, p)\n", + " \n", + " if compute_overlap:\n", + " # sequences overlap\n", + " sequences_overlap = shtm.helper.measure_sequences_overlap(sequences, somatic_spikes[:,1], somatic_spikes[:,0], excitation_times, p['fixed_somatic_delay'], p['learning_episodes'])\n", + " data['overlap'] = sequences_overlap\n", + " \n", + " data['error'] = errors\n", + " data['false_positive'] = false_positives\n", + " data['false_negative'] = false_negatives\n", + " data['rel_active_neurons'] = num_active_neurons/p['n_E']\n", + " data['ep_num'] = p['episodes_to_testing'] * np.arange(int(p['learning_episodes']/p['episodes_to_testing'])+1)\n", + " \n", + " ep_to_sol = np.where(errors < 0.01)[0] \n", + " if len(ep_to_sol) == 0:\n", + " print(\"number of episodes to convergence\", p['learning_episodes'])\n", + " else: \n", + " print(\"number of episodes to convergence\", data['ep_num'][ep_to_sol][0])\n", + " \n", + " # save data\n", + " print(\"Saving to \" + str(os.path.join(model_instance.data_path, fname)))\n", + " np.save(\"%s\" % os.path.join(model_instance.data_path, fname), data)\n", + "\n", + " return data\n", + "\n", + "data = analyse_prediction_performance(params, model_instance)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def load_data(path, fname):\n", + " \"\"\"Load data\n", + "\n", + " Parameters\n", + " ----------\n", + " path: str\n", + " fname: str\n", + "\n", + " Returns\n", + " -------\n", + " data: ndarray\n", + " \"\"\"\n", + "\n", + " #TODO: this is temporary hack!\n", + " try:\n", + " data = np.load('%s/%s.npy' % (path, fname), allow_pickle=True).item()\n", + " except:\n", + " data = np.load('%s/%s.npy' % (path, fname), allow_pickle=True)\n", + "\n", + " return data\n", + "\n", + "def plot_data(data, params):\n", + " \n", + " # get parameters \n", + " PS = copy.deepcopy(params)\n", + " PS_sel = copy.deepcopy(PS)\n", + " \n", + " params = PS_sel\n", + " num_neurons = params['M'] * params['n_E']\n", + " \n", + " # get trained sequences and vocabulary\n", + " sequences = shtm.helper.load_data('.', 'training_data')\n", + " vocabulary = shtm.helper.load_data('.', 'vocabulary')\n", + " \n", + " print('#### sequences used for training ### ')\n", + " for i, sequence in enumerate(sequences):\n", + " seq = ''\n", + " for char in sequence:\n", + " seq += str(char).ljust(2)\n", + " print('sequence %d: %s' % (i, seq))\n", + " \n", + " # load spikes\n", + " somatic_spikes = shtm.helper.load_spike_data(model_instance.data_path, 'somatic_spikes')\n", + " idend = shtm.helper.load_spike_data(model_instance.data_path, 'idend_last_episode')\n", + " \n", + " # load spike recordings\n", + " idend_recording_times = shtm.helper.load_data(model_instance.data_path, 'idend_recording_times')\n", + " characters_to_subpopulations = shtm.helper.load_data(model_instance.data_path, 'characters_to_subpopulations')\n", + " characters_to_time_excitation = shtm.helper.load_data(model_instance.data_path, 'excitation_times_soma')\n", + " \n", + " # load excitation times\n", + " excitation_times = shtm.helper.load_data(model_instance.data_path, 'excitation_times')\n", + " \n", + " # get dendritic AP\n", + " idx = np.where((idend[:, 2] > params['soma_params']['theta_dAP']))[0]\n", + " dendriticAP_currents = idend[:, 2][idx]\n", + " dendriticAP_times = idend[:, 1][idx]\n", + " dendriticAP_senders = idend[:, 0][idx]\n", + " \n", + " # organize the characters for plotting purpose\n", + " subpopulation_indices = []\n", + " chars_per_subpopulation = []\n", + " for char in vocabulary:\n", + " # shift the subpopulation indices for plotting purposes \n", + " char_to_subpopulation_indices = characters_to_subpopulations[char]\n", + " subpopulation_indices.extend(char_to_subpopulation_indices)\n", + " \n", + " chars_per_subpopulation.extend(char * len(characters_to_subpopulations[char]))\n", + " \n", + " shifted_subpopulation_indices = np.array(subpopulation_indices) + 0.5\n", + " \n", + " # ####################################################\n", + " # plotting routing\n", + " # ----------------------------------------------------\n", + " \n", + " # plot settings \n", + " fig_size = (5.2, 5.7)\n", + " plt.rcParams['font.size'] = 8\n", + " plt.rcParams['legend.fontsize'] = 6\n", + " plt.rcParams['figure.figsize'] = fig_size\n", + " plt.rcParams['font.family'] = 'sans-serif'\n", + " plt.rcParams['savefig.dpi'] = 300\n", + " plt.rcParams['text.usetex'] = False\n", + " \n", + " panel_label_pos = (-0.14,0.5)\n", + " panel_labels = ['B', 'D', 'F']\n", + " color_soma_spike = '#DB2763'\n", + " color_dendrite_spike = '#00B4BE' \n", + " fc_bg = '#dcdcdc'\n", + " fraction_active = 3\n", + " delta_time = 5.\n", + " ymin = -0.1\n", + " ymax = 2\n", + " xmin = 0\n", + " master_file_name = 'network_activity'\n", + " \n", + " # set up the figure frame\n", + " fig = plt.figure()\n", + " gs = mpl.gridspec.GridSpec(6, 2, height_ratios=[3, 15, 3, 15, 3, 15], bottom=0.07, right=0.95, top=1., wspace=0., hspace=0.)\n", + " \n", + " # panel A (placeholder for svg figure to be inserted; see below)\n", + " panel_label_pos_shift = (-0.26, 0.5)\n", + " plt.subplot(gs[0, 0])\n", + " plt.axis('off')\n", + " \n", + " # panel C (placeholder for svg figure to be inserted; see below)\n", + " plt.subplot(gs[2, 0])\n", + " plt.axis('off')\n", + " \n", + " # panel C (placeholder for svg figure to be inserted; see below)\n", + " plt.subplot(gs[4, 0])\n", + " plt.axis('off')\n", + " \n", + " for j, (learn, seq_num) in enumerate(zip([False, True, True], [0, 0, 1])):\n", + " \n", + " ###################################\n", + " # postprocessing of data\n", + " # ---------------------------------\n", + " if learn and seq_num == 0:\n", + " start_time = characters_to_time_excitation[sequences[0][0]][-1] - params['pad_time']\n", + " end_time = characters_to_time_excitation[sequences[0][-1]][-1] + params['pad_time']\n", + " elif learn and seq_num == 1:\n", + " start_time = characters_to_time_excitation[sequences[1][0]][-1] - params['pad_time']\n", + " end_time = characters_to_time_excitation[sequences[1][-1]][-1] + params['pad_time']\n", + " else:\n", + " start_time = characters_to_time_excitation[sequences[0][0]][0] - params['pad_time']\n", + " end_time = characters_to_time_excitation[sequences[0][-1]][0] + params['pad_time']\n", + " \n", + " # select data corresponding to the different sequences\n", + " idx_somatic_spikes = np.where((somatic_spikes[:,1] > start_time) & (somatic_spikes[:,1] < end_time))\n", + " idx_dAP = np.where((dendriticAP_times > start_time) & (dendriticAP_times < end_time))\n", + " \n", + " # postprocess somatic spikes\n", + " somatic_spikes_times = somatic_spikes[:,1][idx_somatic_spikes]\n", + " somatic_spikes_senders = somatic_spikes[:,0][idx_somatic_spikes]\n", + " initial_time = somatic_spikes_times[0]\n", + " somatic_spikes_times -= initial_time\n", + " xmax = somatic_spikes_times[-1] + delta_time\n", + " \n", + " # postporcess dendritic AP\n", + " dAP_senders = dendriticAP_senders[idx_dAP]\n", + " dAP_currents = dendriticAP_currents[idx_dAP]\n", + " dAP_times = dendriticAP_times[idx_dAP]\n", + " dAP_times -= initial_time\n", + " \n", + " idx_exc_times = np.where((excitation_times > start_time) & (excitation_times < end_time))\n", + " excitation_times_sel = excitation_times[idx_exc_times]\n", + " \n", + " # ###############################\n", + " # draw stimulus\n", + " # -------------------------------\n", + " plt.subplot(gs[2*j, 1])\n", + " plt.axis('off')\n", + " \n", + " for i in range(len(sequences[seq_num])): \n", + " \n", + " x = (excitation_times_sel[i]+delta_time-initial_time) / (xmax+delta_time)\n", + " y = 0.26\n", + " arrow_width = 0.03\n", + " arrow_height = 0.2\n", + " \n", + " pos = [x, y]\n", + " X = np.array([pos, [pos[0]+arrow_width, pos[1]], [pos[0]+arrow_width/2, pos[1]-arrow_height]])\n", + " t1 = plt.Polygon(X, color='black')\n", + " plt.gca().add_patch(t1)\n", + " #plt.text(pos[0]+arrow_width/8, pos[1]+0.5, sequences[seq_num][i])\n", + " plt.text(pos[0]-0.003, pos[1]+0.1, sequences[seq_num][i])\n", + " \n", + " # ###############################\n", + " # show soma and dendritic spikes\n", + " # ------------------------------- \n", + " plt.subplot(gs[2*j+1, 1])\n", + " \n", + " senders_subsampled = somatic_spikes_senders[::fraction_active]\n", + " line1 = plt.plot(somatic_spikes_times[::fraction_active], somatic_spikes_senders[::fraction_active], 'o', color=color_soma_spike, lw=0., ms=0.5, zorder=2)\n", + " \n", + " #for k,v in count_indices_ds.items():\n", + " for sender in senders_subsampled:\n", + " idx_sub = np.where(dAP_senders == sender)\n", + " line2 = plt.plot(dAP_times[idx_sub], dAP_senders[idx_sub], color=color_dendrite_spike, lw=1., zorder=1)\n", + " \n", + " plt.xlim(-delta_time, xmax)\n", + " plt.ylim(-10, num_neurons+10)\n", + " \n", + " ticks_pos = shifted_subpopulation_indices * params['n_E']\n", + " ticks_label = chars_per_subpopulation\n", + " subpopulation_indices_background = np.arange(params['M'])*params['n_E']\n", + " \n", + " plt.yticks(ticks_pos, ticks_label)\n", + " plt.tick_params(labelbottom=False)\n", + " \n", + " for i in range(params['M'])[::2]:\n", + " plt.axhspan(subpopulation_indices_background[i], subpopulation_indices_background[i]+params['n_E'], facecolor=fc_bg, zorder=0)\n", + " \n", + " if j == 2:\n", + " plt.xlabel('time (ms)')\n", + " plt.tick_params(labelbottom=True)\n", + " \n", + " if j == 0:\n", + " labels = ['somatic spikes', 'dendritic AP']\n", + " plt.legend((line1[0], line2[0]), labels)\n", + " \n", + " plt.savefig('/tmp/%s.png' % (master_file_name))\n", + "\n", + "plot_data(data, params)" ] }, { diff --git a/pynestml/cocos/co_cos_manager.py b/pynestml/cocos/co_cos_manager.py index e3b439a7a..5c0561876 100644 --- a/pynestml/cocos/co_cos_manager.py +++ b/pynestml/cocos/co_cos_manager.py @@ -391,7 +391,9 @@ def check_resolution_func_legally_used(cls, model: ASTModel): """ :param model: a single model object. """ - CoCoResolutionFuncLegallyUsed.check_co_co(model) + return + # XXX: FIXME! see: get_parent() being excruciatingly slow. + #CoCoResolutionFuncLegallyUsed.check_co_co(model) @classmethod def check_input_port_size_type(cls, model: ASTModel): @@ -411,7 +413,8 @@ def post_symbol_table_builder_checks(cls, model: ASTModel, after_ast_rewrite: bo cls.check_variables_unique_in_scope(model) cls.check_inline_expression_not_assigned_to(model) cls.check_state_variables_initialized(model) - cls.check_variables_defined_before_usage(model, after_ast_rewrite) + # XXX: FIXME! see: get_parent() being excruciatingly slow. + # cls.check_variables_defined_before_usage(model, after_ast_rewrite) if FrontendConfiguration.get_target_platform().upper() == 'NEST_COMPARTMENTAL': # XXX: TODO: refactor this out; define a ``cocos_from_target_name()`` in the frontend instead. cls.check_v_comp_requirement(model) diff --git a/pynestml/codegeneration/nest_code_generator_utils.py b/pynestml/codegeneration/nest_code_generator_utils.py index b626a2624..aa4d55304 100644 --- a/pynestml/codegeneration/nest_code_generator_utils.py +++ b/pynestml/codegeneration/nest_code_generator_utils.py @@ -66,6 +66,7 @@ def generate_code_for(cls, post_ports: Optional[List[str]] = None, mod_ports: Optional[List[str]] = None, uniq_id: Optional[str] = None, + codegen_opts: Optional[dict] = None, logging_level: str = "WARNING"): """Generate code for a given neuron and synapse model, passed as a string. NEST cannot yet unload or reload modules. This function implements a workaround using UUIDs to generate unique names. @@ -119,27 +120,32 @@ def generate_code_for(cls, # generate the code for neuron and optionally synapse module_name = "nestml_" + uniq_id + "_module" input_fns = [neuron_uniq_fn] - codegen_opts = {"neuron_parent_class": "StructuralPlasticityNode", - "neuron_parent_class_include": "structural_plasticity_node.h"} + _codegen_opts = {"neuron_parent_class": "StructuralPlasticityNode", + "neuron_parent_class_include": "structural_plasticity_node.h"} mangled_neuron_name = neuron_model_name_uniq + "_nestml" if nestml_synapse_model: input_fns += [synapse_uniq_fn] - codegen_opts["neuron_synapse_pairs"] = [{"neuron": neuron_model_name_uniq, - "synapse": synapse_model_name_uniq, - "post_ports": post_ports, - "vt_ports": mod_ports}] + _codegen_opts["neuron_synapse_pairs"] = [{"neuron": neuron_model_name_uniq, + "synapse": synapse_model_name_uniq, + "post_ports": post_ports, + "vt_ports": mod_ports}] mangled_neuron_name = neuron_model_name_uniq + "_nestml__with_" + synapse_model_name_uniq + "_nestml" mangled_synapse_name = synapse_model_name_uniq + "_nestml__with_" + neuron_model_name_uniq + "_nestml" + if codegen_opts: + _codegen_opts.update(codegen_opts) + generate_nest_target(input_path=input_fns, install_path=install_path, logging_level=logging_level, module_name=module_name, suffix="_nestml", - codegen_opts=codegen_opts) + codegen_opts=_codegen_opts) + # generated neuron + synapse if nestml_synapse_model: return module_name, mangled_neuron_name, mangled_synapse_name - else: - return module_name, mangled_neuron_name + + # generated neuron only + return module_name, mangled_neuron_name diff --git a/pynestml/codegeneration/resources_nest/point_neuron/common/NeuronClass.jinja2 b/pynestml/codegeneration/resources_nest/point_neuron/common/NeuronClass.jinja2 index b01ad2f54..c7f6f51d4 100644 --- a/pynestml/codegeneration/resources_nest/point_neuron/common/NeuronClass.jinja2 +++ b/pynestml/codegeneration/resources_nest/point_neuron/common/NeuronClass.jinja2 @@ -1,4 +1,4 @@ -#define DEBUG 1 +//#define DEBUG {# NeuronClass.jinja2