(pd_nestml) wdg562@SUN1027631 NESTML_components % python3 create_gap_dopamod_synapse.py -- N E S T -- Copyright (C) 2004 The NEST Initiative Version: 3.8.0 Built: Aug 27 2024 04:38:39 This program is provided AS IS and comes with NO WARRANTY. See the file LICENSE for details. Problems or suggestions? Visit https://www.nest-simulator.org Type 'nest.help()' to find out more about NEST. WARNING:root:PyGSL is not available. The stiffness test will be skipped. WARNING:root:Error when importing: No module named 'pygsl' [1,GLOBAL, INFO]: List of files that will be processed: [2,GLOBAL, INFO]: /opt/miniconda3/envs/pd_nestml/models/neurons/aeif_cond_alpha.nestml [3,GLOBAL, INFO]: /opt/miniconda3/envs/pd_nestml/models/synapses/dopamine_synapse_NEW.nestml [4,GLOBAL, INFO]: Target platform code will be generated in directory: '/opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new' -- N E S T -- Copyright (C) 2004 The NEST Initiative Version: 3.8.0 Built: Aug 27 2024 04:38:39 This program is provided AS IS and comes with NO WARRANTY. See the file LICENSE for details. Problems or suggestions? Visit https://www.nest-simulator.org Type 'nest.help()' to find out more about NEST. [5,GLOBAL, INFO]: The NEST Simulator version was automatically detected as: v3.4 [6,GLOBAL, INFO]: Given template root path is not an absolute path. Creating the absolute path with default templates directory '/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/codegeneration/resources_nest/point_neuron' [7,GLOBAL, INFO]: Given template root path is not an absolute path. Creating the absolute path with default templates directory '/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/codegeneration/resources_nest/point_neuron' [8,GLOBAL, INFO]: Given template root path is not an absolute path. Creating the absolute path with default templates directory '/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/codegeneration/resources_nest/point_neuron' [9,GLOBAL, INFO]: The NEST Simulator installation path was automatically detected as: /opt/miniconda3/envs/pd_nestml [10,GLOBAL, INFO]: Start processing '/opt/miniconda3/envs/pd_nestml/models/neurons/aeif_cond_alpha.nestml'! [11,aeif_cond_alpha_nestml, DEBUG, [42:0;116:0]]: Start building symbol table! [12,aeif_cond_alpha_nestml, WARNING, [72:8;72:17]]: Variable 'a' has the same name as a physical unit! [13,aeif_cond_alpha_nestml, INFO, [60:16;60:39]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [14,aeif_cond_alpha_nestml, INFO, [60:16;60:43]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [15,aeif_cond_alpha_nestml, INFO, [60:16;60:53]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [16,aeif_cond_alpha_nestml, INFO, [60:16;60:65]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [17,aeif_cond_alpha_nestml, INFO, [60:16;60:77]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [18,aeif_cond_alpha_nestml, INFO, [60:16;60:81]]: Implicit magnitude conversion from mV nS to pA buffer with factor 1.0 [19,aeif_cond_alpha_nestml, INFO, [61:14;61:34]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [20,aeif_cond_alpha_nestml, INFO, [56:28;56:55]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [21,aeif_cond_alpha_nestml, INFO, [57:30;57:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [22,aeif_cond_alpha_nestml, INFO, [58:30;58:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [23,GLOBAL, INFO]: Start processing '/opt/miniconda3/envs/pd_nestml/models/synapses/dopamine_synapse_NEW.nestml'! [24,dopamine_synapse_nestml, DEBUG, [19:0;56:0]]: Start building symbol table! [25,dopamine_synapse_nestml, WARNING, [29:8;29:28]]: Variable 'd' has the same name as a physical unit! [26,dopamine_synapse_nestml, INFO, [28:27;28:27]]: Implicit casting from (compatible) type 'integer' to 'real'. [27,dopamine_synapse_nestml, INFO, [31:24;31:24]]: Implicit casting from (compatible) type 'integer' to 'real'. [28,dopamine_synapse_nestml, INFO, [46:21;46:29]]: Implicit casting from (compatible) type '1 / ms' to 'real'. [29,aeif_cond_alpha_nestml, DEBUG, [42:0;116:0]]: Start building symbol table! [30,aeif_cond_alpha_nestml, WARNING, [72:8;72:17]]: Variable 'a' has the same name as a physical unit! [31,aeif_cond_alpha_nestml, INFO, [56:28;56:55]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [32,aeif_cond_alpha_nestml, INFO, [57:30;57:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [33,aeif_cond_alpha_nestml, INFO, [58:30;58:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [34,dopamine_synapse_nestml, DEBUG, [19:0;56:0]]: Start building symbol table! [35,dopamine_synapse_nestml, WARNING, [29:8;29:28]]: Variable 'd' has the same name as a physical unit! [36,dopamine_synapse_nestml, INFO, [28:27;28:27]]: Implicit casting from (compatible) type 'integer' to 'real'. [37,dopamine_synapse_nestml, INFO, [31:24;31:24]]: Implicit casting from (compatible) type 'integer' to 'real'. [38,dopamine_synapse_nestml, INFO, [46:21;46:29]]: Implicit casting from (compatible) type '1 / ms' to 'real'. [39,aeif_cond_alpha_nestml, DEBUG, [42:0;116:0]]: Start building symbol table! [40,aeif_cond_alpha_nestml, WARNING, [72:8;72:17]]: Variable 'a' has the same name as a physical unit! [41,aeif_cond_alpha_nestml, INFO, [60:16;60:39]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [42,aeif_cond_alpha_nestml, INFO, [60:16;60:43]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [43,aeif_cond_alpha_nestml, INFO, [60:16;60:53]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [44,aeif_cond_alpha_nestml, INFO, [60:16;60:65]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [45,aeif_cond_alpha_nestml, INFO, [60:16;60:77]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [46,aeif_cond_alpha_nestml, INFO, [60:16;60:81]]: Implicit magnitude conversion from mV nS to pA buffer with factor 1.0 [47,aeif_cond_alpha_nestml, INFO, [61:14;61:34]]: Implicit magnitude conversion from mV nS to pA with factor 1.0 [48,aeif_cond_alpha_nestml, INFO, [56:28;56:55]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [49,aeif_cond_alpha_nestml, INFO, [57:30;57:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [50,aeif_cond_alpha_nestml, INFO, [58:30;58:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [51,dopamine_synapse_nestml, DEBUG, [19:0;56:0]]: Start building symbol table! [52,dopamine_synapse_nestml, WARNING, [29:8;29:28]]: Variable 'd' has the same name as a physical unit! [53,dopamine_synapse_nestml, INFO, [28:27;28:27]]: Implicit casting from (compatible) type 'integer' to 'real'. [54,dopamine_synapse_nestml, INFO, [31:24;31:24]]: Implicit casting from (compatible) type 'integer' to 'real'. [55,dopamine_synapse_nestml, INFO, [46:21;46:29]]: Implicit casting from (compatible) type '1 / ms' to 'real'. [56,GLOBAL, INFO]: State variables that will be moved from synapse to neuron: [] [57,GLOBAL, INFO]: Parameters that will be copied from synapse to neuron: [] [58,GLOBAL, INFO]: In synapse: replacing ``continuous`` type input ports that are connected to postsynaptic neuron with suffixed external variable references [59,GLOBAL, INFO]: Copying parameters from synapse to neuron... [60,GLOBAL, INFO]: Adding suffix to variables in spike updates [61,GLOBAL, INFO]: In synapse: replacing variables with suffixed external variable references [62,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, DEBUG, [42:0;116:0]]: Start building symbol table! [63,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, WARNING, [72:8;72:17]]: Variable 'a' has the same name as a physical unit! [64,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [56:28;56:55]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [65,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [57:30;57:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [66,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [58:30;58:83]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [67,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, DEBUG, [19:0;56:0]]: Start building symbol table! [68,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, WARNING, [29:8;29:28]]: Variable 'd' has the same name as a physical unit! [69,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [28:27;28:27]]: Implicit casting from (compatible) type 'integer' to 'real'. [70,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [31:24;31:24]]: Implicit casting from (compatible) type 'integer' to 'real'. [71,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [46:21;46:29]]: Implicit casting from (compatible) type '1 / ms' to 'real'. [72,GLOBAL, INFO]: Successfully constructed neuron-synapse pair aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, dopamine_synapse_nestml__with_aeif_cond_alpha_nestml [73,GLOBAL, INFO]: Analysing/transforming neuron 'aeif_cond_alpha_nestml' [74,aeif_cond_alpha_nestml, INFO, [42:0;116:0]]: Starts processing of the model 'aeif_cond_alpha_nestml' INFO:root:Analysing input: INFO:root:{ "dynamics": [ { "expression": "V_m' = ((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m", "initial_values": { "V_m": "E_L" } }, { "expression": "w' = (a * ((min(V_m, V_peak)) - E_L) - w) / tau_w", "initial_values": { "w": "0" } }, { "expression": "g_exc__X__exc_spikes = (e / tau_syn_exc) * t * exp(-t / tau_syn_exc)", "initial_values": {} }, { "expression": "g_inh__X__inh_spikes = (e / tau_syn_inh) * t * exp(-t / tau_syn_inh)", "initial_values": {} } ], "options": { "output_timestep_symbol": "__h" }, "parameters": { "C_m": "281.0", "Delta_T": "2.0", "E_L": "(-70.6)", "E_exc": "0", "E_inh": "(-85.0)", "I_e": "0", "V_peak": "0", "V_reset": "(-60.0)", "V_th": "(-50.4)", "a": "4", "b": "80.5", "g_L": "30.0", "t_ref": "0.0", "tau_syn_exc": "0.2", "tau_syn_inh": "2.0", "tau_w": "144.0" } } INFO:root:Processing global options... INFO:root:Processing input shapes... INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m]) DEBUG:root: linear factors: Matrix([[0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [w]) DEBUG:root: linear factors: Matrix([[-1/tau_w]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh INFO:root:All known variables: [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes', g_inh__X__inh_spikes, g_inh__X__inh_spikes'], all parameters used in ODEs: {tau_syn_inh, E_inh, tau_syn_exc, V_th, I_e, E_L, E_exc, I_stim, V_peak, a, tau_w, C_m, Delta_T, g_L} INFO:root:No numerical value specified for parameter "I_stim" INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, V_m]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_exc/C_m], [0], [1.0*E_inh/C_m], [0], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m + I_stim/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, V_m, w]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_exc/C_m], [0], [1.0*E_inh/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]]), A = Matrix([[0, -1/C_m, 1.0*E_exc/C_m, 0, 1.0*E_inh/C_m, 0], [0, -1/tau_w, 0, 0, 0, 0], [0, 0, 0, 1.00000000000000, 0, 0], [0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc, 0, 0], [0, 0, 0, 0, 0, 1.00000000000000], [0, 0, 0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w], [0], [0], [0], [0]]), c = Matrix([[Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w], [0], [0], [0], [0]]) INFO:root:Finding analytically solvable equations... INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_exc/C_m], [0], [1.0*E_inh/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Generating propagators for the following symbols: g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d DEBUG:root:Initializing system of shapes with x = Matrix([[g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]]), A = Matrix([[0, 1.00000000000000, 0, 0], [-1/tau_syn_exc**2, -2/tau_syn_exc, 0, 0], [0, 0, 0, 1.00000000000000], [0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh]]), b = Matrix([[0], [0], [0], [0]]), c = Matrix([[0], [0], [0], [0]]) DEBUG:root:System of equations: DEBUG:root:x = Matrix([[g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]]) DEBUG:root:A = Matrix([ [ 0, 1.0, 0, 0], [-1/tau_syn_exc**2, -2/tau_syn_exc, 0, 0], [ 0, 0, 0, 1.0], [ 0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh]]) DEBUG:root:b = Matrix([[0], [0], [0], [0]]) DEBUG:root:c = Matrix([[0], [0], [0], [0]]) INFO:root:update_expr[g_exc__X__exc_spikes] = __P__g_exc__X__exc_spikes__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d INFO:root:update_expr[g_exc__X__exc_spikes__d] = __P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d INFO:root:update_expr[g_inh__X__inh_spikes] = __P__g_inh__X__inh_spikes__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d INFO:root:update_expr[g_inh__X__inh_spikes__d] = __P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d INFO:root:Generating numerical solver for the following symbols: V_m, w DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w]]), A = Matrix([[0, -1/C_m], [0, -1/tau_w]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w]]), c = Matrix([[Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w]]) INFO:root:In ode-toolbox: returning outdict = INFO:root:[ { "initial_values": { "g_exc__X__exc_spikes": "0", "g_exc__X__exc_spikes__d": "e/tau_syn_exc", "g_inh__X__inh_spikes": "0", "g_inh__X__inh_spikes__d": "e/tau_syn_inh" }, "parameters": { "tau_syn_exc": "0.200000000000000", "tau_syn_inh": "2.00000000000000" }, "propagators": { "__P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes": "-1.0*__h*exp(-__h/tau_syn_exc)/tau_syn_exc**2", "__P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes__d": "1.0*(-__h + tau_syn_exc)*exp(-__h/tau_syn_exc)/tau_syn_exc", "__P__g_exc__X__exc_spikes__g_exc__X__exc_spikes": "1.0*(__h + tau_syn_exc)*exp(-__h/tau_syn_exc)/tau_syn_exc", "__P__g_exc__X__exc_spikes__g_exc__X__exc_spikes__d": "1.0*__h*exp(-__h/tau_syn_exc)", "__P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes": "-1.0*__h*exp(-__h/tau_syn_inh)/tau_syn_inh**2", "__P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes__d": "1.0*(-__h + tau_syn_inh)*exp(-__h/tau_syn_inh)/tau_syn_inh", "__P__g_inh__X__inh_spikes__g_inh__X__inh_spikes": "1.0*(__h + tau_syn_inh)*exp(-__h/tau_syn_inh)/tau_syn_inh", "__P__g_inh__X__inh_spikes__g_inh__X__inh_spikes__d": "1.0*__h*exp(-__h/tau_syn_inh)" }, "solver": "analytical", "state_variables": [ "g_exc__X__exc_spikes", "g_exc__X__exc_spikes__d", "g_inh__X__inh_spikes", "g_inh__X__inh_spikes__d" ], "update_expressions": { "g_exc__X__exc_spikes": "__P__g_exc__X__exc_spikes__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d", "g_exc__X__exc_spikes__d": "__P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d", "g_inh__X__inh_spikes": "__P__g_inh__X__inh_spikes__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d", "g_inh__X__inh_spikes__d": "__P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d" } }, { "initial_values": { "V_m": "E_L", "w": "0" }, "parameters": { "C_m": "281.000000000000", "Delta_T": "2.00000000000000", "E_L": "-70.6000000000000", "E_exc": "0", "E_inh": "-85.0000000000000", "I_e": "0", "V_peak": "0", "V_th": "-50.4000000000000", "a": "4.00000000000000", "g_L": "30.0000000000000", "tau_w": "144.000000000000" }, "solver": "numeric", "state_variables": [ "V_m", "w" ], "update_expressions": { "V_m": "Delta_T*g_L*exp((-V_th + min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m + (1.0*E_exc*g_exc__X__exc_spikes - g_L*min(V_m, V_peak) - 1.0*g_exc__X__exc_spikes*min(V_m, V_peak) - 1.0*g_inh__X__inh_spikes*min(V_m, V_peak) - w)/C_m", "w": "(-E_L*a + a*min(V_m, V_peak) - w)/tau_w" } } ] INFO:root:Analysing input: INFO:root:{ "dynamics": [ { "expression": "V_m' = ((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m", "initial_values": { "V_m": "E_L" } }, { "expression": "w' = (a * ((min(V_m, V_peak)) - E_L) - w) / tau_w", "initial_values": { "w": "0" } }, { "expression": "g_exc__X__exc_spikes = (e / tau_syn_exc) * t * exp(-t / tau_syn_exc)", "initial_values": {} }, { "expression": "g_inh__X__inh_spikes = (e / tau_syn_inh) * t * exp(-t / tau_syn_inh)", "initial_values": {} } ], "options": { "output_timestep_symbol": "__h" }, "parameters": { "C_m": "281.0", "Delta_T": "2.0", "E_L": "(-70.6)", "E_exc": "0", "E_inh": "(-85.0)", "I_e": "0", "V_peak": "0", "V_reset": "(-60.0)", "V_th": "(-50.4)", "a": "4", "b": "80.5", "g_L": "30.0", "t_ref": "0.0", "tau_syn_exc": "0.2", "tau_syn_inh": "2.0", "tau_w": "144.0" } } INFO:root:Processing global options... INFO:root:Processing input shapes... INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m]) DEBUG:root: linear factors: Matrix([[0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [w]) DEBUG:root: linear factors: Matrix([[-1/tau_w]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh INFO:root:All known variables: [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes', g_inh__X__inh_spikes, g_inh__X__inh_spikes'], all parameters used in ODEs: {tau_syn_inh, E_inh, tau_syn_exc, V_th, I_e, E_L, E_exc, I_stim, V_peak, a, tau_w, C_m, Delta_T, g_L} INFO:root:No numerical value specified for parameter "I_stim" INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, V_m]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_exc/C_m], [0], [1.0*E_inh/C_m], [0], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m + I_stim/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, V_m, w]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_exc/C_m], [0], [1.0*E_inh/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]]), A = Matrix([[0, -1/C_m, 1.0*E_exc/C_m, 0, 1.0*E_inh/C_m, 0], [0, -1/tau_w, 0, 0, 0, 0], [0, 0, 0, 1.00000000000000, 0, 0], [0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc, 0, 0], [0, 0, 0, 0, 0, 1.00000000000000], [0, 0, 0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w], [0], [0], [0], [0]]), c = Matrix([[Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w], [0], [0], [0], [0]]) INFO:root:Finding analytically solvable equations... INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_exc/C_m], [0], [1.0*E_inh/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols [V_m, w, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Generating numerical solver for the following symbols: g_exc__X__exc_spikes__d, V_m, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, w, g_exc__X__exc_spikes DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d]]), A = Matrix([[0, -1/C_m, 1.0*E_exc/C_m, 0, 1.0*E_inh/C_m, 0], [0, -1/tau_w, 0, 0, 0, 0], [0, 0, 0, 1.00000000000000, 0, 0], [0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc, 0, 0], [0, 0, 0, 0, 0, 1.00000000000000], [0, 0, 0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w], [0], [0], [0], [0]]), c = Matrix([[Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w], [0], [0], [0], [0]]) INFO:root:In ode-toolbox: returning outdict = INFO:root:[ { "initial_values": { "V_m": "E_L", "g_exc__X__exc_spikes": "0", "g_exc__X__exc_spikes__d": "e/tau_syn_exc", "g_inh__X__inh_spikes": "0", "g_inh__X__inh_spikes__d": "e/tau_syn_inh", "w": "0" }, "parameters": { "C_m": "281.000000000000", "Delta_T": "2.00000000000000", "E_L": "-70.6000000000000", "E_exc": "0", "E_inh": "-85.0000000000000", "I_e": "0", "V_peak": "0", "V_th": "-50.4000000000000", "a": "4.00000000000000", "g_L": "30.0000000000000", "tau_syn_exc": "0.200000000000000", "tau_syn_inh": "2.00000000000000", "tau_w": "144.000000000000" }, "solver": "numeric", "state_variables": [ "V_m", "w", "g_exc__X__exc_spikes", "g_exc__X__exc_spikes__d", "g_inh__X__inh_spikes", "g_inh__X__inh_spikes__d" ], "update_expressions": { "V_m": "Delta_T*g_L*exp((-V_th + min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m + (1.0*E_exc*g_exc__X__exc_spikes - g_L*min(V_m, V_peak) - 1.0*g_exc__X__exc_spikes*min(V_m, V_peak) - 1.0*g_inh__X__inh_spikes*min(V_m, V_peak) - w)/C_m", "g_exc__X__exc_spikes": "1.0*g_exc__X__exc_spikes__d", "g_exc__X__exc_spikes__d": "-g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc", "g_inh__X__inh_spikes": "1.0*g_inh__X__inh_spikes__d", "g_inh__X__inh_spikes__d": "-g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh", "w": "(-E_L*a + a*min(V_m, V_peak) - w)/tau_w" } } ] line 1:24 extraneous input '*' expecting {'integer', 'real', 'string', 'boolean', 'void', '(', ',', NAME, UNSIGNED_INTEGER} line 1:24 extraneous input '*' expecting {'integer', 'real', 'string', 'boolean', 'void', '(', ',', NAME, UNSIGNED_INTEGER} [75,aeif_cond_alpha_nestml, DEBUG, [42:0;116:0]]: Start building symbol table! [76,aeif_cond_alpha_nestml, WARNING, [72:8;72:17]]: Variable 'a' has the same name as a physical unit! [77,aeif_cond_alpha_nestml, INFO, [58:8;60:8]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [78,aeif_cond_alpha_nestml, INFO, [58:8;60:8]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [79,aeif_cond_alpha_nestml, INFO, [58:8;60:8]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [80,GLOBAL, INFO]: Analysing/transforming neuron 'aeif_cond_alpha_nestml__with_dopamine_synapse_nestml' [81,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [42:0;116:0]]: Starts processing of the model 'aeif_cond_alpha_nestml__with_dopamine_synapse_nestml' INFO:root:Analysing input: INFO:root:{ "dynamics": [ { "expression": "V_m' = ((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m", "initial_values": { "V_m": "E_L" } }, { "expression": "w' = (a * ((min(V_m, V_peak)) - E_L) - w) / tau_w", "initial_values": { "w": "0" } }, { "expression": "g_inh__X__inh_spikes = (e / tau_syn_inh) * t * exp(-t / tau_syn_inh)", "initial_values": {} }, { "expression": "g_exc__X__exc_spikes = (e / tau_syn_exc) * t * exp(-t / tau_syn_exc)", "initial_values": {} } ], "options": { "output_timestep_symbol": "__h" }, "parameters": { "C_m": "281.0", "Delta_T": "2.0", "E_L": "(-70.6)", "E_exc": "0", "E_inh": "(-85.0)", "I_e": "0", "V_peak": "0", "V_reset": "(-60.0)", "V_th": "(-50.4)", "a": "4", "b": "80.5", "g_L": "30.0", "t_ref": "0.0", "tau_syn_exc": "0.2", "tau_syn_inh": "2.0", "tau_w": "144.0" } } INFO:root:Processing global options... INFO:root:Processing input shapes... INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m]) DEBUG:root: linear factors: Matrix([[0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [w]) DEBUG:root: linear factors: Matrix([[-1/tau_w]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc INFO:root:All known variables: [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes', g_exc__X__exc_spikes, g_exc__X__exc_spikes'], all parameters used in ODEs: {tau_syn_inh, E_inh, tau_syn_exc, V_th, I_e, E_L, E_exc, I_stim, V_peak, a, tau_w, C_m, Delta_T, g_L} INFO:root:No numerical value specified for parameter "I_stim" INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, V_m]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_inh/C_m], [0], [1.0*E_exc/C_m], [0], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m + I_stim/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, V_m, w]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_inh/C_m], [0], [1.0*E_exc/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]]), A = Matrix([[0, -1/C_m, 1.0*E_inh/C_m, 0, 1.0*E_exc/C_m, 0], [0, -1/tau_w, 0, 0, 0, 0], [0, 0, 0, 1.00000000000000, 0, 0], [0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh, 0, 0], [0, 0, 0, 0, 0, 1.00000000000000], [0, 0, 0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w], [0], [0], [0], [0]]), c = Matrix([[Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w], [0], [0], [0], [0]]) INFO:root:Finding analytically solvable equations... INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_inh/C_m], [0], [1.0*E_exc/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Generating propagators for the following symbols: g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d DEBUG:root:Initializing system of shapes with x = Matrix([[g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]]), A = Matrix([[0, 1.00000000000000, 0, 0], [-1/tau_syn_inh**2, -2/tau_syn_inh, 0, 0], [0, 0, 0, 1.00000000000000], [0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc]]), b = Matrix([[0], [0], [0], [0]]), c = Matrix([[0], [0], [0], [0]]) DEBUG:root:System of equations: DEBUG:root:x = Matrix([[g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]]) DEBUG:root:A = Matrix([ [ 0, 1.0, 0, 0], [-1/tau_syn_inh**2, -2/tau_syn_inh, 0, 0], [ 0, 0, 0, 1.0], [ 0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc]]) DEBUG:root:b = Matrix([[0], [0], [0], [0]]) DEBUG:root:c = Matrix([[0], [0], [0], [0]]) INFO:root:update_expr[g_inh__X__inh_spikes] = __P__g_inh__X__inh_spikes__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d INFO:root:update_expr[g_inh__X__inh_spikes__d] = __P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d INFO:root:update_expr[g_exc__X__exc_spikes] = __P__g_exc__X__exc_spikes__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d INFO:root:update_expr[g_exc__X__exc_spikes__d] = __P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d INFO:root:Generating numerical solver for the following symbols: V_m, w DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w]]), A = Matrix([[0, -1/C_m], [0, -1/tau_w]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w]]), c = Matrix([[Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w]]) INFO:root:In ode-toolbox: returning outdict = INFO:root:[ { "initial_values": { "g_exc__X__exc_spikes": "0", "g_exc__X__exc_spikes__d": "e/tau_syn_exc", "g_inh__X__inh_spikes": "0", "g_inh__X__inh_spikes__d": "e/tau_syn_inh" }, "parameters": { "tau_syn_exc": "0.200000000000000", "tau_syn_inh": "2.00000000000000" }, "propagators": { "__P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes": "-1.0*__h*exp(-__h/tau_syn_exc)/tau_syn_exc**2", "__P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes__d": "1.0*(-__h + tau_syn_exc)*exp(-__h/tau_syn_exc)/tau_syn_exc", "__P__g_exc__X__exc_spikes__g_exc__X__exc_spikes": "1.0*(__h + tau_syn_exc)*exp(-__h/tau_syn_exc)/tau_syn_exc", "__P__g_exc__X__exc_spikes__g_exc__X__exc_spikes__d": "1.0*__h*exp(-__h/tau_syn_exc)", "__P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes": "-1.0*__h*exp(-__h/tau_syn_inh)/tau_syn_inh**2", "__P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes__d": "1.0*(-__h + tau_syn_inh)*exp(-__h/tau_syn_inh)/tau_syn_inh", "__P__g_inh__X__inh_spikes__g_inh__X__inh_spikes": "1.0*(__h + tau_syn_inh)*exp(-__h/tau_syn_inh)/tau_syn_inh", "__P__g_inh__X__inh_spikes__g_inh__X__inh_spikes__d": "1.0*__h*exp(-__h/tau_syn_inh)" }, "solver": "analytical", "state_variables": [ "g_inh__X__inh_spikes", "g_inh__X__inh_spikes__d", "g_exc__X__exc_spikes", "g_exc__X__exc_spikes__d" ], "update_expressions": { "g_exc__X__exc_spikes": "__P__g_exc__X__exc_spikes__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d", "g_exc__X__exc_spikes__d": "__P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes*g_exc__X__exc_spikes + __P__g_exc__X__exc_spikes__d__g_exc__X__exc_spikes__d*g_exc__X__exc_spikes__d", "g_inh__X__inh_spikes": "__P__g_inh__X__inh_spikes__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d", "g_inh__X__inh_spikes__d": "__P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes*g_inh__X__inh_spikes + __P__g_inh__X__inh_spikes__d__g_inh__X__inh_spikes__d*g_inh__X__inh_spikes__d" } }, { "initial_values": { "V_m": "E_L", "w": "0" }, "parameters": { "C_m": "281.000000000000", "Delta_T": "2.00000000000000", "E_L": "-70.6000000000000", "E_exc": "0", "E_inh": "-85.0000000000000", "I_e": "0", "V_peak": "0", "V_th": "-50.4000000000000", "a": "4.00000000000000", "g_L": "30.0000000000000", "tau_w": "144.000000000000" }, "solver": "numeric", "state_variables": [ "V_m", "w" ], "update_expressions": { "V_m": "Delta_T*g_L*exp((-V_th + min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m + (1.0*E_exc*g_exc__X__exc_spikes - g_L*min(V_m, V_peak) - 1.0*g_exc__X__exc_spikes*min(V_m, V_peak) - 1.0*g_inh__X__inh_spikes*min(V_m, V_peak) - w)/C_m", "w": "(-E_L*a + a*min(V_m, V_peak) - w)/tau_w" } } ] INFO:root:Analysing input: INFO:root:{ "dynamics": [ { "expression": "V_m' = ((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m", "initial_values": { "V_m": "E_L" } }, { "expression": "w' = (a * ((min(V_m, V_peak)) - E_L) - w) / tau_w", "initial_values": { "w": "0" } }, { "expression": "g_inh__X__inh_spikes = (e / tau_syn_inh) * t * exp(-t / tau_syn_inh)", "initial_values": {} }, { "expression": "g_exc__X__exc_spikes = (e / tau_syn_exc) * t * exp(-t / tau_syn_exc)", "initial_values": {} } ], "options": { "output_timestep_symbol": "__h" }, "parameters": { "C_m": "281.0", "Delta_T": "2.0", "E_L": "(-70.6)", "E_exc": "0", "E_inh": "(-85.0)", "I_e": "0", "V_peak": "0", "V_reset": "(-60.0)", "V_th": "(-50.4)", "a": "4", "b": "80.5", "g_L": "30.0", "t_ref": "0.0", "tau_syn_exc": "0.2", "tau_syn_inh": "2.0", "tau_w": "144.0" } } INFO:root:Processing global options... INFO:root:Processing input shapes... INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m]) DEBUG:root: linear factors: Matrix([[0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [w]) DEBUG:root: linear factors: Matrix([[-1/tau_w]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc INFO:root:All known variables: [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes', g_exc__X__exc_spikes, g_exc__X__exc_spikes'], all parameters used in ODEs: {tau_syn_inh, E_inh, tau_syn_exc, V_th, I_e, E_L, E_exc, I_stim, V_peak, a, tau_w, C_m, Delta_T, g_L} INFO:root:No numerical value specified for parameter "I_stim" INFO:root: Processing differential-equation form shape V_m with defining expression = "((-g_L) * ((min(V_m, V_peak)) - E_L) + (g_L * Delta_T * exp((((min(V_m, V_peak)) - V_th) / Delta_T))) - (g_exc__X__exc_spikes * 1.0 * ((min(V_m, V_peak)) - E_exc)) - (g_inh__X__inh_spikes * 1.0 * ((min(V_m, V_peak)) - E_inh)) - w + I_e + I_stim) / C_m" DEBUG:root:Splitting expression (Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T) + I_e + I_stim - g_L*(-E_L + Min(V_m, V_peak)) - 1.0*g_exc__X__exc_spikes*(-E_exc + Min(V_m, V_peak)) - 1.0*g_inh__X__inh_spikes*(-E_inh + Min(V_m, V_peak)) - w)/C_m (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, V_m]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_inh/C_m], [0], [1.0*E_exc/C_m], [0], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m DEBUG:root:Created Shape with symbol V_m, derivative_factors = [0], inhom_term = E_L*g_L/C_m + I_e/C_m + I_stim/C_m, nonlin_term = Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m INFO:root: Returning shape: Shape "V_m" of order 1 INFO:root: Processing differential-equation form shape w with defining expression = "(a * ((min(V_m, V_peak)) - E_L) - w) / tau_w" DEBUG:root:Splitting expression (a*(-E_L + Min(V_m, V_peak)) - w)/tau_w (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d, V_m, w]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w DEBUG:root:Created Shape with symbol w, derivative_factors = [-1/tau_w], inhom_term = -E_L*a/tau_w, nonlin_term = a*Min(V_m, V_peak)/tau_w INFO:root: Returning shape: Shape "w" of order 1 INFO:root: Processing function-of-time shape "g_inh__X__inh_spikes" with defining expression = "e*t*exp(-t/tau_syn_inh)/tau_syn_inh" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_inh__X__inh_spikes, derivative_factors = Matrix([[-1/tau_syn_inh**2], [-2/tau_syn_inh]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root: Processing function-of-time shape "g_exc__X__exc_spikes" with defining expression = "e*t*exp(-t/tau_syn_exc)/tau_syn_exc" DEBUG:root:Found t: 1 DEBUG:root: Finding ode for order 1... DEBUG:root: Finding ode for order 2... DEBUG:root: checking whether shape definition is satisfied... DEBUG:root:Shape satisfies ODE of order = 2 DEBUG:root:Created Shape with symbol g_exc__X__exc_spikes, derivative_factors = Matrix([[-1/tau_syn_exc**2], [-2/tau_syn_exc]]), inhom_term = 0.0, nonlin_term = 0.0 INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_inh/C_m], [0], [1.0*E_exc/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]])) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]]), A = Matrix([[0, -1/C_m, 1.0*E_inh/C_m, 0, 1.0*E_exc/C_m, 0], [0, -1/tau_w, 0, 0, 0, 0], [0, 0, 0, 1.00000000000000, 0, 0], [0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh, 0, 0], [0, 0, 0, 0, 0, 1.00000000000000], [0, 0, 0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w], [0], [0], [0], [0]]), c = Matrix([[Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w], [0], [0], [0], [0]]) INFO:root:Finding analytically solvable equations... INFO:root:Shape V_m: reconstituting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m DEBUG:root:Splitting expression Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_exc*g_exc__X__exc_spikes/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m - w/C_m (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/C_m], [1.0*E_inh/C_m], [0], [1.0*E_exc/C_m], [0]]) DEBUG:root: inhomogeneous term: E_L*g_L/C_m + I_e/C_m + I_stim/C_m DEBUG:root: nonlinear term: Delta_T*g_L*exp(-V_th/Delta_T)*exp(Min(V_m, V_peak)/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m INFO:root:Shape w: reconstituting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w DEBUG:root:Splitting expression -E_L*a/tau_w + a*Min(V_m, V_peak)/tau_w - w/tau_w (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [-1/tau_w], [0], [0], [0], [0]]) DEBUG:root: inhomogeneous term: -E_L*a/tau_w DEBUG:root: nonlinear term: a*Min(V_m, V_peak)/tau_w INFO:root:Shape g_inh__X__inh_spikes: reconstituting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh DEBUG:root:Splitting expression -g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [-1/tau_syn_inh**2], [-2/tau_syn_inh], [0], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Shape g_exc__X__exc_spikes: reconstituting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc DEBUG:root:Splitting expression -g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc (symbols [V_m, w, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, g_exc__X__exc_spikes, g_exc__X__exc_spikes__d]) DEBUG:root: linear factors: Matrix([[0], [0], [0], [0], [-1/tau_syn_exc**2], [-2/tau_syn_exc]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Generating numerical solver for the following symbols: g_exc__X__exc_spikes__d, V_m, g_inh__X__inh_spikes, g_inh__X__inh_spikes__d, w, g_exc__X__exc_spikes DEBUG:root:Initializing system of shapes with x = Matrix([[V_m], [w], [g_inh__X__inh_spikes], [g_inh__X__inh_spikes__d], [g_exc__X__exc_spikes], [g_exc__X__exc_spikes__d]]), A = Matrix([[0, -1/C_m, 1.0*E_inh/C_m, 0, 1.0*E_exc/C_m, 0], [0, -1/tau_w, 0, 0, 0, 0], [0, 0, 0, 1.00000000000000, 0, 0], [0, 0, -1/tau_syn_inh**2, -2/tau_syn_inh, 0, 0], [0, 0, 0, 0, 0, 1.00000000000000], [0, 0, 0, 0, -1/tau_syn_exc**2, -2/tau_syn_exc]]), b = Matrix([[E_L*g_L/C_m + I_e/C_m + I_stim/C_m], [-E_L*a/tau_w], [0], [0], [0], [0]]), c = Matrix([[Delta_T*g_L*exp((-V_th + Min(V_m, V_peak))/Delta_T)/C_m - g_L*Min(V_m, V_peak)/C_m - 1.0*g_exc__X__exc_spikes*Min(V_m, V_peak)/C_m - 1.0*g_inh__X__inh_spikes*Min(V_m, V_peak)/C_m], [a*Min(V_m, V_peak)/tau_w], [0], [0], [0], [0]]) INFO:root:In ode-toolbox: returning outdict = INFO:root:[ { "initial_values": { "V_m": "E_L", "g_exc__X__exc_spikes": "0", "g_exc__X__exc_spikes__d": "e/tau_syn_exc", "g_inh__X__inh_spikes": "0", "g_inh__X__inh_spikes__d": "e/tau_syn_inh", "w": "0" }, "parameters": { "C_m": "281.000000000000", "Delta_T": "2.00000000000000", "E_L": "-70.6000000000000", "E_exc": "0", "E_inh": "-85.0000000000000", "I_e": "0", "V_peak": "0", "V_th": "-50.4000000000000", "a": "4.00000000000000", "g_L": "30.0000000000000", "tau_syn_exc": "0.200000000000000", "tau_syn_inh": "2.00000000000000", "tau_w": "144.000000000000" }, "solver": "numeric", "state_variables": [ "V_m", "w", "g_inh__X__inh_spikes", "g_inh__X__inh_spikes__d", "g_exc__X__exc_spikes", "g_exc__X__exc_spikes__d" ], "update_expressions": { "V_m": "Delta_T*g_L*exp((-V_th + min(V_m, V_peak))/Delta_T)/C_m + E_L*g_L/C_m + 1.0*E_inh*g_inh__X__inh_spikes/C_m + I_e/C_m + I_stim/C_m + (1.0*E_exc*g_exc__X__exc_spikes - g_L*min(V_m, V_peak) - 1.0*g_exc__X__exc_spikes*min(V_m, V_peak) - 1.0*g_inh__X__inh_spikes*min(V_m, V_peak) - w)/C_m", "g_exc__X__exc_spikes": "1.0*g_exc__X__exc_spikes__d", "g_exc__X__exc_spikes__d": "-g_exc__X__exc_spikes/tau_syn_exc**2 - 2*g_exc__X__exc_spikes__d/tau_syn_exc", "g_inh__X__inh_spikes": "1.0*g_inh__X__inh_spikes__d", "g_inh__X__inh_spikes__d": "-g_inh__X__inh_spikes/tau_syn_inh**2 - 2*g_inh__X__inh_spikes__d/tau_syn_inh", "w": "(-E_L*a + a*min(V_m, V_peak) - w)/tau_w" } } ] line 1:24 extraneous input '*' expecting {'integer', 'real', 'string', 'boolean', 'void', '(', ',', NAME, UNSIGNED_INTEGER} line 1:24 extraneous input '*' expecting {'integer', 'real', 'string', 'boolean', 'void', '(', ',', NAME, UNSIGNED_INTEGER} [82,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, DEBUG, [42:0;116:0]]: Start building symbol table! [83,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, WARNING, [72:8;72:17]]: Variable 'a' has the same name as a physical unit! [84,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [58:8;60:8]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [85,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [58:8;60:8]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [86,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [58:8;60:8]]: Implicit casting from (compatible) type 'mV nS' to 'pA'. [87,GLOBAL, INFO]: Analysing/transforming synapse dopamine_synapse_nestml__with_aeif_cond_alpha_nestml. [88,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [19:0;56:0]]: Starts processing of the model 'dopamine_synapse_nestml__with_aeif_cond_alpha_nestml' INFO:root:Analysing input: INFO:root:{ "dynamics": [ { "expression": "dopa_rate' = (-dopa_rate) / tau_dopa", "initial_values": { "dopa_rate": "0.0" } } ], "options": { "output_timestep_symbol": "__h" }, "parameters": { "Wmax": "200.0", "Wmin": "(-200.0)", "alpha": "0.2", "b": "0.0", "d": "1", "dopa_thresh": "10", "receptor": "1", "tau_dopa": "100", "w_0": "1.0" } } INFO:root:Processing global options... INFO:root:Processing input shapes... INFO:root: Processing differential-equation form shape dopa_rate with defining expression = "(-dopa_rate) / tau_dopa" DEBUG:root:Splitting expression -dopa_rate/tau_dopa (symbols [dopa_rate]) DEBUG:root: linear factors: Matrix([[-1/tau_dopa]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 DEBUG:root:Created Shape with symbol dopa_rate, derivative_factors = [-1/tau_dopa], inhom_term = 0.0, nonlin_term = 0.0 INFO:root: Returning shape: Shape "dopa_rate" of order 1 INFO:root:Shape dopa_rate: reconstituting expression -dopa_rate/tau_dopa INFO:root:All known variables: [dopa_rate], all parameters used in ODEs: {tau_dopa} INFO:root: Processing differential-equation form shape dopa_rate with defining expression = "(-dopa_rate) / tau_dopa" DEBUG:root:Splitting expression -dopa_rate/tau_dopa (symbols [dopa_rate, dopa_rate]) DEBUG:root: linear factors: Matrix([[-1/tau_dopa], [0]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 DEBUG:root:Created Shape with symbol dopa_rate, derivative_factors = [-1/tau_dopa], inhom_term = 0.0, nonlin_term = 0 INFO:root: Returning shape: Shape "dopa_rate" of order 1 INFO:root:Shape dopa_rate: reconstituting expression -dopa_rate/tau_dopa DEBUG:root:Splitting expression -dopa_rate/tau_dopa (symbols Matrix([[dopa_rate]])) DEBUG:root: linear factors: Matrix([[-1/tau_dopa]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 DEBUG:root:Initializing system of shapes with x = Matrix([[dopa_rate]]), A = Matrix([[-1/tau_dopa]]), b = Matrix([[0]]), c = Matrix([[0]]) INFO:root:Finding analytically solvable equations... INFO:root:Shape dopa_rate: reconstituting expression -dopa_rate/tau_dopa DEBUG:root:Splitting expression -dopa_rate/tau_dopa (symbols [dopa_rate]) DEBUG:root: linear factors: Matrix([[-1/tau_dopa]]) DEBUG:root: inhomogeneous term: 0.0 DEBUG:root: nonlinear term: 0.0 INFO:root:Generating propagators for the following symbols: dopa_rate DEBUG:root:Initializing system of shapes with x = Matrix([[dopa_rate]]), A = Matrix([[-1/tau_dopa]]), b = Matrix([[0]]), c = Matrix([[0]]) DEBUG:root:System of equations: DEBUG:root:x = Matrix([[dopa_rate]]) DEBUG:root:A = Matrix([[-1/tau_dopa]]) DEBUG:root:b = Matrix([[0]]) DEBUG:root:c = Matrix([[0]]) INFO:root:update_expr[dopa_rate] = __P__dopa_rate__dopa_rate*dopa_rate INFO:root:In ode-toolbox: returning outdict = INFO:root:[ { "initial_values": { "dopa_rate": "0.0" }, "parameters": { "tau_dopa": "100.000000000000" }, "propagators": { "__P__dopa_rate__dopa_rate": "exp(-__h/tau_dopa)" }, "solver": "analytical", "state_variables": [ "dopa_rate" ], "update_expressions": { "dopa_rate": "__P__dopa_rate__dopa_rate*dopa_rate" } } ] [89,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, DEBUG, [19:0;56:0]]: Start building symbol table! [90,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, WARNING, [29:8;29:28]]: Variable 'd' has the same name as a physical unit! [91,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [28:27;28:27]]: Implicit casting from (compatible) type 'integer' to 'real'. [92,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [31:24;31:24]]: Implicit casting from (compatible) type 'integer' to 'real'. [93,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [46:21;46:29]]: Implicit casting from (compatible) type '1 / ms' to 'real'. [94,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, DEBUG, [19:0;56:0]]: Start building symbol table! [95,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, WARNING, [29:8;29:28]]: Variable 'd' has the same name as a physical unit! [96,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [28:27;28:27]]: Implicit casting from (compatible) type 'integer' to 'real'. [97,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [31:24;31:24]]: Implicit casting from (compatible) type 'integer' to 'real'. [98,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [46:21;46:29]]: Implicit casting from (compatible) type '1 / ms' to 'real'. [99,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.cpp [100,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h [101,aeif_cond_alpha_nestml, INFO, [42:0;116:0]]: Successfully generated code for the model: 'aeif_cond_alpha_nestml' in: '/opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new' ! [102,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp [103,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h [104,aeif_cond_alpha_nestml__with_dopamine_synapse_nestml, INFO, [42:0;116:0]]: Successfully generated code for the model: 'aeif_cond_alpha_nestml__with_dopamine_synapse_nestml' in: '/opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new' ! [105,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/dopamine_synapse_nestml__with_aeif_cond_alpha_nestml.h [106,dopamine_synapse_nestml__with_aeif_cond_alpha_nestml, INFO, [19:0;56:0]]: Successfully generated code for the model: 'dopamine_synapse_nestml__with_aeif_cond_alpha_nestml' in: '/opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new' ! [107,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/CMakeLists.txt [108,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/nestml_gap_dopa_module.h [109,GLOBAL, INFO]: Rendering template /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/nestml_gap_dopa_module.cpp [110,GLOBAL, INFO]: Successfully generated NEST module code in '/opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new' ! CMake Warning: Ignoring empty string ("") provided on the command line. CMake Warning (dev) at CMakeLists.txt:95 (project): cmake_minimum_required() should be called prior to this top-level project() call. Please see the cmake-commands(7) manual for usage documentation of both commands. This warning is for project developers. Use -Wno-dev to suppress it. -- The CXX compiler identification is Clang 17.0.6 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /opt/miniconda3/envs/pd_nestml/bin/arm64-apple-darwin20.0.0-clang++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done ------------------------------------------------------- nestml_gap_dopa_module Configuration Summary ------------------------------------------------------- C++ compiler : /opt/miniconda3/envs/pd_nestml/bin/arm64-apple-darwin20.0.0-clang++ Build static libs : OFF C++ compiler flags : -ftree-vectorize -fPIC -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem /opt/miniconda3/envs/pd_nestml/include NEST compiler flags : -ftree-vectorize -fPIC -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem /opt/miniconda3/envs/pd_nestml/include -fdebug-prefix-map=/Users/runner/miniforge3/conda-bld/nest-simulator_1724732993440/work=/usr/local/src/conda/nest-simulator-3.8 -fdebug-prefix-map=/opt/miniconda3/envs/pd_nestml=/usr/local/src/conda-prefix -std=c++17 -Wall -Xclang -fopenmp -O2 NEST include dirs : -I/opt/miniconda3/envs/pd_nestml/include/nest -I/opt/miniconda3/envs/pd_nestml/include -I/opt/miniconda3/envs/pd_nestml/include -I/opt/miniconda3/envs/pd_nestml/include -I/opt/miniconda3/envs/pd_nestml/include NEST libraries flags : -L/opt/miniconda3/envs/pd_nestml/lib/nest -lnest -lsli /opt/miniconda3/envs/pd_nestml/lib/libltdl.dylib /opt/miniconda3/envs/pd_nestml/lib/libreadline.dylib /opt/miniconda3/envs/pd_nestml/lib/libncurses.dylib /opt/miniconda3/envs/pd_nestml/lib/libgsl.dylib /opt/miniconda3/envs/pd_nestml/lib/libgslcblas.dylib /opt/miniconda3/envs/pd_nestml/lib/libomp.dylib ------------------------------------------------------- You can now build and install 'nestml_gap_dopa_module' using make make install The library file libnestml_gap_dopa_module.so will be installed to /opt/miniconda3/envs/pd_nestml/lib/nest The module can be loaded into NEST using (nestml_gap_dopa_module) Install (in SLI) nest.Install(nestml_gap_dopa_module) (in PyNEST) CMake Warning (dev) in CMakeLists.txt: No cmake_minimum_required command is present. A line of code such as cmake_minimum_required(VERSION 3.31) should be added at the top of the file. The version specified may be lower if you wish to support older CMake versions for this project. For more information run "cmake --help-policy CMP0000". This warning is for project developers. Use -Wno-dev to suppress it. -- Configuring done (3.7s) -- Generating done (0.0s) -- Build files have been written to: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new [ 25%] Building CXX object CMakeFiles/nestml_gap_dopa_module_module.dir/nestml_gap_dopa_module.o [ 75%] Building CXX object CMakeFiles/nestml_gap_dopa_module_module.dir/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.o [ 75%] Building CXX object CMakeFiles/nestml_gap_dopa_module_module.dir/aeif_cond_alpha_nestml.o /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/nestml_gap_dopa_module.cpp:28:10: fatal error: 'dynamicloader.h' file not found 28 | #include "dynamicloader.h" | ^~~~~~~~~~~~~~~~~ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:103:17: error: no type named 'port' in namespace 'nest' 103 | typedef nest::port nest_port_t; | ~~~~~~^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:103:17: error: no type named 'port' in namespace 'nest' 103 | typedef nest::port nest_port_t; | ~~~~~~^ 1 error generated. /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:104:17: error: no type named 'rport' in namespace 'nest' 104 | typedef nest::rport nest_rport_t; | ~~~~~~^ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:228:101: error: non-virtual member function marked 'override' hides virtual member function 228 | nest_port_t send_test_event(nest::Node& target, nest_rport_t receptor_type, nest::synindex, bool) override; | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:379:18: note: hidden overloaded virtual function 'nest::Node::send_test_event' declared here: type mismatch at 2nd parameter ('size_t' (aka 'unsigned long') vs 'nest_rport_t' (aka 'int')) 379 | virtual size_t send_test_event( Node& receiving_node, size_t receptor_type, synindex syn_id, bool dummy_target ); | ^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:242:66: error: only virtual member functions can be marked 'override' 242 | nest_port_t handles_test_event(nest::SpikeEvent&, nest_port_t) override; | ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:243:68: error: only virtual member functions can be marked 'override' 243 | nest_port_t handles_test_event(nest::CurrentEvent&, nest_port_t) override; | ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:244:74: error: only virtual member functions can be marked 'override' 244 | nest_port_t handles_tes/opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:104t_eve:n17t:( neserror: t::no type named 'rport' in namespace 'nest' Data L104o | g g itnygpReedqeufe snte&s,t :n:erspto_rtport_ nets)t _orvpeorrrti_dte;; | | ~~~~~~^ ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:246:75: error: only virtual member functions can be marked 'override' 246 | nest_port_t handles_test_event( nest::GapJunctionEvent&, nest_rport_t ) override; | ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:243:101: error: non-virtual member function marked 'override' hides virtual member function 243 | nest_port_t send_test_event(nest::Node& target, nest_rpomake[2]: *** [CMakeFiles/nestml_gap_dopa_module_module.dir/nestml_gap_dopa_module.o] Error 1 rt_t receptor_type, make[2]: *** Waiting for unfinished jobs.... nest::synindex, bool) override; | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:379:18: note: hidden overloaded virtual function 'nest::Node::send_test_event' declared here: type mismatch at 2nd parameter ('size_t' (aka 'unsigned long') vs 'nest_rport_t' (aka 'int')) 379 | virtual size_t send_test_event( Node& receiving_node, size_t receptor_type, synindex syn_id, bool dummy_target ); | ^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:257:66: error: only virtual member functions can be marked 'override' 257 | nest_port_t handles_test_event(nest::SpikeEvent&, nest_port_t) override; | ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:258:68: error: only virtual member functions can be marked 'override' 258 | nest_port_t handles_test_event(nest::CurrentEvent&, nest_port_t) override; | ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:259:74: error: only virtual member functions can be marked 'override' 259 | nest_port_t handles_test_event(nest::DataLoggingRequest&, nest_port_t) override; | ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:261:75: error: only virtual member functions can be marked 'override' 261 | nest_port_t handles_test_event( nest::GapJunctionEvent&, nest_rport_t ) override; | ^~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:338:17: warning: 'aeif_cond_alpha_nestml::get_C_m' hides overloaded virtual function [-Woverloaded-virtual] 338 | inline double get_C_m() const | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:797:18: note: hidden overloaded virtual function 'nest::Node::get_C_m' declared here: different number of parameters (1 vs 0) 797 | virtual double get_C_m( int comp ); | ^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:368:17: warning: 'aeif_cond_alpha_nestml::get_g_L' hides overloaded virtual function [-Woverloaded-virtual] 368 | inline double get_g_L() const | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:798:18: note: hidden overloaded virtual function 'nest::Node::get_g_L' declared here: different number of parameters (1 vs 0) 798 | virtual double get_g_L( int comp ); | ^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.h:664:3: warning: 'update' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] 664 | update( nest::Time const& origin, const long from, const long to ) | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:296:16: note: overridden virtual function is here 296 | virtual void update( Time const&, const long, const long ) = 0; | ^ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:375:17: warning: 'aeif_cond_alpha_nestml__with_dopamine_synapse_nestml::get_C_m' hides overloaded virtual function [-Woverloaded-virtual] 375 | inline double get_C_m() const | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:797:18: note: hidden overloaded virtual function 'nest::Node::get_C_m' declared here: different number of parameters (1 vs 0) 797 | virtual double get_C_m( int comp ); | ^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:405:17: warning: 'aeif_cond_alpha_nestml__with_dopamine_synapse_nestml::get_g_L' hides overloaded virtual function [-Woverloaded-virtual] 405 | inline double get_g_L() const | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:798:18: note: hidden overloaded virtual function 'nest::Node::get_g_L' declared here: different number of parameters (1 vs 0) 798 | virtual double get_g_L( int comp ); | ^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:295:8: warning: 'register_stdp_connection' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] 295 | void register_stdp_connection( double t_first_read, double delay ); | ^ /opt/miniconda3/envs/pd_nestml/include/nest/archiving_node.h:95:8: note: overridden virtual function is here 95 | void register_stdp_connection( double t_first_read, double delay ) override; | ^ In file included from /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp:44: /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.h:734:3: warning: 'update' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] 734 | update( nest::Time const& origin, const long from, const long to ) | ^ /opt/miniconda3/envs/pd_nestml/include/nest/node.h:296:16: note: overridden virtual function is here 296 | virtual void update( Time const&, const long, const long ) = 0; | ^ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.cpp:211:16: warning: unused variable '__resolution' [-Wunused-variable] 211 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function | ^~~~~~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml.cpp:524:16: warning: unused variable '__I_gap' [-Wunused-variable] 524 | double __I_gap = 0; | ^~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp:216:16: warning: unused variable '__resolution' [-Wunused-variable] 216 | const double __resolution = nest::Time::get_resolution().get_ms(); // do not remove, this is necessary for the resolution() function | ^~~~~~~~~~~~ /opt/miniconda3/envs/pd_nestml/models/gap-dopamod-component-new/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.cpp:535:16: warning: unused variable '__I_gap' [-Wunused-variable] 535 | double __I_gap = 0; | ^~~~~~~ 5 warnings and 7 errors generated. make[2]: *** [CMakeFiles/nestml_gap_dopa_module_module.dir/aeif_cond_alpha_nestml.o] Error 1 6 warnings and 7 errors generated. make[2]: *** [CMakeFiles/nestml_gap_dopa_module_module.dir/aeif_cond_alpha_nestml__with_dopamine_synapse_nestml.o] Error 1 make[1]: *** [CMakeFiles/nestml_gap_dopa_module_module.dir/all] Error 2 make: *** [all] Error 2 Traceback (most recent call last): File "/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/codegeneration/nest_builder.py", line 174, in build subprocess.check_call(make_all_cmd, stderr=stderr, stdout=stdout, shell=shell, File "/opt/miniconda3/envs/pd_nestml/lib/python3.12/subprocess.py", line 413, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['make', '-j12', 'all']' returned non-zero exit status 2. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/wdg562/Documents/NEST_simulations/NESTML_components/create_gap_dopamod_synapse.py", line 23, in generate_nest_target(input_path=input_path, File "/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/frontend/pynestml_frontend.py", line 267, in generate_nest_target generate_target(input_path, target_platform="NEST", target_path=target_path, logging_level=logging_level, File "/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/frontend/pynestml_frontend.py", line 190, in generate_target if not process() == 0: ^^^^^^^^^ File "/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/frontend/pynestml_frontend.py", line 480, in process _builder.build() File "/opt/miniconda3/envs/pd_nestml/lib/python3.12/site-packages/pynestml/codegeneration/nest_builder.py", line 181, in build raise GeneratedCodeBuildException(stages_exception[current_stage]) pynestml.exceptions.generated_code_build_exception.GeneratedCodeBuildException: Error occurred during 'make all'! More detailed error messages can be found in stderr. (pd_nestml) wdg562@SUN1027631 NESTML_components %