diff --git a/doc/tutorials/stdp_third_factor_active_dendrite/.ipynb_checkpoints/stdp_third_factor_active_dendrite-checkpoint.ipynb b/doc/tutorials/stdp_third_factor_active_dendrite/.ipynb_checkpoints/stdp_third_factor_active_dendrite-checkpoint.ipynb
deleted file mode 100644
index cf0d9e6f9..000000000
--- a/doc/tutorials/stdp_third_factor_active_dendrite/.ipynb_checkpoints/stdp_third_factor_active_dendrite-checkpoint.ipynb
+++ /dev/null
@@ -1,3319 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "NESTML active dendrite third-factor STDP synapse\n",
- "==========================================\n",
- "\n",
- "Welcome ...\n"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "\n",
- "\n",
- "Introduction\n",
- "------------\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 1,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "\n",
- " -- N E S T --\n",
- " Copyright (C) 2004 The NEST Initiative\n",
- "\n",
- " Version: 3.6.0-post0.dev0\n",
- " Built: Nov 8 2023 01:11:46\n",
- "\n",
- " This program is provided AS IS and comes with\n",
- " NO WARRANTY. See the file LICENSE for details.\n",
- "\n",
- " Problems or suggestions?\n",
- " Visit https://www.nest-simulator.org\n",
- "\n",
- " Type 'nest.help()' to find out more about NEST.\n",
- "\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "/home/charl/.local/lib/python3.11/site-packages/matplotlib/projections/__init__.py:63: UserWarning: Unable to import Axes3D. This may be due to multiple versions of Matplotlib being installed (e.g. as a system package and as a pip package). As a result, the 3D projection is not available.\n",
- " warnings.warn(\"Unable to import Axes3D. This may be due to multiple versions of \"\n"
- ]
- }
- ],
- "source": [
- "%matplotlib inline\n",
- "\n",
- "from typing import List, Optional\n",
- "\n",
- "import matplotlib as mpl\n",
- "\n",
- "mpl.rcParams['axes.formatter.useoffset'] = False\n",
- "mpl.rcParams['axes.grid'] = True\n",
- "mpl.rcParams['grid.color'] = 'k'\n",
- "mpl.rcParams['grid.linestyle'] = ':'\n",
- "mpl.rcParams['grid.linewidth'] = 0.5\n",
- "mpl.rcParams['figure.dpi'] = 120\n",
- "mpl.rcParams['figure.figsize'] = [8., 3.]\n",
- "\n",
- "import matplotlib.pyplot as plt\n",
- "import nest\n",
- "import numpy as np\n",
- "import os\n",
- "import random\n",
- "import re\n",
- "\n",
- "from pynestml.codegeneration.nest_code_generator_utils import NESTCodeGeneratorUtils\n",
- "from pynestml.codegeneration.nest_tools import NESTTools"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "metadata": {},
- "outputs": [],
- "source": [
- "post_trace_var = \"I_dend\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Generating code with NESTML\n",
- "\n",
- "We will take a simple current-based integrate-and-fire model with alpha-shaped postsynaptic response kernels (``iaf_psc_alpha``) as the basis for our modifications. First, let's take a look at this base neuron without any modifications.\n",
- "\n",
- "We will use a helper function to generate the C++ code for the models, build it as a NEST extension module, and load the module into the kernel. Because NEST does not support un- or reloading of modules at the time of writing, we implement a workaround that appends a unique number to the name of each generated model, for example, \"iaf_psc_alpha_3cc945f\". The resulting neuron model name is returned by the function, so we do not have to think about these internals."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[1,GLOBAL, INFO]: List of files that will be processed:\n",
- "[2,GLOBAL, INFO]: /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron.nestml\n",
- "[3,GLOBAL, INFO]: /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse.nestml\n",
- "[4,GLOBAL, INFO]: Target platform code will be generated in directory: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target'\n",
- "[5,GLOBAL, INFO]: Target platform code will be installed in directory: '/tmp/nestml_target_buhdamnv'\n",
- "\n",
- " -- N E S T --\n",
- " Copyright (C) 2004 The NEST Initiative\n",
- "\n",
- " Version: 3.6.0-post0.dev0\n",
- " Built: Nov 8 2023 01:11:46\n",
- "\n",
- " This program is provided AS IS and comes with\n",
- " NO WARRANTY. See the file LICENSE for details.\n",
- "\n",
- " Problems or suggestions?\n",
- " Visit https://www.nest-simulator.org\n",
- "\n",
- " Type 'nest.help()' to find out more about NEST.\n",
- "\n",
- "[6,GLOBAL, INFO]: The NEST Simulator version was automatically detected as: master\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/stdp_third_factor_active_dendrite/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron.nestml'!\n",
- "[12,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [38:0;93:0]]: Start building symbol table!\n",
- "[13,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [50:39;50:47]]: Implicit magnitude conversion from pA to pA buffer with factor 1.0 \n",
- "[14,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [50:15;50:30]]: Implicit magnitude conversion from mV / ms to pA / pF with factor 1.0 \n",
- "[15,GLOBAL, INFO]: Start processing '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse.nestml'!\n",
- "[16,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, DEBUG, [39:0;85:0]]: Start building symbol table!\n",
- "[17,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [44:8;44:28]]: Variable 'd' has the same name as a physical unit!\n",
- "[18,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [73:11;73:28]]: SPL_COMPARISON_OPERATOR_VISITOR : Operands of a logical rhs not compatible.([73:11;73:28])\n",
- "[19,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [80:11;80:28]]: SPL_COMPARISON_OPERATOR_VISITOR : Operands of a logical rhs not compatible.([80:11;80:28])\n",
- "[20,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [38:0;93:0]]: Start building symbol table!\n",
- "[21,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, DEBUG, [39:0;85:0]]: Start building symbol table!\n",
- "[22,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [44:8;44:28]]: Variable 'd' has the same name as a physical unit!\n",
- "[23,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [38:0;93:0]]: Start building symbol table!\n",
- "[24,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [50:39;50:47]]: Implicit magnitude conversion from pA to pA buffer with factor 1.0 \n",
- "[25,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [50:15;50:30]]: Implicit magnitude conversion from mV / ms to pA / pF with factor 1.0 \n",
- "[26,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, DEBUG, [39:0;85:0]]: Start building symbol table!\n",
- "[27,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [44:8;44:28]]: Variable 'd' has the same name as a physical unit!\n",
- "[28,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [73:11;73:28]]: SPL_COMPARISON_OPERATOR_VISITOR : Operands of a logical rhs not compatible.([73:11;73:28])\n",
- "[29,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [80:11;80:28]]: SPL_COMPARISON_OPERATOR_VISITOR : Operands of a logical rhs not compatible.([80:11;80:28])\n",
- "[30,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [38:0;93:0]]: Start building symbol table!\n",
- "[31,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, DEBUG, [39:0;85:0]]: Start building symbol table!\n",
- "[32,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, WARNING, [44:8;44: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: ['post_trace', 'post_trace_kernel']\n",
- "[34,GLOBAL, INFO]: State variables that will be moved from synapse to neuron: ['post_trace', 'post_trace_kernel']\n",
- "[35,GLOBAL, INFO]: Parameters that will be copied from synapse to neuron: ['tau_tr_post']\n",
- "[36,GLOBAL, INFO]: Synaptic state variables moved to neuron that will need continuous-time buffering: ['I_post_dend']\n",
- "[37,GLOBAL, INFO]: Moving state var defining equation(s) post_trace\n",
- "[38,GLOBAL, INFO]: Moving state var defining equation(s) post_trace_kernel\n",
- "[39,GLOBAL, INFO]: Moving state variables for equation(s) post_trace\n",
- "[40,GLOBAL, INFO]: Moving state variables for equation(s) post_trace_kernel\n",
- "[41,GLOBAL, INFO]: In synapse: replacing ``continuous`` type input ports that are connected to postsynaptic neuron with suffixed external variable references\n",
- "[42,GLOBAL, INFO]: \t• Replacing variable I_post_dend\n",
- "[43,GLOBAL, INFO]: \t -> ASTSimpleExpression replacement made (var = I_post_dend) in expression: I_post_dend <= 1pA\n",
- "[44,GLOBAL, INFO]: \t -> ASTSimpleExpression replacement made (var = I_post_dend) in expression: I_post_dend / pA\n",
- "[45,GLOBAL, INFO]: \t -> ASTSimpleExpression replacement made (var = I_post_dend) in expression: I_post_dend / pA\n",
- "[46,GLOBAL, INFO]: \t -> ASTSimpleExpression replacement made (var = I_post_dend) in expression: I_post_dend <= 1pA\n",
- "[47,GLOBAL, INFO]: \t -> ASTSimpleExpression replacement made (var = I_post_dend) in expression: I_post_dend / pA\n",
- "[48,GLOBAL, INFO]: \t -> ASTSimpleExpression replacement made (var = I_post_dend) in expression: I_post_dend / pA\n",
- "[49,GLOBAL, INFO]: Copying parameters from synapse to neuron...\n",
- "[50,GLOBAL, INFO]: Copying definition of tau_tr_post from synapse to neuron\n",
- "[51,GLOBAL, INFO]: Adding suffix to variables in spike updates\n",
- "[52,GLOBAL, INFO]: In synapse: replacing variables with suffixed external variable references\n",
- "[53,GLOBAL, INFO]: \t• Replacing variable post_trace\n",
- "[54,GLOBAL, INFO]: \t -> ASTSimpleExpression replacement made (var = post_trace__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml) in expression: alpha * lambda * (w / Wmax) ** mu_minus * post_trace\n",
- "[55,GLOBAL, INFO]: \t• Replacing variable post_trace_kernel\n",
- "[56,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, DEBUG, [38:0;93:0]]: Start building symbol table!\n",
- "[57,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [39:0;85:0]]: Start building symbol table!\n",
- "[58,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, WARNING, [44:8;44:28]]: Variable 'd' has the same name as a physical unit!\n",
- "[59,GLOBAL, INFO]: Successfully constructed neuron-synapse pair iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml\n",
- "[60,GLOBAL, INFO]: Analysing/transforming model 'iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml'\n",
- "[61,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [38:0;93:0]]: Starts processing of the model 'iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml'\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "INFO:Analysing input:\n",
- "INFO:{\n",
- " \"dynamics\": [\n",
- " {\n",
- " \"expression\": \"V_m' = (-(V_m - E_L)) / tau_m + ((I_kernel_exc__X__exc_spikes * 1.0 - I_kernel_inh__X__inh_spikes * 1.0) + I_e + I_stim) / C_m\",\n",
- " \"initial_values\": {\n",
- " \"V_m\": \"E_L\"\n",
- " }\n",
- " },\n",
- " {\n",
- " \"expression\": \"I_kernel_exc__X__exc_spikes = exp(-t / tau_syn_exc)\",\n",
- " \"initial_values\": {}\n",
- " },\n",
- " {\n",
- " \"expression\": \"I_kernel_inh__X__inh_spikes = exp(-t / tau_syn_inh)\",\n",
- " \"initial_values\": {}\n",
- " }\n",
- " ],\n",
- " \"options\": {\n",
- " \"output_timestep_symbol\": \"__h\"\n",
- " },\n",
- " \"parameters\": {\n",
- " \"C_m\": \"250\",\n",
- " \"E_L\": \"(-70)\",\n",
- " \"I_e\": \"0\",\n",
- " \"V_reset\": \"(-70)\",\n",
- " \"V_th\": \"(-55)\",\n",
- " \"refr_T\": \"2\",\n",
- " \"tau_m\": \"10\",\n",
- " \"tau_syn_exc\": \"2\",\n",
- " \"tau_syn_inh\": \"2\"\n",
- " }\n",
- "}\n",
- "INFO:Processing global options...\n",
- "INFO:Processing input shapes...\n",
- "INFO:\n",
- "Processing differential-equation form shape V_m with defining expression = \"(-(V_m - E_L)) / tau_m + ((I_kernel_exc__X__exc_spikes * 1.0 - I_kernel_inh__X__inh_spikes * 1.0) + I_e + I_stim) / C_m\"\n",
- "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_e + 1.0*I_kernel_exc__X__exc_spikes - 1.0*I_kernel_inh__X__inh_spikes + I_stim)/C_m (symbols [V_m])\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n",
- "DEBUG:\tnonlinear term: 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "DEBUG:Created Shape with symbol V_m, derivative_factors = [-1/tau_m], inhom_term = E_L/tau_m + I_e/C_m, nonlin_term = 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "INFO:\tReturning shape: Shape \"V_m\" of order 1\n",
- "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_exc__X__exc_spikes\" with defining expression = \"exp(-t/tau_syn_exc)\"\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_kernel_exc__X__exc_spikes, derivative_factors = [-1/tau_syn_exc], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape I_kernel_exc__X__exc_spikes: reconstituting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_inh__X__inh_spikes\" with defining expression = \"exp(-t/tau_syn_inh)\"\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_kernel_inh__X__inh_spikes, derivative_factors = [-1/tau_syn_inh], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape I_kernel_inh__X__inh_spikes: reconstituting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh\n",
- "INFO:All known variables: [V_m, I_kernel_exc__X__exc_spikes, I_kernel_inh__X__inh_spikes], all parameters used in ODEs: {tau_syn_inh, tau_syn_exc, tau_m, C_m, I_stim, E_L, I_e}\n",
- "INFO:No numerical value specified for parameter \"I_stim\"\n",
- "INFO:\n",
- "Processing differential-equation form shape V_m with defining expression = \"(-(V_m - E_L)) / tau_m + ((I_kernel_exc__X__exc_spikes * 1.0 - I_kernel_inh__X__inh_spikes * 1.0) + I_e + I_stim) / C_m\"\n",
- "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_e + 1.0*I_kernel_exc__X__exc_spikes - 1.0*I_kernel_inh__X__inh_spikes + I_stim)/C_m (symbols [V_m, I_kernel_exc__X__exc_spikes, I_kernel_inh__X__inh_spikes, V_m])\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m], [1.0/C_m], [-1.0/C_m], [0]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m + I_stim/C_m\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "DEBUG:Created Shape with symbol V_m, derivative_factors = [-1/tau_m], inhom_term = E_L/tau_m + I_e/C_m + I_stim/C_m, nonlin_term = 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m\n",
- "INFO:\tReturning shape: Shape \"V_m\" of order 1\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_exc__X__exc_spikes\" with defining expression = \"exp(-t/tau_syn_exc)\"\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_kernel_exc__X__exc_spikes, derivative_factors = [-1/tau_syn_exc], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_inh__X__inh_spikes\" with defining expression = \"exp(-t/tau_syn_inh)\"\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_kernel_inh__X__inh_spikes, derivative_factors = [-1/tau_syn_inh], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m (symbols Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [I_kernel_inh__X__inh_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m], [1.0/C_m], [-1.0/C_m]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m + I_stim/C_m\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_exc__X__exc_spikes: reconstituting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc\n",
- "DEBUG:Splitting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc (symbols Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [I_kernel_inh__X__inh_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn_exc], [0]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_inh__X__inh_spikes: reconstituting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh\n",
- "DEBUG:Splitting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh (symbols Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [I_kernel_inh__X__inh_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[0], [0], [-1/tau_syn_inh]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "DEBUG:Initializing system of shapes with x = Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [I_kernel_inh__X__inh_spikes]]), A = Matrix([[-1/tau_m, 1.0/C_m, -1.0/C_m], [0, -1/tau_syn_exc, 0], [0, 0, -1/tau_syn_inh]]), b = Matrix([[E_L/tau_m + I_e/C_m + I_stim/C_m], [0.0], [0.0]]), c = Matrix([[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 V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m (symbols [V_m, I_kernel_exc__X__exc_spikes, I_kernel_inh__X__inh_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m], [1.0/C_m], [-1.0/C_m]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m + I_stim/C_m\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_exc__X__exc_spikes: reconstituting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc\n",
- "DEBUG:Splitting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc (symbols [V_m, I_kernel_exc__X__exc_spikes, I_kernel_inh__X__inh_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn_exc], [0]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_inh__X__inh_spikes: reconstituting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh\n",
- "DEBUG:Splitting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh (symbols [V_m, I_kernel_exc__X__exc_spikes, I_kernel_inh__X__inh_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[0], [0], [-1/tau_syn_inh]])\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",
- "DEBUG:os.makedirs('/tmp')\n",
- "DEBUG:write lines to '/tmp/ode_dependency_graph_analytically_solvable_before_propagated.dot'\n",
- "DEBUG:run [PosixPath('dot'), '-Kdot', '-Tpdf', '-O', 'ode_dependency_graph_analytically_solvable_before_propagated.dot']\n",
- "INFO:Saving dependency graph plot to /tmp/ode_dependency_graph_analytically_solvable.dot\n",
- "DEBUG:os.makedirs('/tmp')\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "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: V_m, I_kernel_exc__X__exc_spikes, I_kernel_inh__X__inh_spikes\n",
- "DEBUG:Initializing system of shapes with x = Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [I_kernel_inh__X__inh_spikes]]), A = Matrix([[-1/tau_m, 1.0/C_m, -1.0/C_m], [0, -1/tau_syn_exc, 0], [0, 0, -1/tau_syn_inh]]), b = Matrix([[E_L/tau_m + I_e/C_m + I_stim/C_m], [0.0], [0.0]]), c = Matrix([[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_syn_exc\n",
- "WARNING:\ttau_m = tau_syn_inh\n",
- "DEBUG:System of equations:\n",
- "DEBUG:x = Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [I_kernel_inh__X__inh_spikes]])\n",
- "DEBUG:A = Matrix([\n",
- "[-1/tau_m, 1.0/C_m, -1.0/C_m],\n",
- "[ 0, -1/tau_syn_exc, 0],\n",
- "[ 0, 0, -1/tau_syn_inh]])\n",
- "DEBUG:b = Matrix([[E_L/tau_m + I_e/C_m + I_stim/C_m], [0.0], [0.0]])\n",
- "DEBUG:c = Matrix([[0], [0], [0]])\n",
- "INFO:update_expr[V_m] = -E_L*__P__V_m__V_m + E_L + I_kernel_exc__X__exc_spikes*__P__V_m__I_kernel_exc__X__exc_spikes + I_kernel_inh__X__inh_spikes*__P__V_m__I_kernel_inh__X__inh_spikes + V_m*__P__V_m__V_m - I_e*__P__V_m__V_m*tau_m/C_m + I_e*tau_m/C_m - I_stim*__P__V_m__V_m*tau_m/C_m + I_stim*tau_m/C_m\n",
- "INFO:update_expr[I_kernel_exc__X__exc_spikes] = I_kernel_exc__X__exc_spikes*__P__I_kernel_exc__X__exc_spikes__I_kernel_exc__X__exc_spikes\n",
- "INFO:update_expr[I_kernel_inh__X__inh_spikes] = I_kernel_inh__X__inh_spikes*__P__I_kernel_inh__X__inh_spikes__I_kernel_inh__X__inh_spikes\n",
- "WARNING:Not preserving expression for variable \"V_m\" as it is solved by propagator solver\n",
- "INFO:In ode-toolbox: returning outdict = \n",
- "INFO:[\n",
- " {\n",
- " \"initial_values\": {\n",
- " \"I_kernel_exc__X__exc_spikes\": \"1\",\n",
- " \"I_kernel_inh__X__inh_spikes\": \"1\",\n",
- " \"V_m\": \"E_L\"\n",
- " },\n",
- " \"parameters\": {\n",
- " \"C_m\": \"250.000000000000\",\n",
- " \"E_L\": \"-70.0000000000000\",\n",
- " \"I_e\": \"0\",\n",
- " \"tau_m\": \"10.0000000000000\",\n",
- " \"tau_syn_exc\": \"2.00000000000000\",\n",
- " \"tau_syn_inh\": \"2.00000000000000\"\n",
- " },\n",
- " \"propagators\": {\n",
- " \"__P__I_kernel_exc__X__exc_spikes__I_kernel_exc__X__exc_spikes\": \"1.0*exp(-__h/tau_syn_exc)\",\n",
- " \"__P__I_kernel_inh__X__inh_spikes__I_kernel_inh__X__inh_spikes\": \"1.0*exp(-__h/tau_syn_inh)\",\n",
- " \"__P__V_m__I_kernel_exc__X__exc_spikes\": \"1.0*tau_m*tau_syn_exc*(-exp(__h/tau_m) + exp(__h/tau_syn_exc))*exp(-__h*(tau_m + tau_syn_exc)/(tau_m*tau_syn_exc))/(C_m*(tau_m - tau_syn_exc))\",\n",
- " \"__P__V_m__I_kernel_inh__X__inh_spikes\": \"1.0*tau_m*tau_syn_inh*(exp(__h/tau_m) - exp(__h/tau_syn_inh))*exp(-__h/tau_syn_inh - __h/tau_m)/(C_m*(tau_m - tau_syn_inh))\",\n",
- " \"__P__V_m__V_m\": \"1.0*exp(-__h/tau_m)\"\n",
- " },\n",
- " \"solver\": \"analytical\",\n",
- " \"state_variables\": [\n",
- " \"V_m\",\n",
- " \"I_kernel_exc__X__exc_spikes\",\n",
- " \"I_kernel_inh__X__inh_spikes\"\n",
- " ],\n",
- " \"update_expressions\": {\n",
- " \"I_kernel_exc__X__exc_spikes\": \"I_kernel_exc__X__exc_spikes*__P__I_kernel_exc__X__exc_spikes__I_kernel_exc__X__exc_spikes\",\n",
- " \"I_kernel_inh__X__inh_spikes\": \"I_kernel_inh__X__inh_spikes*__P__I_kernel_inh__X__inh_spikes__I_kernel_inh__X__inh_spikes\",\n",
- " \"V_m\": \"-E_L*__P__V_m__V_m + E_L + I_kernel_exc__X__exc_spikes*__P__V_m__I_kernel_exc__X__exc_spikes + I_kernel_inh__X__inh_spikes*__P__V_m__I_kernel_inh__X__inh_spikes + V_m*__P__V_m__V_m - I_e*__P__V_m__V_m*tau_m/C_m + I_e*tau_m/C_m - I_stim*__P__V_m__V_m*tau_m/C_m + I_stim*tau_m/C_m\"\n",
- " }\n",
- " }\n",
- "]\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[62,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [38:0;93:0]]: Start building symbol table!\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "INFO:Analysing input:\n",
- "INFO:{\n",
- " \"dynamics\": [\n",
- " {\n",
- " \"expression\": \"V_m' = (-(V_m - E_L)) / tau_m + ((I_kernel_exc__X__exc_spikes * 1.0 - I_kernel_inh__X__inh_spikes * 1.0) + I_e + I_stim) / C_m\",\n",
- " \"initial_values\": {\n",
- " \"V_m\": \"E_L\"\n",
- " }\n",
- " },\n",
- " {\n",
- " \"expression\": \"I_kernel_exc__X__exc_spikes = exp(-t / tau_syn_exc)\",\n",
- " \"initial_values\": {}\n",
- " },\n",
- " {\n",
- " \"expression\": \"post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml = exp(-t / tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml)\",\n",
- " \"initial_values\": {}\n",
- " },\n",
- " {\n",
- " \"expression\": \"I_kernel_inh__X__inh_spikes = exp(-t / tau_syn_inh)\",\n",
- " \"initial_values\": {}\n",
- " }\n",
- " ],\n",
- " \"options\": {\n",
- " \"output_timestep_symbol\": \"__h\"\n",
- " },\n",
- " \"parameters\": {\n",
- " \"C_m\": \"250\",\n",
- " \"E_L\": \"(-70)\",\n",
- " \"I_e\": \"0\",\n",
- " \"V_reset\": \"(-70)\",\n",
- " \"V_th\": \"(-55)\",\n",
- " \"refr_T\": \"2\",\n",
- " \"tau_m\": \"10\",\n",
- " \"tau_syn_exc\": \"2\",\n",
- " \"tau_syn_inh\": \"2\",\n",
- " \"tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\": \"20\"\n",
- " }\n",
- "}\n",
- "INFO:Processing global options...\n",
- "INFO:Processing input shapes...\n",
- "INFO:\n",
- "Processing differential-equation form shape V_m with defining expression = \"(-(V_m - E_L)) / tau_m + ((I_kernel_exc__X__exc_spikes * 1.0 - I_kernel_inh__X__inh_spikes * 1.0) + I_e + I_stim) / C_m\"\n",
- "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_e + 1.0*I_kernel_exc__X__exc_spikes - 1.0*I_kernel_inh__X__inh_spikes + I_stim)/C_m (symbols [V_m])\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m\n",
- "DEBUG:\tnonlinear term: 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "DEBUG:Created Shape with symbol V_m, derivative_factors = [-1/tau_m], inhom_term = E_L/tau_m + I_e/C_m, nonlin_term = 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "INFO:\tReturning shape: Shape \"V_m\" of order 1\n",
- "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_exc__X__exc_spikes\" with defining expression = \"exp(-t/tau_syn_exc)\"\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_kernel_exc__X__exc_spikes, derivative_factors = [-1/tau_syn_exc], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape I_kernel_exc__X__exc_spikes: reconstituting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc\n",
- "INFO:\n",
- "Processing function-of-time shape \"post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\" with defining expression = \"exp(-t/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml)\"\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 post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, derivative_factors = [-1/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml: reconstituting expression -post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_inh__X__inh_spikes\" with defining expression = \"exp(-t/tau_syn_inh)\"\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_kernel_inh__X__inh_spikes, derivative_factors = [-1/tau_syn_inh], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape I_kernel_inh__X__inh_spikes: reconstituting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh\n",
- "INFO:All known variables: [V_m, I_kernel_exc__X__exc_spikes, post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, I_kernel_inh__X__inh_spikes], all parameters used in ODEs: {tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, tau_syn_inh, tau_syn_exc, tau_m, C_m, I_stim, E_L, I_e}\n",
- "INFO:No numerical value specified for parameter \"I_stim\"\n",
- "INFO:\n",
- "Processing differential-equation form shape V_m with defining expression = \"(-(V_m - E_L)) / tau_m + ((I_kernel_exc__X__exc_spikes * 1.0 - I_kernel_inh__X__inh_spikes * 1.0) + I_e + I_stim) / C_m\"\n",
- "DEBUG:Splitting expression (E_L - V_m)/tau_m + (I_e + 1.0*I_kernel_exc__X__exc_spikes - 1.0*I_kernel_inh__X__inh_spikes + I_stim)/C_m (symbols [V_m, I_kernel_exc__X__exc_spikes, post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, I_kernel_inh__X__inh_spikes, V_m])\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m], [1.0/C_m], [0], [-1.0/C_m], [0]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m + I_stim/C_m\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "DEBUG:Created Shape with symbol V_m, derivative_factors = [-1/tau_m], inhom_term = E_L/tau_m + I_e/C_m + I_stim/C_m, nonlin_term = 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m\n",
- "INFO:\tReturning shape: Shape \"V_m\" of order 1\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_exc__X__exc_spikes\" with defining expression = \"exp(-t/tau_syn_exc)\"\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_kernel_exc__X__exc_spikes, derivative_factors = [-1/tau_syn_exc], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:\n",
- "Processing function-of-time shape \"post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\" with defining expression = \"exp(-t/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml)\"\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 post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, derivative_factors = [-1/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:\n",
- "Processing function-of-time shape \"I_kernel_inh__X__inh_spikes\" with defining expression = \"exp(-t/tau_syn_inh)\"\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_kernel_inh__X__inh_spikes, derivative_factors = [-1/tau_syn_inh], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m (symbols Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [I_kernel_inh__X__inh_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m], [1.0/C_m], [0], [-1.0/C_m]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m + I_stim/C_m\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_exc__X__exc_spikes: reconstituting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc\n",
- "DEBUG:Splitting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc (symbols Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [I_kernel_inh__X__inh_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn_exc], [0], [0]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml: reconstituting expression -post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\n",
- "DEBUG:Splitting expression -post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml (symbols Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [I_kernel_inh__X__inh_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[0], [0], [-1/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [0]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_inh__X__inh_spikes: reconstituting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh\n",
- "DEBUG:Splitting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh (symbols Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [I_kernel_inh__X__inh_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_syn_inh]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "DEBUG:Initializing system of shapes with x = Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [I_kernel_inh__X__inh_spikes]]), A = Matrix([[-1/tau_m, 1.0/C_m, 0, -1.0/C_m], [0, -1/tau_syn_exc, 0, 0], [0, 0, -1/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, 0], [0, 0, 0, -1/tau_syn_inh]]), b = Matrix([[E_L/tau_m + I_e/C_m + I_stim/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[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"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[63,GLOBAL, INFO]: Analysing/transforming model 'iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml'\n",
- "[64,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, INFO, [38:0;93:0]]: Starts processing of the model 'iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml'\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "INFO:Shape V_m: reconstituting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m\n",
- "DEBUG:Splitting expression E_L/tau_m - V_m/tau_m + I_e/C_m + 1.0*I_kernel_exc__X__exc_spikes/C_m - 1.0*I_kernel_inh__X__inh_spikes/C_m + I_stim/C_m (symbols [V_m, I_kernel_exc__X__exc_spikes, post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, I_kernel_inh__X__inh_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_m], [1.0/C_m], [0], [-1.0/C_m]])\n",
- "DEBUG:\tinhomogeneous term: E_L/tau_m + I_e/C_m + I_stim/C_m\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_exc__X__exc_spikes: reconstituting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc\n",
- "DEBUG:Splitting expression -I_kernel_exc__X__exc_spikes/tau_syn_exc (symbols [V_m, I_kernel_exc__X__exc_spikes, post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, I_kernel_inh__X__inh_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[0], [-1/tau_syn_exc], [0], [0]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml: reconstituting expression -post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\n",
- "DEBUG:Splitting expression -post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml (symbols [V_m, I_kernel_exc__X__exc_spikes, post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, I_kernel_inh__X__inh_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[0], [0], [-1/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [0]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "INFO:Shape I_kernel_inh__X__inh_spikes: reconstituting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh\n",
- "DEBUG:Splitting expression -I_kernel_inh__X__inh_spikes/tau_syn_inh (symbols [V_m, I_kernel_exc__X__exc_spikes, post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, I_kernel_inh__X__inh_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[0], [0], [0], [-1/tau_syn_inh]])\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",
- "DEBUG:os.makedirs('/tmp')\n",
- "DEBUG:write lines to '/tmp/ode_dependency_graph_analytically_solvable_before_propagated.dot'\n",
- "DEBUG:run [PosixPath('dot'), '-Kdot', '-Tpdf', '-O', 'ode_dependency_graph_analytically_solvable_before_propagated.dot']\n",
- "INFO:Saving dependency graph plot to /tmp/ode_dependency_graph_analytically_solvable.dot\n",
- "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: V_m, I_kernel_exc__X__exc_spikes, post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, I_kernel_inh__X__inh_spikes\n",
- "DEBUG:Initializing system of shapes with x = Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [I_kernel_inh__X__inh_spikes]]), A = Matrix([[-1/tau_m, 1.0/C_m, 0, -1.0/C_m], [0, -1/tau_syn_exc, 0, 0], [0, 0, -1/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, 0], [0, 0, 0, -1/tau_syn_inh]]), b = Matrix([[E_L/tau_m + I_e/C_m + I_stim/C_m], [0.0], [0.0], [0.0]]), c = Matrix([[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_syn_exc\n",
- "WARNING:\ttau_m = tau_syn_inh\n",
- "DEBUG:System of equations:\n",
- "DEBUG:x = Matrix([[V_m], [I_kernel_exc__X__exc_spikes], [post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml], [I_kernel_inh__X__inh_spikes]])\n",
- "DEBUG:A = Matrix([\n",
- "[-1/tau_m, 1.0/C_m, 0, -1.0/C_m],\n",
- "[ 0, -1/tau_syn_exc, 0, 0],\n",
- "[ 0, 0, -1/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, 0],\n",
- "[ 0, 0, 0, -1/tau_syn_inh]])\n",
- "DEBUG:b = Matrix([[E_L/tau_m + I_e/C_m + I_stim/C_m], [0.0], [0.0], [0.0]])\n",
- "DEBUG:c = Matrix([[0], [0], [0], [0]])\n",
- "INFO:update_expr[V_m] = -E_L*__P__V_m__V_m + E_L + I_kernel_exc__X__exc_spikes*__P__V_m__I_kernel_exc__X__exc_spikes + I_kernel_inh__X__inh_spikes*__P__V_m__I_kernel_inh__X__inh_spikes + V_m*__P__V_m__V_m - I_e*__P__V_m__V_m*tau_m/C_m + I_e*tau_m/C_m - I_stim*__P__V_m__V_m*tau_m/C_m + I_stim*tau_m/C_m\n",
- "INFO:update_expr[I_kernel_exc__X__exc_spikes] = I_kernel_exc__X__exc_spikes*__P__I_kernel_exc__X__exc_spikes__I_kernel_exc__X__exc_spikes\n",
- "INFO:update_expr[post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml] = __P__post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml*post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\n",
- "INFO:update_expr[I_kernel_inh__X__inh_spikes] = I_kernel_inh__X__inh_spikes*__P__I_kernel_inh__X__inh_spikes__I_kernel_inh__X__inh_spikes\n",
- "WARNING:Not preserving expression for variable \"V_m\" as it is solved by propagator solver\n",
- "INFO:In ode-toolbox: returning outdict = \n",
- "INFO:[\n",
- " {\n",
- " \"initial_values\": {\n",
- " \"I_kernel_exc__X__exc_spikes\": \"1\",\n",
- " \"I_kernel_inh__X__inh_spikes\": \"1\",\n",
- " \"V_m\": \"E_L\",\n",
- " \"post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\": \"1\"\n",
- " },\n",
- " \"parameters\": {\n",
- " \"C_m\": \"250.000000000000\",\n",
- " \"E_L\": \"-70.0000000000000\",\n",
- " \"I_e\": \"0\",\n",
- " \"tau_m\": \"10.0000000000000\",\n",
- " \"tau_syn_exc\": \"2.00000000000000\",\n",
- " \"tau_syn_inh\": \"2.00000000000000\",\n",
- " \"tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\": \"20.0000000000000\"\n",
- " },\n",
- " \"propagators\": {\n",
- " \"__P__I_kernel_exc__X__exc_spikes__I_kernel_exc__X__exc_spikes\": \"1.0*exp(-__h/tau_syn_exc)\",\n",
- " \"__P__I_kernel_inh__X__inh_spikes__I_kernel_inh__X__inh_spikes\": \"1.0*exp(-__h/tau_syn_inh)\",\n",
- " \"__P__V_m__I_kernel_exc__X__exc_spikes\": \"1.0*tau_m*tau_syn_exc*(-exp(__h/tau_m) + exp(__h/tau_syn_exc))*exp(-__h*(tau_m + tau_syn_exc)/(tau_m*tau_syn_exc))/(C_m*(tau_m - tau_syn_exc))\",\n",
- " \"__P__V_m__I_kernel_inh__X__inh_spikes\": \"1.0*tau_m*tau_syn_inh*(exp(__h/tau_m) - exp(__h/tau_syn_inh))*exp(-__h/tau_syn_inh - __h/tau_m)/(C_m*(tau_m - tau_syn_inh))\",\n",
- " \"__P__V_m__V_m\": \"1.0*exp(-__h/tau_m)\",\n",
- " \"__P__post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\": \"1.0*exp(-__h/tau_tr_post__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml)\"\n",
- " },\n",
- " \"solver\": \"analytical\",\n",
- " \"state_variables\": [\n",
- " \"V_m\",\n",
- " \"I_kernel_exc__X__exc_spikes\",\n",
- " \"post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\",\n",
- " \"I_kernel_inh__X__inh_spikes\"\n",
- " ],\n",
- " \"update_expressions\": {\n",
- " \"I_kernel_exc__X__exc_spikes\": \"I_kernel_exc__X__exc_spikes*__P__I_kernel_exc__X__exc_spikes__I_kernel_exc__X__exc_spikes\",\n",
- " \"I_kernel_inh__X__inh_spikes\": \"I_kernel_inh__X__inh_spikes*__P__I_kernel_inh__X__inh_spikes__I_kernel_inh__X__inh_spikes\",\n",
- " \"V_m\": \"-E_L*__P__V_m__V_m + E_L + I_kernel_exc__X__exc_spikes*__P__V_m__I_kernel_exc__X__exc_spikes + I_kernel_inh__X__inh_spikes*__P__V_m__I_kernel_inh__X__inh_spikes + V_m*__P__V_m__V_m - I_e*__P__V_m__V_m*tau_m/C_m + I_e*tau_m/C_m - I_stim*__P__V_m__V_m*tau_m/C_m + I_stim*tau_m/C_m\",\n",
- " \"post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\": \"__P__post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml*post_trace_kernel__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__X__post_spikes__for_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml\"\n",
- " }\n",
- " }\n",
- "]\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[65,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, DEBUG, [38:0;93:0]]: Start building symbol table!\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "INFO:Analysing input:\n",
- "INFO:{\n",
- " \"dynamics\": [\n",
- " {\n",
- " \"expression\": \"pre_trace_kernel__X__pre_spikes = exp(-t / tau_tr_pre)\",\n",
- " \"initial_values\": {}\n",
- " }\n",
- " ],\n",
- " \"options\": {\n",
- " \"output_timestep_symbol\": \"__h\"\n",
- " },\n",
- " \"parameters\": {\n",
- " \"Wmax\": \"100.0\",\n",
- " \"Wmin\": \"0.0\",\n",
- " \"alpha\": \"1.0\",\n",
- " \"d\": \"1\",\n",
- " \"lambda\": \"0.01\",\n",
- " \"mu_minus\": \"1.0\",\n",
- " \"mu_plus\": \"1.0\",\n",
- " \"tau_tr_post\": \"20\",\n",
- " \"tau_tr_pre\": \"20\"\n",
- " }\n",
- "}\n",
- "INFO:Processing global options...\n",
- "INFO:Processing input shapes...\n",
- "INFO:\n",
- "Processing function-of-time shape \"pre_trace_kernel__X__pre_spikes\" with defining expression = \"exp(-t/tau_tr_pre)\"\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 pre_trace_kernel__X__pre_spikes, derivative_factors = [-1/tau_tr_pre], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape pre_trace_kernel__X__pre_spikes: reconstituting expression -pre_trace_kernel__X__pre_spikes/tau_tr_pre\n",
- "INFO:All known variables: [pre_trace_kernel__X__pre_spikes], all parameters used in ODEs: {tau_tr_pre}\n",
- "INFO:\n",
- "Processing function-of-time shape \"pre_trace_kernel__X__pre_spikes\" with defining expression = \"exp(-t/tau_tr_pre)\"\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 pre_trace_kernel__X__pre_spikes, derivative_factors = [-1/tau_tr_pre], inhom_term = 0.0, nonlin_term = 0.0\n",
- "INFO:Shape pre_trace_kernel__X__pre_spikes: reconstituting expression -pre_trace_kernel__X__pre_spikes/tau_tr_pre\n",
- "DEBUG:Splitting expression -pre_trace_kernel__X__pre_spikes/tau_tr_pre (symbols Matrix([[pre_trace_kernel__X__pre_spikes]]))\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_tr_pre]])\n",
- "DEBUG:\tinhomogeneous term: 0.0\n",
- "DEBUG:\tnonlinear term: 0.0\n",
- "DEBUG:Initializing system of shapes with x = Matrix([[pre_trace_kernel__X__pre_spikes]]), A = Matrix([[-1/tau_tr_pre]]), b = Matrix([[0.0]]), c = Matrix([[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 pre_trace_kernel__X__pre_spikes: reconstituting expression -pre_trace_kernel__X__pre_spikes/tau_tr_pre\n",
- "DEBUG:Splitting expression -pre_trace_kernel__X__pre_spikes/tau_tr_pre (symbols [pre_trace_kernel__X__pre_spikes])\n",
- "DEBUG:\tlinear factors: Matrix([[-1/tau_tr_pre]])\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",
- "DEBUG:os.makedirs('/tmp')\n",
- "DEBUG:write lines to '/tmp/ode_dependency_graph_analytically_solvable_before_propagated.dot'\n",
- "DEBUG:run [PosixPath('dot'), '-Kdot', '-Tpdf', '-O', 'ode_dependency_graph_analytically_solvable_before_propagated.dot']\n",
- "INFO:Saving dependency graph plot to /tmp/ode_dependency_graph_analytically_solvable.dot\n",
- "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: pre_trace_kernel__X__pre_spikes\n",
- "DEBUG:Initializing system of shapes with x = Matrix([[pre_trace_kernel__X__pre_spikes]]), A = Matrix([[-1/tau_tr_pre]]), b = Matrix([[0.0]]), c = Matrix([[0]])\n",
- "DEBUG:System of equations:\n",
- "DEBUG:x = Matrix([[pre_trace_kernel__X__pre_spikes]])\n",
- "DEBUG:A = Matrix([[-1/tau_tr_pre]])\n",
- "DEBUG:b = Matrix([[0.0]])\n",
- "DEBUG:c = Matrix([[0]])\n",
- "INFO:update_expr[pre_trace_kernel__X__pre_spikes] = __P__pre_trace_kernel__X__pre_spikes__pre_trace_kernel__X__pre_spikes*pre_trace_kernel__X__pre_spikes\n",
- "INFO:In ode-toolbox: returning outdict = \n",
- "INFO:[\n",
- " {\n",
- " \"initial_values\": {\n",
- " \"pre_trace_kernel__X__pre_spikes\": \"1\"\n",
- " },\n",
- " \"parameters\": {\n",
- " \"tau_tr_pre\": \"20.0000000000000\"\n",
- " },\n",
- " \"propagators\": {\n",
- " \"__P__pre_trace_kernel__X__pre_spikes__pre_trace_kernel__X__pre_spikes\": \"exp(-__h/tau_tr_pre)\"\n",
- " },\n",
- " \"solver\": \"analytical\",\n",
- " \"state_variables\": [\n",
- " \"pre_trace_kernel__X__pre_spikes\"\n",
- " ],\n",
- " \"update_expressions\": {\n",
- " \"pre_trace_kernel__X__pre_spikes\": \"__P__pre_trace_kernel__X__pre_spikes__pre_trace_kernel__X__pre_spikes*pre_trace_kernel__X__pre_spikes\"\n",
- " }\n",
- " }\n",
- "]\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[66,GLOBAL, INFO]: Analysing/transforming synapse third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.\n",
- "[67,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [39:0;85:0]]: Starts processing of the model 'third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml'\n",
- "[68,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [39:0;85:0]]: Start building symbol table!\n",
- "[69,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, WARNING, [44:8;44:28]]: Variable 'd' has the same name as a physical unit!\n",
- "[70,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, DEBUG, [39:0;85:0]]: Start building symbol table!\n",
- "[71,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, WARNING, [44:8;44:28]]: Variable 'd' has the same name as a physical unit!\n",
- "[72,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.cpp\n",
- "[73,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h\n",
- "[74,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [38:0;93:0]]: Successfully generated code for the model: 'iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target' !\n",
- "[75,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.cpp\n",
- "[76,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.h\n",
- "[77,iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml, INFO, [38:0;93:0]]: Successfully generated code for the model: 'iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target' !\n",
- "[78,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h\n",
- "[79,third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml, INFO, [39:0;85:0]]: Successfully generated code for the model: 'third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml' in: '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target' !\n",
- "[80,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.cpp\n",
- "[81,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.h\n",
- "[82,GLOBAL, INFO]: Rendering template /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/CMakeLists.txt\n",
- "[83,GLOBAL, INFO]: Successfully generated NEST module code in '/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target' !\n",
- "CMake Warning (dev) at CMakeLists.txt:95 (project):\n",
- " cmake_minimum_required() should be called prior to this top-level project()\n",
- " call. Please see the cmake-commands(7) manual for usage documentation of\n",
- " both commands.\n",
- "This warning is for project developers. Use -Wno-dev to suppress it.\n",
- "\n",
- "-- The CXX compiler identification is GNU 12.3.0\n",
- "-- Detecting CXX compiler ABI info\n",
- "-- Detecting CXX compiler ABI info - done\n",
- "-- Check for working CXX compiler: /usr/bin/c++ - skipped\n",
- "-- Detecting CXX compile features\n",
- "-- Detecting CXX compile features - done\n",
- "\n",
- "-------------------------------------------------------\n",
- "nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_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 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",
- "\n",
- "-------------------------------------------------------\n",
- "\n",
- "You can now build and install 'nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module' using\n",
- " make\n",
- " make install\n",
- "\n",
- "The library file libnestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.so will be installed to\n",
- " /tmp/nestml_target_buhdamnv\n",
- "The module can be loaded into NEST using\n",
- " (nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module) Install (in SLI)\n",
- " nest.Install(nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_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",
- "\n",
- " cmake_minimum_required(VERSION 3.26)\n",
- "\n",
- " should be added at the top of the file. The version specified may be lower\n",
- " if you wish to support older CMake versions for this project. For more\n",
- " information run \"cmake --help-policy CMP0000\".\n",
- "This warning is for project developers. Use -Wno-dev to suppress it.\n",
- "\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/stdp_third_factor_active_dendrite/target\n",
- "[ 25%] Building CXX object CMakeFiles/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module_module.dir/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.o\n",
- "[ 50%] Building CXX object CMakeFiles/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module_module.dir/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.o\n",
- "[ 75%] Building CXX object CMakeFiles/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module_module.dir/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.o\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.cpp: In member function ‘void iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::init_state_internal_()’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.cpp:183:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 183 | 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/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.cpp: In member function ‘virtual void iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::update(const nest::Time&, long int, long int)’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.cpp:291:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]\n",
- " 291 | for (long i = 0; i < NUM_SPIKE_RECEPTORS; ++i)\n",
- " | ~~^~~~~~~~~~~~~~~~~~~~~\n",
- "In file included from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.cpp:43:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.h: In constructor ‘continuous_variable_histentry_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml::continuous_variable_histentry_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml(double, double)’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.h:105:10: warning: ‘continuous_variable_histentry_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml::access_counter_’ will be initialized after [-Wreorder]\n",
- " 105 | size_t access_counter_;\n",
- " | ^~~~~~~~~~~~~~~\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.h:102:10: warning: ‘double continuous_variable_histentry_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml::I_post_dend’ [-Wreorder]\n",
- " 102 | double I_post_dend;\n",
- " | ^~~~~~~~~~~\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.cpp:46:1: warning: when initialized here [-Wreorder]\n",
- " 46 | continuous_variable_histentry_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml::continuous_variable_histentry_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml( double t,\n",
- " | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.cpp: In member function ‘void iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml::init_state_internal_()’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.cpp:202:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 202 | 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/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.cpp: In member function ‘virtual void iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml::update(const nest::Time&, long int, long int)’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml.cpp:321:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]\n",
- " 321 | for (long i = 0; i < NUM_SPIKE_RECEPTORS; ++i)\n",
- " | ~~^~~~~~~~~~~~~~~~~~~~~\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "In file included from /home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.cpp:52:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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 = third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; std::string = std::__cxx11::basic_string]’\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.cpp:111:179: required from here\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:727:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 727 | 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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 = third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; std::string = std::__cxx11::basic_string]’\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.cpp:111:179: required from here\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:727:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::recompute_internal_variables() [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:739:3: required from ‘nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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 = third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; std::string = std::__cxx11::basic_string]’\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.cpp:111:179: required from here\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:715:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 715 | 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::recompute_internal_variables() [with targetidentifierT = nest::TargetIdentifierIndex]’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:739:3: required from ‘nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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 = third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; std::string = std::__cxx11::basic_string]’\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.cpp:111:179: required from here\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:715:16: warning: unused variable ‘__resolution’ [-Wunused-variable]\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::send(nest::Event&, size_t, const nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; size_t = long unsigned 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:522:14: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 522 | auto get_t = [_tr_t](){ return _tr_t; }; // 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:551:14: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 551 | auto get_t = [__t_spike](){ return __t_spike; }; // 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:591:14: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 591 | auto get_t = [__t_spike](){ return __t_spike; }; // 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:455:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 455 | 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:457:10: warning: variable ‘get_thread’ set but not used [-Wunused-but-set-variable]\n",
- " 457 | auto get_thread = [tid]()\n",
- " | ^~~~~~~~~~\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::send(nest::Event&, size_t, const nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; size_t = long unsigned 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:522:14: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 522 | auto get_t = [_tr_t](){ return _tr_t; }; // 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:551:14: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 551 | auto get_t = [__t_spike](){ return __t_spike; }; // 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:591:14: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 591 | auto get_t = [__t_spike](){ return __t_spike; }; // 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:455:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 455 | 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:457:10: warning: variable ‘get_thread’ set but not used [-Wunused-but-set-variable]\n",
- " 457 | auto get_thread = [tid]()\n",
- " | ^~~~~~~~~~\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::update_internal_state_(double, double, const nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierPtrRport]’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:517:9: required from ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::send(nest::Event&, size_t, const nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; size_t = long unsigned 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:789:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 789 | 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:790:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 790 | 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h: In instantiation of ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::update_internal_state_(double, double, const nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestmlCommonSynapseProperties&) [with targetidentifierT = nest::TargetIdentifierIndex]’:\n",
- "/home/charl/julich/nestml-fork-clopath_synapse/nestml/doc/tutorials/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:517:9: required from ‘void nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::send(nest::Event&, size_t, const nest::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_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::third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml; size_t = long unsigned 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:789:18: warning: unused variable ‘__resolution’ [-Wunused-variable]\n",
- " 789 | 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/stdp_third_factor_active_dendrite/target/third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml__with_iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml.h:790:10: warning: variable ‘get_t’ set but not used [-Wunused-but-set-variable]\n",
- " 790 | 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"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[100%] Linking CXX shared module nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.so\n",
- "[100%] Built target nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module_module\n",
- "[100%] Built target nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module_module\n",
- "Install the project...\n",
- "-- Install configuration: \"\"\n",
- "-- Installing: /tmp/nestml_target_buhdamnv/nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module.so\n",
- "iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml::init_state_internal_()\n",
- "iaf_psc_exp_dend7c1adc9dbf3144fabdd9ebff0cce4e18_neuron_nestml__with_third_factor_stdp7c1adc9dbf3144fabdd9ebff0cce4e18_synapse_nestml::init_state_internal_()\n",
- "\n",
- "Dec 21 08:04:39 Install [Info]: \n",
- " loaded module nestml_7c1adc9dbf3144fabdd9ebff0cce4e18_module\n"
- ]
- }
- ],
- "source": [
- "# codegen_opts = {\"neuron_synapse_pairs\": [{\"neuron\": \"iaf_psc_exp_dend\",\n",
- "# \"synapse\": \"third_factor_stdp_synapse\",\n",
- "# \"post_ports\": [\"post_spikes\",\n",
- "# [\"I_post_dend\", \"I_dend\"]]}]}\n",
- "\n",
- "# if not NESTTools.detect_nest_version().startswith(\"v2\"):\n",
- "# codegen_opts[\"neuron_parent_class\"] = \"StructuralPlasticityNode\"\n",
- "# codegen_opts[\"neuron_parent_class_include\"] = \"structural_plasticity_node.h\"\n",
- "\n",
- "# generate the \"jit\" model (co-generated neuron and synapse), that does not rely on ArchivingNode\n",
- "# files = [os.path.join(\"models\", \"neurons\", \"iaf_psc_exp_dend_neuron.nestml\"),\n",
- "# os.path.join(\"models\", \"synapses\", \"third_factor_stdp_synapse.nestml\")]\n",
- "# input_path = [os.path.realpath(os.path.join(os.path.dirname(__file__), os.path.join(\n",
- "# os.pardir, os.pardir, s))) for s in files]\n",
- "# generate_nest_target(input_path=input_path,\n",
- "# target_path=\"/tmp/nestml-jit\",\n",
- "# logging_level=\"INFO\",\n",
- "# module_name=\"nestml_jit_module\",\n",
- "# codegen_opts=codegen_opts)\n",
- "#nest.Install(\"nestml_jit_module\")\n",
- "\n",
- "# generate and build code\n",
- "module_name, neuron_model_name, synapse_model_name = \\\n",
- " NESTCodeGeneratorUtils.generate_code_for(\"../../../models/neurons/iaf_psc_exp_dend_neuron.nestml\",\n",
- " \"../../../models/synapses/third_factor_stdp_synapse.nestml\",\n",
- " logging_level=\"DEBUG\",\n",
- " post_ports=[\"post_spikes\", [\"I_post_dend\", \"I_dend\"]])\n",
- "\n",
- "# load dynamic library (NEST extension module) into NEST kernel\n",
- "nest.Install(module_name)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Now, the NESTML model is ready to be used in a simulation."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 6,
- "metadata": {},
- "outputs": [],
- "source": [
- "def run_synapse_test(neuron_model_name,\n",
- " synapse_model_name,\n",
- " resolution=1., # [ms]\n",
- " delay=1., # [ms]\n",
- " sim_time=None, # if None, computed from pre and post spike times\n",
- " pre_spike_times=None,\n",
- " post_spike_times=None,\n",
- " fname_snip=\"\"):\n",
- "\n",
- " if pre_spike_times is None:\n",
- " pre_spike_times = []\n",
- "\n",
- " if post_spike_times is None:\n",
- " post_spike_times = []\n",
- "\n",
- " if sim_time is None:\n",
- " sim_time = max(np.amax(pre_spike_times), np.amax(post_spike_times)) + 5 * delay\n",
- "\n",
- " nest_version = NESTTools.detect_nest_version()\n",
- "\n",
- " nest.set_verbosity(\"M_ALL\")\n",
- " nest.ResetKernel()\n",
- "\n",
- " print(\"Pre spike times: \" + str(pre_spike_times))\n",
- " print(\"Post spike times: \" + str(post_spike_times))\n",
- "\n",
- " nest.set_verbosity(\"M_WARNING\")\n",
- "\n",
- " nest.ResetKernel()\n",
- " nest.SetKernelStatus({\"resolution\": resolution})\n",
- "\n",
- " wr = nest.Create(\"weight_recorder\")\n",
- " nest.CopyModel(synapse_model_name, \"stdp_nestml_rec\",\n",
- " {\"weight_recorder\": wr[0], \"w\": 1., \"d\": 1., \"receptor_type\": 0, \"lambda\": .001})\n",
- "\n",
- " # create spike_generators with these times\n",
- " pre_sg = nest.Create(\"spike_generator\",\n",
- " params={\"spike_times\": pre_spike_times})\n",
- " post_sg = nest.Create(\"spike_generator\",\n",
- " params={\"spike_times\": post_spike_times,\n",
- " \"allow_offgrid_times\": True})\n",
- "\n",
- " # create parrot neurons and connect spike_generators\n",
- " pre_neuron = nest.Create(\"parrot_neuron\")\n",
- " post_neuron = nest.Create(neuron_model_name)\n",
- "\n",
- " if nest_version.startswith(\"v2\"):\n",
- " spikedet_pre = nest.Create(\"spike_detector\")\n",
- " spikedet_post = nest.Create(\"spike_detector\")\n",
- " else:\n",
- " spikedet_pre = nest.Create(\"spike_recorder\")\n",
- " spikedet_post = nest.Create(\"spike_recorder\")\n",
- " mm = nest.Create(\"multimeter\", params={\"record_from\": [\"V_m\", post_trace_var]})\n",
- "\n",
- " nest.Connect(pre_sg, pre_neuron, \"one_to_one\", syn_spec={\"delay\": 1.})\n",
- " nest.Connect(post_sg, post_neuron, \"one_to_one\", syn_spec={\"delay\": 1., \"weight\": 6000.})\n",
- " if nest_version.startswith(\"v2\"):\n",
- " nest.Connect(pre_neuron, post_neuron, \"all_to_all\", syn_spec={\"model\": \"stdp_nestml_rec\"})\n",
- " else:\n",
- " nest.Connect(pre_neuron, post_neuron, \"all_to_all\", syn_spec={\"synapse_model\": \"stdp_nestml_rec\"})\n",
- " nest.Connect(mm, post_neuron)\n",
- " nest.Connect(pre_neuron, spikedet_pre)\n",
- " nest.Connect(post_neuron, spikedet_post)\n",
- "\n",
- " # get STDP synapse and weight before protocol\n",
- " syn = nest.GetConnections(source=pre_neuron, synapse_model=\"stdp_nestml_rec\")\n",
- "\n",
- " t = 0.\n",
- " t_hist = []\n",
- " w_hist = []\n",
- " state = 0\n",
- " while t <= sim_time:\n",
- " print(\"t = \" + str(t) + \" ms\")\n",
- " if t > sim_time / 6. and state == 0:\n",
- " nest.SetStatus(post_neuron, {\"I_dend\": 1.})\n",
- " state = 1\n",
- " if t > 2 * sim_time / 6 and state == 1:\n",
- " nest.SetStatus(post_neuron, {\"I_dend\": 1.})\n",
- " if t > 3 * sim_time / 6. and state == 1:\n",
- " state = 2\n",
- " if t > 5 * sim_time / 6. and state == 2:\n",
- " nest.SetStatus(post_neuron, {\"I_dend\": 0.})\n",
- " state = 3\n",
- " nest.Simulate(resolution)\n",
- " t += resolution\n",
- " t_hist.append(t)\n",
- " w_hist.append(nest.GetStatus(syn)[0][\"w\"])\n",
- "\n",
- " third_factor_trace = nest.GetStatus(mm, \"events\")[0][post_trace_var]\n",
- " timevec = nest.GetStatus(mm, \"events\")[0][\"times\"]\n",
- "\n",
- " \n",
- " \n",
- " \n",
- " fig, ax = plt.subplots(nrows=2)\n",
- " ax1, ax2 = ax\n",
- "\n",
- " V_m = nest.GetStatus(mm, \"events\")[0][\"V_m\"]\n",
- " ax2.plot(timevec, third_factor_trace, label=\"I_dend_post\")\n",
- " ax1.plot(timevec, V_m, alpha=.7, linestyle=\":\")\n",
- " ax1.set_ylabel(\"V_m\")\n",
- "\n",
- " for _ax in ax:\n",
- " _ax.grid(which=\"major\", axis=\"both\")\n",
- " _ax.grid(which=\"minor\", axis=\"x\", linestyle=\":\", alpha=.4)\n",
- " _ax.set_xlim(0., sim_time)\n",
- " _ax.legend()\n",
- " fig.savefig(\"/tmp/stdp_third_factor_synapse_test\" + fname_snip + \"_V_m.png\", dpi=300)\n",
- " \n",
- " \n",
- " \n",
- " fig, ax = plt.subplots(nrows=5)\n",
- " ax1, ax2, ax3, ax4, ax5 = ax\n",
- "\n",
- " pre_spike_times_ = nest.GetStatus(spikedet_pre, \"events\")[0][\"times\"]\n",
- " print(\"Actual pre spike times: \" + str(pre_spike_times_))\n",
- "\n",
- " n_spikes = len(pre_spike_times_)\n",
- " for i in range(n_spikes):\n",
- " ax1.plot(2 * [pre_spike_times_[i] + delay], [0, 1], linewidth=2, color=\"blue\", alpha=.4)\n",
- "\n",
- " post_spike_times_ = nest.GetStatus(spikedet_post, \"events\")[0][\"times\"]\n",
- " print(\"Actual post spike times: \" + str(post_spike_times_))\n",
- " ax1.set_ylabel(\"Pre spikes\")\n",
- "\n",
- " n_spikes = len(post_spike_times_)\n",
- " for i in range(n_spikes):\n",
- " if i == 0:\n",
- " _lbl = \"nestml\"\n",
- " else:\n",
- " _lbl = None\n",
- " ax[-4].plot(2 * [post_spike_times_[i]], [0, 1], linewidth=2, color=\"black\", alpha=.4, label=_lbl)\n",
- " ax[-4].set_ylabel(\"Post spikes\")\n",
- "\n",
- " ax[-3].plot(timevec, third_factor_trace)\n",
- " ax[-3].set_ylabel(\"3rd factor\")\n",
- "\n",
- " ax[-2].plot(t_hist[:-1], np.diff(w_hist), marker=\"o\", label=u\"Δw\")\n",
- " ax[-2].set_ylabel(u\"Δw\")\n",
- "\n",
- " ax[-1].plot(t_hist, w_hist, marker=\"o\")\n",
- " ax[-1].set_ylabel(\"w\")\n",
- " ax[-1].set_xlabel(\"Time [ms]\")\n",
- " for _ax in ax:\n",
- " if not _ax == ax[-1]:\n",
- " _ax.set_xticklabels([])\n",
- " _ax.grid(True)\n",
- " _ax.set_xlim(0., sim_time)\n",
- "\n",
- " fig.savefig(\"/tmp/stdp_third_factor_synapse_test\" + fname_snip + \".png\", dpi=300)\n",
- "\n",
- " return timevec, t_hist, third_factor_trace, w_hist\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 7,
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "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",
- "WARNING:No artists with labels found to put in legend. Note that artists whose label start with an underscore are ignored when legend() is called with no argument.\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "\n",
- " -- N E S T --\n",
- " Copyright (C) 2004 The NEST Initiative\n",
- "\n",
- " Version: 3.6.0-post0.dev0\n",
- " Built: Nov 8 2023 01:11:46\n",
- "\n",
- " This program is provided AS IS and comes with\n",
- " NO WARRANTY. See the file LICENSE for details.\n",
- "\n",
- " Problems or suggestions?\n",
- " Visit https://www.nest-simulator.org\n",
- "\n",
- " Type 'nest.help()' to find out more about NEST.\n",
- "\n",
- "[85,GLOBAL, INFO]: The NEST Simulator version was automatically detected as: master\n",
- "Pre spike times: [1.000e+00 2.000e+00 3.000e+00 4.000e+00 5.000e+00 7.000e+00 9.000e+00\n",
- " 1.200e+01 1.700e+01 2.100e+01 2.300e+01 2.700e+01 2.800e+01 3.000e+01\n",
- " 3.100e+01 3.300e+01 3.500e+01 3.600e+01 3.700e+01 3.800e+01 3.900e+01\n",
- " 4.100e+01 4.400e+01 4.600e+01 4.900e+01 5.100e+01 5.300e+01 5.500e+01\n",
- " 5.600e+01 5.700e+01 5.800e+01 5.900e+01 6.000e+01 6.100e+01 6.400e+01\n",
- " 6.500e+01 6.700e+01 7.000e+01 7.300e+01 7.500e+01 7.700e+01 8.000e+01\n",
- " 8.100e+01 8.200e+01 8.300e+01 8.600e+01 9.100e+01 9.300e+01 9.400e+01\n",
- " 9.500e+01 9.600e+01 9.800e+01 9.900e+01 1.000e+02 1.010e+02 1.040e+02\n",
- " 1.050e+02 1.080e+02 1.090e+02 1.100e+02 1.110e+02 1.130e+02 1.150e+02\n",
- " 1.180e+02 1.190e+02 1.210e+02 1.240e+02 1.260e+02 1.270e+02 1.280e+02\n",
- " 1.310e+02 1.320e+02 1.340e+02 1.350e+02 1.390e+02 1.430e+02 1.440e+02\n",
- " 1.460e+02 1.470e+02 1.480e+02 1.490e+02 1.510e+02 1.520e+02 1.530e+02\n",
- " 1.570e+02 1.580e+02 1.590e+02 1.600e+02 1.620e+02 1.630e+02 1.660e+02\n",
- " 1.670e+02 1.680e+02 1.690e+02 1.700e+02 1.730e+02 1.750e+02 1.760e+02\n",
- " 1.790e+02 1.800e+02 1.810e+02 1.820e+02 1.850e+02 1.880e+02 1.890e+02\n",
- " 1.930e+02 1.940e+02 1.980e+02 2.000e+02 2.010e+02 2.030e+02 2.060e+02\n",
- " 2.070e+02 2.080e+02 2.090e+02 2.100e+02 2.110e+02 2.130e+02 2.140e+02\n",
- " 2.160e+02 2.180e+02 2.210e+02 2.250e+02 2.320e+02 2.330e+02 2.340e+02\n",
- " 2.380e+02 2.400e+02 2.420e+02 2.430e+02 2.470e+02 2.480e+02 2.490e+02\n",
- " 2.500e+02 2.530e+02 2.540e+02 2.560e+02 2.570e+02 2.580e+02 2.620e+02\n",
- " 2.630e+02 2.650e+02 2.680e+02 2.700e+02 2.730e+02 2.750e+02 2.770e+02\n",
- " 2.780e+02 2.800e+02 2.820e+02 2.830e+02 2.840e+02 2.870e+02 2.920e+02\n",
- " 2.930e+02 2.990e+02 3.000e+02 3.010e+02 3.030e+02 3.040e+02 3.080e+02\n",
- " 3.100e+02 3.110e+02 3.130e+02 3.170e+02 3.220e+02 3.230e+02 3.280e+02\n",
- " 3.290e+02 3.350e+02 3.370e+02 3.380e+02 3.390e+02 3.410e+02 3.430e+02\n",
- " 3.450e+02 3.490e+02 3.560e+02 3.590e+02 3.700e+02 3.710e+02 3.720e+02\n",
- " 3.750e+02 3.770e+02 3.780e+02 3.810e+02 3.820e+02 3.840e+02 3.890e+02\n",
- " 3.910e+02 3.960e+02 3.980e+02 3.990e+02 4.050e+02 4.070e+02 4.080e+02\n",
- " 4.090e+02 4.110e+02 4.120e+02 4.130e+02 4.150e+02 4.180e+02 4.190e+02\n",
- " 4.210e+02 4.220e+02 4.250e+02 4.280e+02 4.290e+02 4.300e+02 4.310e+02\n",
- " 4.330e+02 4.340e+02 4.370e+02 4.390e+02 4.420e+02 4.440e+02 4.470e+02\n",
- " 4.500e+02 4.540e+02 4.550e+02 4.590e+02 4.610e+02 4.620e+02 4.630e+02\n",
- " 4.640e+02 4.650e+02 4.670e+02 4.680e+02 4.690e+02 4.710e+02 4.720e+02\n",
- " 4.750e+02 4.810e+02 4.910e+02 4.920e+02 4.970e+02 5.020e+02 5.050e+02\n",
- " 5.070e+02 5.110e+02 5.140e+02 5.160e+02 5.180e+02 5.190e+02 5.200e+02\n",
- " 5.250e+02 5.270e+02 5.280e+02 5.320e+02 5.330e+02 5.350e+02 5.380e+02\n",
- " 5.410e+02 5.430e+02 5.440e+02 5.460e+02 5.470e+02 5.500e+02 5.530e+02\n",
- " 5.550e+02 5.580e+02 5.590e+02 5.630e+02 5.660e+02 5.700e+02 5.750e+02\n",
- " 5.780e+02 5.850e+02 5.900e+02 5.950e+02 6.010e+02 6.030e+02 6.050e+02\n",
- " 6.060e+02 6.070e+02 6.110e+02 6.120e+02 6.150e+02 6.230e+02 6.290e+02\n",
- " 6.300e+02 6.310e+02 6.320e+02 6.330e+02 6.400e+02 6.430e+02 6.470e+02\n",
- " 6.480e+02 6.500e+02 6.510e+02 6.520e+02 6.590e+02 6.600e+02 6.620e+02\n",
- " 6.640e+02 6.680e+02 6.730e+02 6.750e+02 6.760e+02 6.790e+02 6.800e+02\n",
- " 6.820e+02 6.870e+02 6.880e+02 6.970e+02 7.020e+02 7.090e+02 7.150e+02\n",
- " 7.180e+02 7.190e+02 7.200e+02 7.220e+02 7.240e+02 7.250e+02 7.330e+02\n",
- " 7.390e+02 7.410e+02 7.420e+02 7.470e+02 7.510e+02 7.530e+02 7.550e+02\n",
- " 7.600e+02 7.650e+02 7.690e+02 7.720e+02 7.770e+02 7.780e+02 7.890e+02\n",
- " 7.900e+02 7.910e+02 7.980e+02 8.030e+02 8.090e+02 8.130e+02 8.160e+02\n",
- " 8.190e+02 8.310e+02 8.340e+02 8.390e+02 8.420e+02 8.510e+02 8.530e+02\n",
- " 8.680e+02 8.840e+02 8.900e+02 8.920e+02 8.930e+02 9.000e+02 9.030e+02\n",
- " 9.090e+02 9.170e+02 9.300e+02 9.380e+02 9.390e+02 9.540e+02 9.570e+02\n",
- " 9.640e+02 9.650e+02 9.660e+02 9.810e+02 9.850e+02 9.940e+02 9.950e+02\n",
- " 1.001e+03 1.018e+03 1.023e+03 1.053e+03 1.068e+03 1.100e+03 1.109e+03\n",
- " 1.146e+03 1.172e+03 1.226e+03 1.286e+03 1.287e+03 1.327e+03 1.353e+03\n",
- " 1.396e+03 1.426e+03 1.488e+03 1.521e+03 1.539e+03 1.550e+03 1.571e+03]\n",
- "Post spike times: [ 4. 7. 8. 9. 10. 11. 12. 14. 15. 16. 19. 20.\n",
- " 21. 25. 26. 27. 29. 32. 33. 35. 36. 38. 40. 41.\n",
- " 43. 45. 46. 47. 48. 50. 51. 52. 53. 54. 55. 57.\n",
- " 58. 59. 61. 68. 69. 70. 73. 76. 77. 79. 81. 83.\n",
- " 85. 86. 88. 92. 94. 96. 97. 98. 99. 102. 103. 104.\n",
- " 105. 108. 110. 111. 114. 116. 117. 119. 121. 123. 125. 128.\n",
- " 131. 135. 136. 140. 141. 142. 143. 146. 147. 148. 149. 151.\n",
- " 153. 155. 156. 158. 159. 161. 164. 165. 168. 169. 171. 173.\n",
- " 174. 178. 182. 184. 186. 187. 189. 191. 192. 193. 195. 196.\n",
- " 198. 199. 200. 201. 202. 204. 210. 211. 214. 215. 216. 217.\n",
- " 218. 223. 226. 229. 230. 231. 232. 237. 238. 239. 240. 241.\n",
- " 242. 243. 244. 245. 247. 250. 251. 252. 253. 255. 256. 257.\n",
- " 258. 260. 264. 266. 268. 270. 271. 272. 273. 274. 275. 278.\n",
- " 279. 280. 281. 286. 287. 289. 290. 291. 295. 296. 299. 300.\n",
- " 301. 305. 309. 312. 313. 315. 319. 322. 323. 324. 326. 327.\n",
- " 328. 331. 333. 335. 338. 339. 343. 344. 345. 346. 347. 349.\n",
- " 352. 355. 358. 359. 361. 362. 364. 367. 369. 381. 382. 384.\n",
- " 385. 388. 393. 394. 396. 397. 402. 404. 412. 414. 415. 416.\n",
- " 418. 419. 424. 425. 427. 430. 431. 433. 434. 437. 439. 441.\n",
- " 443. 452. 453. 456. 457. 458. 459. 466. 467. 472. 474. 476.\n",
- " 478. 481. 483. 484. 485. 486. 489. 490. 492. 494. 501. 507.\n",
- " 509. 510. 512. 513. 516. 517. 522. 530. 537. 543. 545. 547.\n",
- " 548. 550. 558. 559. 560. 562. 563. 567. 568. 575. 577. 579.\n",
- " 584. 585. 587. 592. 596. 597. 600. 603. 604. 613. 617. 618.\n",
- " 620. 623. 625. 628. 633. 637. 638. 639. 647. 648. 649. 651.\n",
- " 654. 656. 657. 660. 666. 668. 670. 674. 676. 681. 683. 689.\n",
- " 690. 698. 701. 702. 703. 706. 707. 710. 717. 723. 734. 744.\n",
- " 746. 754. 762. 764. 765. 772. 775. 778. 779. 787. 788. 792.\n",
- " 800. 802. 807. 829. 832. 836. 840. 841. 849. 863. 882. 894.\n",
- " 896. 915. 922. 924. 926. 931. 933. 934. 961. 967. 971. 983.\n",
- " 1014. 1015. 1016. 1030. 1047. 1061. 1068. 1083. 1126. 1144. 1145. 1150.\n",
- " 1163. 1221. 1239. 1307. 1308. 1341. 1416. 1468. 1987.]\n",
- "t = 0.0 ms\n",
- "t = 0.5 ms\n",
- "t = 1.0 ms\n",
- "t = 1.5 ms\n",
- "t = 2.0 ms\n",
- "t = 2.5 ms\n",
- "t = 3.0 ms\n",
- "t = 3.5 ms\n",
- "t = 4.0 ms\n",
- "t = 4.5 ms\n",
- "t = 5.0 ms\n",
- "t = 5.5 ms\n",
- "t = 6.0 ms\n",
- "t = 6.5 ms\n",
- "t = 7.0 ms\n",
- "t = 7.5 ms\n",
- "t = 8.0 ms\n",
- "t = 8.5 ms\n",
- "t = 9.0 ms\n",
- "t = 9.5 ms\n",
- "t = 10.0 ms\n",
- "t = 10.5 ms\n",
- "t = 11.0 ms\n",
- "t = 11.5 ms\n",
- "t = 12.0 ms\n",
- "t = 12.5 ms\n",
- "t = 13.0 ms\n",
- "t = 13.5 ms\n",
- "t = 14.0 ms\n",
- "t = 14.5 ms\n",
- "t = 15.0 ms\n",
- "t = 15.5 ms\n",
- "t = 16.0 ms\n",
- "t = 16.5 ms\n",
- "t = 17.0 ms\n",
- "t = 17.5 ms\n",
- "t = 18.0 ms\n",
- "t = 18.5 ms\n",
- "t = 19.0 ms\n",
- "t = 19.5 ms\n",
- "t = 20.0 ms\n",
- "t = 20.5 ms\n",
- "t = 21.0 ms\n",
- "t = 21.5 ms\n",
- "t = 22.0 ms\n",
- "t = 22.5 ms\n",
- "t = 23.0 ms\n",
- "t = 23.5 ms\n",
- "t = 24.0 ms\n",
- "t = 24.5 ms\n",
- "t = 25.0 ms\n",
- "t = 25.5 ms\n",
- "t = 26.0 ms\n",
- "t = 26.5 ms\n",
- "t = 27.0 ms\n",
- "t = 27.5 ms\n",
- "t = 28.0 ms\n",
- "t = 28.5 ms\n",
- "t = 29.0 ms\n",
- "t = 29.5 ms\n",
- "t = 30.0 ms\n",
- "t = 30.5 ms\n",
- "t = 31.0 ms\n",
- "t = 31.5 ms\n",
- "t = 32.0 ms\n",
- "t = 32.5 ms\n",
- "t = 33.0 ms\n",
- "t = 33.5 ms\n",
- "t = 34.0 ms\n",
- "t = 34.5 ms\n",
- "t = 35.0 ms\n",
- "t = 35.5 ms\n",
- "t = 36.0 ms\n",
- "t = 36.5 ms\n",
- "t = 37.0 ms\n",
- "t = 37.5 ms\n",
- "t = 38.0 ms\n",
- "t = 38.5 ms\n",
- "t = 39.0 ms\n",
- "t = 39.5 ms\n",
- "t = 40.0 ms\n",
- "t = 40.5 ms\n",
- "t = 41.0 ms\n",
- "t = 41.5 ms\n",
- "t = 42.0 ms\n",
- "t = 42.5 ms\n",
- "t = 43.0 ms\n",
- "t = 43.5 ms\n",
- "t = 44.0 ms\n",
- "t = 44.5 ms\n",
- "t = 45.0 ms\n",
- "t = 45.5 ms\n",
- "t = 46.0 ms\n",
- "t = 46.5 ms\n",
- "t = 47.0 ms\n",
- "t = 47.5 ms\n",
- "t = 48.0 ms\n",
- "t = 48.5 ms\n",
- "t = 49.0 ms\n",
- "t = 49.5 ms\n",
- "t = 50.0 ms\n",
- "t = 50.5 ms\n",
- "t = 51.0 ms\n",
- "t = 51.5 ms\n",
- "t = 52.0 ms\n",
- "t = 52.5 ms\n",
- "t = 53.0 ms\n",
- "t = 53.5 ms\n",
- "t = 54.0 ms\n",
- "t = 54.5 ms\n",
- "t = 55.0 ms\n",
- "t = 55.5 ms\n",
- "t = 56.0 ms\n",
- "t = 56.5 ms\n",
- "t = 57.0 ms\n",
- "t = 57.5 ms\n",
- "t = 58.0 ms\n",
- "t = 58.5 ms\n",
- "t = 59.0 ms\n",
- "t = 59.5 ms\n",
- "t = 60.0 ms\n",
- "t = 60.5 ms\n",
- "t = 61.0 ms\n",
- "t = 61.5 ms\n",
- "t = 62.0 ms\n",
- "t = 62.5 ms\n",
- "t = 63.0 ms\n",
- "t = 63.5 ms\n",
- "t = 64.0 ms\n",
- "t = 64.5 ms\n",
- "t = 65.0 ms\n",
- "t = 65.5 ms\n",
- "t = 66.0 ms\n",
- "t = 66.5 ms\n",
- "t = 67.0 ms\n",
- "t = 67.5 ms\n",
- "t = 68.0 ms\n",
- "t = 68.5 ms\n",
- "t = 69.0 ms\n",
- "t = 69.5 ms\n",
- "t = 70.0 ms\n",
- "t = 70.5 ms\n",
- "t = 71.0 ms\n",
- "t = 71.5 ms\n",
- "t = 72.0 ms\n",
- "t = 72.5 ms\n",
- "t = 73.0 ms\n",
- "t = 73.5 ms\n",
- "t = 74.0 ms\n",
- "t = 74.5 ms\n",
- "t = 75.0 ms\n",
- "t = 75.5 ms\n",
- "t = 76.0 ms\n",
- "t = 76.5 ms\n",
- "t = 77.0 ms\n",
- "t = 77.5 ms\n",
- "t = 78.0 ms\n",
- "t = 78.5 ms\n",
- "t = 79.0 ms\n",
- "t = 79.5 ms\n",
- "t = 80.0 ms\n",
- "t = 80.5 ms\n",
- "t = 81.0 ms\n",
- "t = 81.5 ms\n",
- "t = 82.0 ms\n",
- "t = 82.5 ms\n",
- "t = 83.0 ms\n",
- "t = 83.5 ms\n",
- "t = 84.0 ms\n",
- "t = 84.5 ms\n",
- "t = 85.0 ms\n",
- "t = 85.5 ms\n",
- "t = 86.0 ms\n",
- "t = 86.5 ms\n",
- "t = 87.0 ms\n",
- "t = 87.5 ms\n",
- "t = 88.0 ms\n",
- "t = 88.5 ms\n",
- "t = 89.0 ms\n",
- "t = 89.5 ms\n",
- "t = 90.0 ms\n",
- "t = 90.5 ms\n",
- "t = 91.0 ms\n",
- "t = 91.5 ms\n",
- "t = 92.0 ms\n",
- "t = 92.5 ms\n",
- "t = 93.0 ms\n",
- "t = 93.5 ms\n",
- "t = 94.0 ms\n",
- "t = 94.5 ms\n",
- "t = 95.0 ms\n",
- "t = 95.5 ms\n",
- "t = 96.0 ms\n",
- "t = 96.5 ms\n",
- "t = 97.0 ms\n",
- "t = 97.5 ms\n",
- "t = 98.0 ms\n",
- "t = 98.5 ms\n",
- "t = 99.0 ms\n",
- "t = 99.5 ms\n",
- "t = 100.0 ms\n",
- "t = 100.5 ms\n",
- "t = 101.0 ms\n",
- "t = 101.5 ms\n",
- "t = 102.0 ms\n",
- "t = 102.5 ms\n",
- "t = 103.0 ms\n",
- "t = 103.5 ms\n",
- "t = 104.0 ms\n",
- "t = 104.5 ms\n",
- "t = 105.0 ms\n",
- "t = 105.5 ms\n",
- "t = 106.0 ms\n",
- "t = 106.5 ms\n",
- "t = 107.0 ms\n",
- "t = 107.5 ms\n",
- "t = 108.0 ms\n",
- "t = 108.5 ms\n",
- "t = 109.0 ms\n",
- "t = 109.5 ms\n",
- "t = 110.0 ms\n",
- "t = 110.5 ms\n",
- "t = 111.0 ms\n",
- "t = 111.5 ms\n",
- "t = 112.0 ms\n",
- "t = 112.5 ms\n",
- "t = 113.0 ms\n",
- "t = 113.5 ms\n",
- "t = 114.0 ms\n",
- "t = 114.5 ms\n",
- "t = 115.0 ms\n",
- "t = 115.5 ms\n",
- "t = 116.0 ms\n",
- "t = 116.5 ms\n",
- "t = 117.0 ms\n",
- "t = 117.5 ms\n",
- "t = 118.0 ms\n",
- "t = 118.5 ms\n",
- "t = 119.0 ms\n",
- "t = 119.5 ms\n",
- "t = 120.0 ms\n",
- "t = 120.5 ms\n",
- "t = 121.0 ms\n",
- "t = 121.5 ms\n",
- "t = 122.0 ms\n",
- "t = 122.5 ms\n",
- "t = 123.0 ms\n",
- "t = 123.5 ms\n",
- "t = 124.0 ms\n",
- "t = 124.5 ms\n",
- "t = 125.0 ms\n",
- "t = 125.5 ms\n",
- "t = 126.0 ms\n",
- "t = 126.5 ms\n",
- "t = 127.0 ms\n",
- "t = 127.5 ms\n",
- "t = 128.0 ms\n",
- "t = 128.5 ms\n",
- "t = 129.0 ms\n",
- "t = 129.5 ms\n",
- "t = 130.0 ms\n",
- "t = 130.5 ms\n",
- "t = 131.0 ms\n",
- "t = 131.5 ms\n",
- "t = 132.0 ms\n",
- "t = 132.5 ms\n",
- "t = 133.0 ms\n",
- "t = 133.5 ms\n",
- "t = 134.0 ms\n",
- "t = 134.5 ms\n",
- "t = 135.0 ms\n",
- "t = 135.5 ms\n",
- "t = 136.0 ms\n",
- "t = 136.5 ms\n",
- "t = 137.0 ms\n",
- "t = 137.5 ms\n",
- "t = 138.0 ms\n",
- "t = 138.5 ms\n",
- "t = 139.0 ms\n",
- "t = 139.5 ms\n",
- "t = 140.0 ms\n",
- "t = 140.5 ms\n",
- "t = 141.0 ms\n",
- "t = 141.5 ms\n",
- "t = 142.0 ms\n",
- "t = 142.5 ms\n",
- "t = 143.0 ms\n",
- "t = 143.5 ms\n",
- "t = 144.0 ms\n",
- "t = 144.5 ms\n",
- "t = 145.0 ms\n",
- "t = 145.5 ms\n",
- "t = 146.0 ms\n",
- "t = 146.5 ms\n",
- "t = 147.0 ms\n",
- "t = 147.5 ms\n",
- "t = 148.0 ms\n",
- "t = 148.5 ms\n",
- "t = 149.0 ms\n",
- "t = 149.5 ms\n",
- "t = 150.0 ms\n",
- "t = 150.5 ms\n",
- "t = 151.0 ms\n",
- "t = 151.5 ms\n",
- "t = 152.0 ms\n",
- "t = 152.5 ms\n",
- "t = 153.0 ms\n",
- "t = 153.5 ms\n",
- "t = 154.0 ms\n",
- "t = 154.5 ms\n",
- "t = 155.0 ms\n",
- "t = 155.5 ms\n",
- "t = 156.0 ms\n",
- "t = 156.5 ms\n",
- "t = 157.0 ms\n",
- "t = 157.5 ms\n",
- "t = 158.0 ms\n",
- "t = 158.5 ms\n",
- "t = 159.0 ms\n",
- "t = 159.5 ms\n",
- "t = 160.0 ms\n",
- "t = 160.5 ms\n",
- "t = 161.0 ms\n",
- "t = 161.5 ms\n",
- "t = 162.0 ms\n",
- "t = 162.5 ms\n",
- "t = 163.0 ms\n",
- "t = 163.5 ms\n",
- "t = 164.0 ms\n",
- "t = 164.5 ms\n",
- "t = 165.0 ms\n",
- "t = 165.5 ms\n",
- "t = 166.0 ms\n",
- "t = 166.5 ms\n",
- "t = 167.0 ms\n",
- "t = 167.5 ms\n",
- "t = 168.0 ms\n",
- "t = 168.5 ms\n",
- "t = 169.0 ms\n",
- "t = 169.5 ms\n",
- "t = 170.0 ms\n",
- "t = 170.5 ms\n",
- "t = 171.0 ms\n",
- "t = 171.5 ms\n",
- "t = 172.0 ms\n",
- "t = 172.5 ms\n",
- "t = 173.0 ms\n",
- "t = 173.5 ms\n",
- "t = 174.0 ms\n",
- "t = 174.5 ms\n",
- "t = 175.0 ms\n",
- "t = 175.5 ms\n",
- "t = 176.0 ms\n",
- "t = 176.5 ms\n",
- "t = 177.0 ms\n",
- "t = 177.5 ms\n",
- "t = 178.0 ms\n",
- "t = 178.5 ms\n",
- "t = 179.0 ms\n",
- "t = 179.5 ms\n",
- "t = 180.0 ms\n",
- "t = 180.5 ms\n",
- "t = 181.0 ms\n",
- "t = 181.5 ms\n",
- "t = 182.0 ms\n",
- "t = 182.5 ms\n",
- "t = 183.0 ms\n",
- "t = 183.5 ms\n",
- "t = 184.0 ms\n",
- "t = 184.5 ms\n",
- "t = 185.0 ms\n",
- "t = 185.5 ms\n",
- "t = 186.0 ms\n",
- "t = 186.5 ms\n",
- "t = 187.0 ms\n",
- "t = 187.5 ms\n",
- "t = 188.0 ms\n",
- "t = 188.5 ms\n",
- "t = 189.0 ms\n",
- "t = 189.5 ms\n",
- "t = 190.0 ms\n",
- "t = 190.5 ms\n",
- "t = 191.0 ms\n",
- "t = 191.5 ms\n",
- "t = 192.0 ms\n",
- "t = 192.5 ms\n",
- "t = 193.0 ms\n",
- "t = 193.5 ms\n",
- "t = 194.0 ms\n",
- "t = 194.5 ms\n",
- "t = 195.0 ms\n",
- "t = 195.5 ms\n",
- "t = 196.0 ms\n",
- "t = 196.5 ms\n",
- "t = 197.0 ms\n",
- "t = 197.5 ms\n",
- "t = 198.0 ms\n",
- "t = 198.5 ms\n",
- "t = 199.0 ms\n",
- "t = 199.5 ms\n",
- "t = 200.0 ms\n",
- "t = 200.5 ms\n",
- "t = 201.0 ms\n",
- "t = 201.5 ms\n",
- "t = 202.0 ms\n",
- "t = 202.5 ms\n",
- "t = 203.0 ms\n",
- "t = 203.5 ms\n",
- "t = 204.0 ms\n",
- "t = 204.5 ms\n",
- "t = 205.0 ms\n",
- "t = 205.5 ms\n",
- "t = 206.0 ms\n",
- "t = 206.5 ms\n",
- "t = 207.0 ms\n",
- "t = 207.5 ms\n",
- "t = 208.0 ms\n",
- "t = 208.5 ms\n",
- "t = 209.0 ms\n",
- "t = 209.5 ms\n",
- "t = 210.0 ms\n",
- "t = 210.5 ms\n",
- "t = 211.0 ms\n",
- "t = 211.5 ms\n",
- "t = 212.0 ms\n",
- "t = 212.5 ms\n",
- "t = 213.0 ms\n",
- "t = 213.5 ms\n",
- "t = 214.0 ms\n",
- "t = 214.5 ms\n",
- "t = 215.0 ms\n",
- "t = 215.5 ms\n",
- "t = 216.0 ms\n",
- "t = 216.5 ms\n",
- "t = 217.0 ms\n",
- "t = 217.5 ms\n",
- "t = 218.0 ms\n",
- "t = 218.5 ms\n",
- "t = 219.0 ms\n",
- "t = 219.5 ms\n",
- "t = 220.0 ms\n",
- "t = 220.5 ms\n",
- "t = 221.0 ms\n",
- "t = 221.5 ms\n",
- "t = 222.0 ms\n",
- "t = 222.5 ms\n",
- "t = 223.0 ms\n",
- "t = 223.5 ms\n",
- "t = 224.0 ms\n",
- "t = 224.5 ms\n",
- "t = 225.0 ms\n",
- "t = 225.5 ms\n",
- "t = 226.0 ms\n",
- "t = 226.5 ms\n",
- "t = 227.0 ms\n",
- "t = 227.5 ms\n",
- "t = 228.0 ms\n",
- "t = 228.5 ms\n",
- "t = 229.0 ms\n",
- "t = 229.5 ms\n",
- "t = 230.0 ms\n",
- "t = 230.5 ms\n",
- "t = 231.0 ms\n",
- "t = 231.5 ms\n",
- "t = 232.0 ms\n",
- "t = 232.5 ms\n",
- "t = 233.0 ms\n",
- "t = 233.5 ms\n",
- "t = 234.0 ms\n",
- "t = 234.5 ms\n",
- "t = 235.0 ms\n",
- "t = 235.5 ms\n",
- "t = 236.0 ms\n",
- "t = 236.5 ms\n",
- "t = 237.0 ms\n",
- "t = 237.5 ms\n",
- "t = 238.0 ms\n",
- "t = 238.5 ms\n",
- "t = 239.0 ms\n",
- "t = 239.5 ms\n",
- "t = 240.0 ms\n",
- "t = 240.5 ms\n",
- "t = 241.0 ms\n",
- "t = 241.5 ms\n",
- "t = 242.0 ms\n",
- "t = 242.5 ms\n",
- "t = 243.0 ms\n",
- "t = 243.5 ms\n",
- "t = 244.0 ms\n",
- "t = 244.5 ms\n",
- "t = 245.0 ms\n",
- "t = 245.5 ms\n",
- "t = 246.0 ms\n",
- "t = 246.5 ms\n",
- "t = 247.0 ms\n",
- "t = 247.5 ms\n",
- "t = 248.0 ms\n",
- "t = 248.5 ms\n",
- "t = 249.0 ms\n",
- "t = 249.5 ms\n",
- "t = 250.0 ms\n",
- "t = 250.5 ms\n",
- "t = 251.0 ms\n",
- "t = 251.5 ms\n",
- "t = 252.0 ms\n",
- "t = 252.5 ms\n",
- "t = 253.0 ms\n",
- "t = 253.5 ms\n",
- "t = 254.0 ms\n",
- "t = 254.5 ms\n",
- "t = 255.0 ms\n",
- "t = 255.5 ms\n",
- "t = 256.0 ms\n",
- "t = 256.5 ms\n",
- "t = 257.0 ms\n",
- "t = 257.5 ms\n",
- "t = 258.0 ms\n",
- "t = 258.5 ms\n",
- "t = 259.0 ms\n",
- "t = 259.5 ms\n",
- "t = 260.0 ms\n",
- "t = 260.5 ms\n",
- "t = 261.0 ms\n",
- "t = 261.5 ms\n",
- "t = 262.0 ms\n",
- "t = 262.5 ms\n",
- "t = 263.0 ms\n",
- "t = 263.5 ms\n",
- "t = 264.0 ms\n",
- "t = 264.5 ms\n",
- "t = 265.0 ms\n",
- "t = 265.5 ms\n",
- "t = 266.0 ms\n",
- "t = 266.5 ms\n",
- "t = 267.0 ms\n",
- "t = 267.5 ms\n",
- "t = 268.0 ms\n",
- "t = 268.5 ms\n",
- "t = 269.0 ms\n",
- "t = 269.5 ms\n",
- "t = 270.0 ms\n",
- "t = 270.5 ms\n",
- "t = 271.0 ms\n",
- "t = 271.5 ms\n",
- "t = 272.0 ms\n",
- "t = 272.5 ms\n",
- "t = 273.0 ms\n",
- "t = 273.5 ms\n",
- "t = 274.0 ms\n",
- "t = 274.5 ms\n",
- "t = 275.0 ms\n",
- "t = 275.5 ms\n",
- "t = 276.0 ms\n",
- "t = 276.5 ms\n",
- "t = 277.0 ms\n",
- "t = 277.5 ms\n",
- "t = 278.0 ms\n",
- "t = 278.5 ms\n",
- "t = 279.0 ms\n",
- "t = 279.5 ms\n",
- "t = 280.0 ms\n",
- "t = 280.5 ms\n",
- "t = 281.0 ms\n",
- "t = 281.5 ms\n",
- "t = 282.0 ms\n",
- "t = 282.5 ms\n",
- "t = 283.0 ms\n",
- "t = 283.5 ms\n",
- "t = 284.0 ms\n",
- "t = 284.5 ms\n",
- "t = 285.0 ms\n",
- "t = 285.5 ms\n",
- "t = 286.0 ms\n",
- "t = 286.5 ms\n",
- "t = 287.0 ms\n",
- "t = 287.5 ms\n",
- "t = 288.0 ms\n",
- "t = 288.5 ms\n",
- "t = 289.0 ms\n",
- "t = 289.5 ms\n",
- "t = 290.0 ms\n",
- "t = 290.5 ms\n",
- "t = 291.0 ms\n",
- "t = 291.5 ms\n",
- "t = 292.0 ms\n",
- "t = 292.5 ms\n",
- "t = 293.0 ms\n",
- "t = 293.5 ms\n",
- "t = 294.0 ms\n",
- "t = 294.5 ms\n",
- "t = 295.0 ms\n",
- "t = 295.5 ms\n",
- "t = 296.0 ms\n",
- "t = 296.5 ms\n",
- "t = 297.0 ms\n",
- "t = 297.5 ms\n",
- "t = 298.0 ms\n",
- "t = 298.5 ms\n",
- "t = 299.0 ms\n",
- "t = 299.5 ms\n",
- "t = 300.0 ms\n",
- "t = 300.5 ms\n",
- "t = 301.0 ms\n",
- "t = 301.5 ms\n",
- "t = 302.0 ms\n",
- "t = 302.5 ms\n",
- "t = 303.0 ms\n",
- "t = 303.5 ms\n",
- "t = 304.0 ms\n",
- "t = 304.5 ms\n",
- "t = 305.0 ms\n",
- "t = 305.5 ms\n",
- "t = 306.0 ms\n",
- "t = 306.5 ms\n",
- "t = 307.0 ms\n",
- "t = 307.5 ms\n",
- "t = 308.0 ms\n",
- "t = 308.5 ms\n",
- "t = 309.0 ms\n",
- "t = 309.5 ms\n",
- "t = 310.0 ms\n",
- "t = 310.5 ms\n",
- "t = 311.0 ms\n",
- "t = 311.5 ms\n",
- "t = 312.0 ms\n",
- "t = 312.5 ms\n",
- "t = 313.0 ms\n",
- "t = 313.5 ms\n",
- "t = 314.0 ms\n",
- "t = 314.5 ms\n",
- "t = 315.0 ms\n",
- "t = 315.5 ms\n",
- "t = 316.0 ms\n",
- "t = 316.5 ms\n",
- "t = 317.0 ms\n",
- "t = 317.5 ms\n",
- "t = 318.0 ms\n",
- "t = 318.5 ms\n",
- "t = 319.0 ms\n",
- "t = 319.5 ms\n",
- "t = 320.0 ms\n",
- "t = 320.5 ms\n",
- "t = 321.0 ms\n",
- "t = 321.5 ms\n",
- "t = 322.0 ms\n",
- "t = 322.5 ms\n",
- "t = 323.0 ms\n",
- "t = 323.5 ms\n",
- "t = 324.0 ms\n",
- "t = 324.5 ms\n",
- "t = 325.0 ms\n",
- "t = 325.5 ms\n",
- "t = 326.0 ms\n",
- "t = 326.5 ms\n",
- "t = 327.0 ms\n",
- "t = 327.5 ms\n",
- "t = 328.0 ms\n",
- "t = 328.5 ms\n",
- "t = 329.0 ms\n",
- "t = 329.5 ms\n",
- "t = 330.0 ms\n",
- "t = 330.5 ms\n",
- "t = 331.0 ms\n",
- "t = 331.5 ms\n",
- "t = 332.0 ms\n",
- "t = 332.5 ms\n",
- "t = 333.0 ms\n",
- "t = 333.5 ms\n",
- "t = 334.0 ms\n",
- "t = 334.5 ms\n",
- "t = 335.0 ms\n",
- "t = 335.5 ms\n",
- "t = 336.0 ms\n",
- "t = 336.5 ms\n",
- "t = 337.0 ms\n",
- "t = 337.5 ms\n",
- "t = 338.0 ms\n",
- "t = 338.5 ms\n",
- "t = 339.0 ms\n",
- "t = 339.5 ms\n",
- "t = 340.0 ms\n",
- "t = 340.5 ms\n",
- "t = 341.0 ms\n",
- "t = 341.5 ms\n",
- "t = 342.0 ms\n",
- "t = 342.5 ms\n",
- "t = 343.0 ms\n",
- "t = 343.5 ms\n",
- "t = 344.0 ms\n",
- "t = 344.5 ms\n",
- "t = 345.0 ms\n",
- "t = 345.5 ms\n",
- "t = 346.0 ms\n",
- "t = 346.5 ms\n",
- "t = 347.0 ms\n",
- "t = 347.5 ms\n",
- "t = 348.0 ms\n",
- "t = 348.5 ms\n",
- "t = 349.0 ms\n",
- "t = 349.5 ms\n",
- "t = 350.0 ms\n",
- "t = 350.5 ms\n",
- "t = 351.0 ms\n",
- "t = 351.5 ms\n",
- "t = 352.0 ms\n",
- "t = 352.5 ms\n",
- "t = 353.0 ms\n",
- "t = 353.5 ms\n",
- "t = 354.0 ms\n",
- "t = 354.5 ms\n",
- "t = 355.0 ms\n",
- "t = 355.5 ms\n",
- "t = 356.0 ms\n",
- "t = 356.5 ms\n",
- "t = 357.0 ms\n",
- "t = 357.5 ms\n",
- "t = 358.0 ms\n",
- "t = 358.5 ms\n",
- "t = 359.0 ms\n",
- "t = 359.5 ms\n",
- "t = 360.0 ms\n",
- "t = 360.5 ms\n",
- "t = 361.0 ms\n",
- "t = 361.5 ms\n",
- "t = 362.0 ms\n",
- "t = 362.5 ms\n",
- "t = 363.0 ms\n",
- "t = 363.5 ms\n",
- "t = 364.0 ms\n",
- "t = 364.5 ms\n",
- "t = 365.0 ms\n",
- "t = 365.5 ms\n",
- "t = 366.0 ms\n",
- "t = 366.5 ms\n",
- "t = 367.0 ms\n",
- "t = 367.5 ms\n",
- "t = 368.0 ms\n",
- "t = 368.5 ms\n",
- "t = 369.0 ms\n",
- "t = 369.5 ms\n",
- "t = 370.0 ms\n",
- "t = 370.5 ms\n",
- "t = 371.0 ms\n",
- "t = 371.5 ms\n",
- "t = 372.0 ms\n",
- "t = 372.5 ms\n",
- "t = 373.0 ms\n",
- "t = 373.5 ms\n",
- "t = 374.0 ms\n",
- "t = 374.5 ms\n",
- "t = 375.0 ms\n",
- "t = 375.5 ms\n",
- "t = 376.0 ms\n",
- "t = 376.5 ms\n",
- "t = 377.0 ms\n",
- "t = 377.5 ms\n",
- "t = 378.0 ms\n",
- "t = 378.5 ms\n",
- "t = 379.0 ms\n",
- "t = 379.5 ms\n",
- "t = 380.0 ms\n",
- "t = 380.5 ms\n",
- "t = 381.0 ms\n",
- "t = 381.5 ms\n",
- "t = 382.0 ms\n",
- "t = 382.5 ms\n",
- "t = 383.0 ms\n",
- "t = 383.5 ms\n",
- "t = 384.0 ms\n",
- "t = 384.5 ms\n",
- "t = 385.0 ms\n",
- "t = 385.5 ms\n",
- "t = 386.0 ms\n",
- "t = 386.5 ms\n",
- "t = 387.0 ms\n",
- "t = 387.5 ms\n",
- "t = 388.0 ms\n",
- "t = 388.5 ms\n",
- "t = 389.0 ms\n",
- "t = 389.5 ms\n",
- "t = 390.0 ms\n",
- "t = 390.5 ms\n",
- "t = 391.0 ms\n",
- "t = 391.5 ms\n",
- "t = 392.0 ms\n",
- "t = 392.5 ms\n",
- "t = 393.0 ms\n",
- "t = 393.5 ms\n",
- "t = 394.0 ms\n",
- "t = 394.5 ms\n",
- "t = 395.0 ms\n",
- "t = 395.5 ms\n",
- "t = 396.0 ms\n",
- "t = 396.5 ms\n",
- "t = 397.0 ms\n",
- "t = 397.5 ms\n",
- "t = 398.0 ms\n",
- "t = 398.5 ms\n",
- "t = 399.0 ms\n",
- "t = 399.5 ms\n",
- "t = 400.0 ms\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "Actual pre spike times: [ 2. 3. 4. 5. 6. 8. 10. 13. 18. 22. 24. 28. 29. 31.\n",
- " 32. 34. 36. 37. 38. 39. 40. 42. 45. 47. 50. 52. 54. 56.\n",
- " 57. 58. 59. 60. 61. 62. 65. 66. 68. 71. 74. 76. 78. 81.\n",
- " 82. 83. 84. 87. 92. 94. 95. 96. 97. 99. 100. 101. 102. 105.\n",
- " 106. 109. 110. 111. 112. 114. 116. 119. 120. 122. 125. 127. 128. 129.\n",
- " 132. 133. 135. 136. 140. 144. 145. 147. 148. 149. 150. 152. 153. 154.\n",
- " 158. 159. 160. 161. 163. 164. 167. 168. 169. 170. 171. 174. 176. 177.\n",
- " 180. 181. 182. 183. 186. 189. 190. 194. 195. 199. 201. 202. 204. 207.\n",
- " 208. 209. 210. 211. 212. 214. 215. 217. 219. 222. 226. 233. 234. 235.\n",
- " 239. 241. 243. 244. 248. 249. 250. 251. 254. 255. 257. 258. 259. 263.\n",
- " 264. 266. 269. 271. 274. 276. 278. 279. 281. 283. 284. 285. 288. 293.\n",
- " 294. 300. 301. 302. 304. 305. 309. 311. 312. 314. 318. 323. 324. 329.\n",
- " 330. 336. 338. 339. 340. 342. 344. 346. 350. 357. 360. 371. 372. 373.\n",
- " 376. 378. 379. 382. 383. 385. 390. 392. 397. 399. 400.]\n",
- "Actual post spike times: [ 6. 9. 11.5 14. 16.5 19.5 22. 25.5 28.5 31.5 34.5 37.5\n",
- " 40.5 43. 46. 48.5 51.5 54. 56.5 59. 62. 65.5 70. 73.\n",
- " 76. 78.5 81.5 84.5 87.5 90.5 93.5 96.5 99. 102. 104.5 107.\n",
- " 109.5 112.5 115.5 118.5 121.5 124.5 127.5 130.5 133.5 137. 141. 143.5\n",
- " 146.5 149. 152. 154.5 157.5 160.5 163.5 166.5 169.5 172.5 175.5 179.5\n",
- " 183.5 186.5 189. 192. 194.5 197.5 200.5 203. 205.5 209.5 212.5 215.5\n",
- " 218. 220.5 224.5 227.5 230.5 233. 236. 239. 241.5 244. 246.5 249.\n",
- " 251.5 254. 256.5 259. 261.5 265.5 268.5 271.5 274. 276.5 279.5 282.\n",
- " 285. 288. 290.5 293. 296.5 299.5 302. 305.5 309.5 313.5 316.5 320.5\n",
- " 323.5 326. 328.5 331.5 334.5 337.5 340.5 344.5 347. 350. 353.5 356.5\n",
- " 359.5 362.5 365.5 368.5 371.5 382.5 385.5 388.5 392. 395. 397.5 400.5]\n"
- ]
- },
- {
- "data": {
- "image/png": "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FytXroSXl1ezfZ1pF1q9HS+S2Y4cOSICEFNTUw3b6urqxH79+omjR492YMm6h71794oAxE8//bTN41JSUkSlUilWVFQYtr3zzjsiAPG7776zdTGdVn19vZifny+KoigeO3ZMBCBu2LCh2XEPP/yw6OHhIV6+fNmwbdeuXSIA8e233zZsy83NFd3c3MTFixcbtmm1WnHs2LFir169RLVabbsX4yQ6Wufz588Xvby82n081nn7fvrpJ1GlUplsy8jIEOVyuThnzhzDNl7n1tPROud1bltqtVocNmyYOGDAAMM2Xue21VKd8zq3jbvuukucMGGCmJycLMbGxprs62i70BbteA4FtMDWrVshlUpNvpVQKBS4//77cejQIVy5csWBpeteqqqqoFarm22vrKzErl27MHfuXPj6+hq2z5s3D97e3tiyZYs9i+lU5HI5QkND2z3us88+w29/+1tERkYatk2aNAkxMTEm9fvll1+isbERixYtMmwTBAEPP/wwcnNzcejQIeu+ACfU0TrX02g0qKysbHU/67x9SUlJJt/CA0D//v0RGxuLc+fOGbbxOreejta5Hq9z25BKpYiIiEB5eblhG69z22qpzvV4nVvPDz/8gK1bt+L1119vtq8z7UJbtOMZWFngxIkTiImJMXnjACAhIQGAriuSLHfffffB19cXCoUC48ePx/Hjxw37Tp06BbVajZtuusnkHHd3dwwfPhwnTpywd3G7lby8PBQWFjarX0B3nRvX74kTJ+Dl5YVBgwY1O06/nzqutrYWvr6+8PPzQ0BAABYvXtxsfDjr3DyiKOLatWsICgoCwOvcHm6scz1e59ZVU1OD4uJiXLhwAWvWrMH27dsxceJEALzObaWtOtfjdW49Go0Gjz76KP70pz9hyJAhzfZ3pl1oi3Y851hZID8/H0qlstl2/barV6/au0jdiru7O+68805MnToVQUFBOHv2LFatWoWxY8fi4MGDGDFiBPLz8wGg1ffhwIED9i52t9Je/ZaWlkKlUkEulyM/Px89e/aEIAjNjgP4eegMpVKJZcuWYeTIkdBqtdixYwfWrVuHX3/9Ffv27YNMpvvTzTo3z4cffoi8vDy88MILAHid28ONdQ7wOreFv/71r3j77bcBABKJBL///e+xdu1aALzObaWtOgd4nVvbv//9b1y+fBm7d+9ucX9n2oW2aMczsLJAXV0d5HJ5s+0KhcKwn8yXlJSEpKQkw+/Tp0/HzJkzMXToUDz11FPYsWOHoY5bex/4HlimvfrVHyOXy/l5sKKXXnrJ5Pe7774bMTExeOaZZ7B161bDJGbWeeelp6dj8eLFGD16NObPnw+A17mttVTnAK9zW1i6dClmzpyJq1evYsuWLdBoNGhoaADA69xW2qpzgNe5NZWUlOC5557D3//+dwQHB7d4TGfahbaocw4FtICHhwdUKlWz7fX19Yb9ZF3R0dG44447sHfvXmg0GkMdt/Y+8D2wTHv1a3wMPw+29dhjj0EikZh8S8c675yCggLcfvvt8PPzM4ytB3id21Jrdd4aXueWGThwICZNmoR58+bh66+/RnV1NaZNmwZRFHmd20hbdd4aXufmefbZZxEQEIBHH3201WM60y60RZ0zsLKAUqk0dDka028LCwuzd5FcQkREBBoaGlBTU2Porm3tfeB7YJn26jcgIMDwbY9SqURBQUGzfyb8PFiHh4cHAgMDUVpaatjGOu+4iooKpKSkoLy8HDt27DCpG17nttFWnbeG17l1zZw5E8eOHUNGRgavczsxrvPW8DrvvMzMTKxfvx5LlizB1atXkZ2djezsbNTX16OxsRHZ2dkoLS3tVLvQFu14BlYWGD58ODIyMppleTly5IhhP1nfxYsXoVAo4O3tjbi4OMhkMpOEFgDQ0NCAtLQ0vgcWCg8PR3BwcLP6BYCjR4+a1O/w4cNRW1vbLOsXPw/WUVVVheLiYpPhD6zzjqmvr8e0adOQkZGBr7/+GoMHDzbZz+vc+tqr89bwOrcu/VCmiooKXud2YlznreF13nl5eXnQarVYsmQJ+vTpY7gdOXIEGRkZ6NOnD1544YVOtQtt0o43K0k7iaIoiocPH26W/76+vl6Mjo4WExMTHViy7qGwsLDZtrS0NNHNzU2cPn26YduUKVNEpVIpVlZWGra9++67IgBx+/btdimrs2trTaWHHnpI9PDwEHNycgzbdu/eLQIQ33rrLcO2K1eutLoGR3h4ONfguEFrdV5XV2dyLes98cQTIgDx888/N2xjnbdPrVaL06dPF2UymfjNN9+0ehyvc+vpSJ3zOreua9euNdvW0NAgjhw5UvTw8BCrqqpEUeR1bk0dqXNe59ZTVFQkfvHFF81usbGxYmRkpPjFF1+IJ0+eFEWx4+1CW7TjmbzCAomJiZg1axaeeuopFBYWIjo6Gps2bUJ2djbee+89RxfP6d11113w8PBAUlISQkJCcPbsWaxfvx6enp54+eWXDce9+OKLSEpKQnJyMhYuXIjc3FysXr0at912G6ZMmeLAV9D1rV27FuXl5YbMN1999RVyc3MBAI8++ij8/Pzw9NNP49NPP8X48ePx5z//GdXV1UhNTcWQIUNw3333GR6rV69eWLp0KVJTU9HY2Ij4+Hhs27YNBw4cwIcfftju3ApX0V6dl5WVYcSIEbjnnnswcOBAAMB3332Hb7/9FlOmTMEdd9xheCzWefv++te/4n//+x+mTZuG0tJSfPDBByb7586dCwC8zq2oI3VeUFDA69yKHnzwQVRWVmLcuHEIDw9HQUEBPvzwQ6Snp2P16tXw9vYGwOvcmjpS59nZ2bzOrSQoKAgzZsxotl2/lpXxvo62C23SjjczcKQmdXV14uOPPy6GhoaKcrlcjI+PF3fs2OHoYnULb7zxhpiQkCAGBASIMplMVCqV4ty5c8XMzMxmxx44cEBMSkoSFQqFGBwcLC5evLjFb4nIVFRUlAigxdulS5cMx50+fVq87bbbRE9PT9Hf31+cM2eOWFBQ0OzxNBqNuHLlSjEqKkp0d3cXY2NjxQ8++MCOr6jra6/Oy8rKxLlz54rR0dGip6enKJfLxdjYWHHlypViQ0NDs8djnbctOTm51fq+8V8gr3Pr6Eid8zq3ro8//licNGmS2LNnT1Emk4k9evQQJ02aJH755ZfNjuV1bh0dqXNe57aXnJwsxsbGNtve0Xahtdvxgii2kbaEiIiIiIiI2sXkFURERERERBZiYEVERERERGQhBlZEREREREQWYmBFRERERERkIQZWREREREREFmJgRUREREREZCEGVkRERERERBZiYEVERERERGQhBlZEREREREQWYmBFRERERERkIQZWREREREREFmJgRUREREREZCEGVkRERERERBZiYEVERERERGSh/wcyB4GiyaY9wgAAAABJRU5ErkJggg==\n",
- "text/plain": [
- "