Dear Nina,
yes, just tested with two different neuron models (see attached).

Did you get any error messages? Also, did the test-suit after installation succeeded?

On Wed, Nov 10, 2021 at 11:58 AM Nina Doorn <n.doorn@student.utwente.nl> wrote:
Dear Maryada,

Thank you for the answer. For me, setting the simulation and recorder resolution is also not the problem. It works to set them (same result as you), but then running a simulation won't work. It does run, but it will never finish, while if I run the same in my old setup, it works perfectly. So for example, the short script:

nest.ResetKernel()
dt = 0.1
nest.SetKernelStatus({"resolution": dt, "print_time": True})
neuron = nest.Create("aeif_cond_alpha_multisynapse")
nest.Simulate(1000.0)

won't ever finish. 

Do you not experience this problem? 

Best, 
Nina

On Wed, Nov 10, 2021 at 11:24 AM Maryada Maryada <er.maryada@gmail.com> wrote:
Hi Nina,
For the simulation and recorder resolution, I recently used the same approach and it worked (I am also using NEST 3.0). See screenshot attached. You can't set recorder resolution smaller than   simulation resolution which was the case in previous versions.
For time, you now have to set biological_time using nest.SetKernelStatus({"biological_time": 0.})

Hope this helps.

On Wed, Nov 10, 2021 at 10:49 AM Nina Doorn <n.doorn@student.utwente.nl> wrote:
Dear Charl,

While trying to obtain the minimal code to reproduce the problem, I found out the problem disappears when I get rid of the setting of the timestep. 
At the beginning of the script, I have (because sometimes I want to have the timestep smaller):
nest.ResetKernel()
dt = 0.1
nest.SetKernelStatus({"resolution": dt, "print_time": True})
And at the meters"
TCmeter = nest.Create("multimeter",params={"interval": dt})
Although getting rid of this last part at the meters doesn't solve the problem. 

In the documentation, I cannot find a change between nest 2.18 and nest 3.1 concerning the resolution. Did I miss something?

Also, setting the clock back to zero doesn't work anymore"
nest.SetKernelStatus({'time':0.})
and I haven't found how I am supposed to do this in NEST 3. 

I hope the question is clear. Thank you so much for all your help.

Best,
Nina 


On Mon, Nov 8, 2021 at 6:40 PM Charl Linssen <nest-users@turingbirds.com> wrote:
Dear Nina,

If you could provide us with a small, self-contained script that reproduces the issue, that would be great to help with debugging.

Cheers,
Charl


On Mon, Nov 8, 2021, at 15:46, Nina Doorn wrote:
Dear all,

I wanted to let you know that I resolved the original problem (with building my own nest module in tvb-multiscale docker container). 
I have created my own docker image of the tvb-multiscale but with NEST 3.1 installed. In this container, I can easily install the example nest-extension module, exactly like is explained in the tutorial. Thus, the problem was indeed with the nest version. 

Thank you all for your answers and help!
However, now I have a different problem. So I am now working with (new setup) NEST 3.1 and python 3.9.2 instead of (old setup) NEST 2.18 on Python 3.7.3. I have a simple script to simulate the response of a few unconnected different aeif_cond_alpha_multisynapse neurons to a transient input current. If I run this script in the old setup, it works perfectly and runs in under a second. However, if I run it in the new setup, simulations take forever (I haven't been able to finish one). 

Does anyone know if this could be attributable to a difference between nest 2 and nest 3 that I haven't incorporated into the script? 
Should I provide you with the entire script? 

Thanks in advance!
Kind regards,
Nina 

On Thu, Nov 4, 2021 at 3:19 PM Nina Doorn <n.doorn@student.utwente.nl> wrote:
Hi Hans,

Thank you for letting me know. NMDA receptor conductivity depends on the membrane potential of the post-synaptic neuron (because of the receptor blocking with a magnesium ion). So I would like to multiplicate the NMDA current by a factor which depends on the post-synaptic membrane potential.

Is this possible to implement in NEST? 

Best, 
Nina


On Thu, Nov 4, 2021 at 2:38 PM Hans Ekkehard Plesser <hans.ekkehard.plesser@nmbu.no> wrote:

 

Dear Nina, 

New synaptic dynamics can be added to existing neuron models, mostly independent of the membrane potential dynamics of the model. 

Concerning non-linear NMDA synapses, depending on what kind of non-linearity you want to imlement (just voltage gating or also non-linear interaction between different synapses onto a given neuron), achieving an efficient implementation can be challenging. 

Best, 
Hans Ekkehard 

 

 

--

 

Prof. Dr. Hans Ekkehard Plesser

Head, Department of Data Science

 

Faculty of Science and Technology

Norwegian University of Life Sciences

PO Box 5003, 1432 Aas, Norway

 

Phone +47 6723 1560

Email hans.ekkehard.plesser@nmbu.no

Home http://arken.nmbu.no/~plesser

 

 

 

On 04/11/2021, 14:11, "Nina Doorn" <n.doorn@student.utwente.nl> wrote:

 

Dear Hans,

 

Thank you for the quick response. Yes I am trying to install the example module exactly as cloned from Github, I haven't altered anything. I think the problem might be indeed as Charl described. But it still could be that it is also a problem that the config.h file is not in the source directory. 

Thank you very much for the information on the other models! That is very useful! I will definitely take a look at the first model (since parameters are available for different types of thalamic neurons). However, I want to model, besides AMPA and GABA receptors, NMDA receptors. I know modelling actual non-linear NMDA receptors is not possible with the available NEST models. However, what I have done so far with the aeif_cond_beta_multisynapse, is to define different receptors with different time constants corresponding to AMPA, NMDA and GABA post-synaptic potentials. This would not be possible with the NEST models you mention above. However, I will definitely take a look at them and re-evaluate the importance of modelling these different beta-synapse receptors. 

Thanks again and have a nice day!
Kind regards,

Nina 

 

On Thu, Nov 4, 2021 at 1:23 PM Hans Ekkehard Plesser <hans.ekkehard.plesser@nmbu.no> wrote:

 

Dear Nina,

 

The first error is

 

In file included from /home/docker/nest-extension-module-master/src/mymodule.cpp:30:
/home/docker/nest-extension-module-master/src/pif_psc_alpha.h:92:1: error: expected class-name before ‘{’ token
 {
 ^

 

and it looks a lot like everything following are consequences of this error. So if looks as if something may be off in the pif_psc_alpha.h file around lines 90-92. Are you trying to compile the example module exactly as cloned from Github or have you made any changes to the code?

 

There could also be a small chance of problems "spilling" from the config.h file, which is in the build (not source) directory. That could explain why you experience problems using the docker container, while all works for your colleagues using Linux.

 

BTW, do you know the adaptive multi-timescale models from the Shinomoto group (amat2_exp_psc), which can reproduce the same 20 response patterns as the Izhikevich model, but are mathematically simpler as they are linear? See

 

.. [3] Kobayashi R, Tsubo Y and Shinomoto S (2009). Made-to-order

       spiking neuron model equipped with a multi-timescale adaptive

       threshold. Frontiers in Computational Neuroscience, 3:9.

       DOI: https://dx.doi.org/10.3389%2Fneuro.10.009.2009

.. [4] Yamauchi S, Kim H, Shinomoto S (2011). Elemental spiking neuron model

       for reproducing diverse firing patterns and predicting precise

       firing times. Frontiers in Computational Neuroscience, 5:42.

       DOI: https://doi.org/10.3389/fncom.2011.00042

 

We also have the glif model families from the Allen institute available in NEST (glif_cond, glif_psc), see

 

..  [1] Teeter C, Iyer R, Menon V, Gouwens N, Feng D, Berg J, Szafer A,

        Cain N, Zeng H, Hawrylycz M, Koch C, & Mihalas S (2018)

        Generalized leaky integrate-and-fire models classify multiple neuron

        types. Nature Communications 9:709.

 

These may be more up-to-date alternatives to the Izhikevich model. For some experiences with that model, see

 

Pauli R, Weidel P, Kunkel S and Morrison A (2018) Reproducing Polychronization: A Guide to Maximizing the Reproducibility of Spiking Network Models. Front. Neuroinform. 12:46. doi: 10.3389/fninf.2018.00046

 

Best regards,

Hans Ekkehard

 

--

 

Prof. Dr. Hans Ekkehard Plesser

Head, Department of Data Science

 

Faculty of Science and Technology

Norwegian University of Life Sciences

PO Box 5003, 1432 Aas, Norway

 

Phone +47 6723 1560

Email hans.ekkehard.plesser@nmbu.no

Home http://arken.nmbu.no/~plesser

 

 

 

On 04/11/2021, 11:55, "Nina Doorn" <n.doorn@student.utwente.nl> wrote:

 

Dear experts,

 

To develop a spiking neuronal network model of the thalamus, I want to adapt the Izhikevich neuron model to account for the behavior of thalamocortical neurons. Before I do this, I wanted to test if it was possible to install an extension module in my setup. Therefore I followed these steps: https://nest-extension-module.readthedocs.io/en/latest/extension_modules.html to install this example nest-extension-module: https://github.com/nest/nest-extension-module

I am working with the tvb-multiscale docker container (https://github.com/the-virtual-brain/tvb-multiscale/tree/master/tvb_multiscale/tvb_nest) in VScode on windows. I've been working with this succesfully and easily managed to make thalamus models with the available aeIF neuron model of NEST. I'm using a python 3.7.3 interpreter and NEST 3. 

I've succesfully "made" the module with:

docker@84fabd16af99:~/mmb$ cmake -Dwith-nest=/home/docker/env/neurosci/nest_build/bin/nest-config ../nest-extension-module-master

It gives me the message:

You can now build and install 'mymodule' using
  make
  make install
The library file libmymodule.so will be installed to
  /home/docker/env/neurosci/nest_build/lib/nest/
Help files will be installed to
  /home/docker/env/neurosci/nest_build/share/doc/nest
The module can be loaded into NEST using
  nest.Install('mymodule')  (in PyNEST)
  (mymodule) Install        (in SLI
-- Configuring done
-- Generating done
-- Build files have been written to: /home/docker/mmb

 

However, when I try to "make". I get a bunch of errors that I have added at the end of this email. My colleague tried to install exactly the same module in exactly the same way on his linux machine and it worked perfectly.  But somehow for me, I get these weird errors that I haven't been able to resolve so far. Does anyone have an idea what the problem might be? It would be greatly appreciated. If you need any additional information please let me know. 

Thank you in advance and have a nice day!
Kind regards,
Nina Doorn


Error message:


docker@84fabd16af99:~/mmb$ make
Scanning dependencies of target mymodule_module
[ 10%] Building CXX object src/CMakeFiles/mymodule_module.dir/mymodule.cpp.o
In file included from /home/docker/nest-extension-module-master/src/mymodule.cpp:30:
/home/docker/nest-extension-module-master/src/pif_psc_alpha.h:92:1: error: expected class-name before ‘{’ token
 {
 ^
/home/docker/nest-extension-module-master/src/pif_psc_alpha.h:115:21: error: type ‘nest::Node’ is not a base type for type

 

_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org

_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org
_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org


_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org
_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org


--
Thanks and Regards

Maryada

_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org
_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org


--
Thanks and Regards

Maryada