Logo

NEURON and NetPyne tutorial - Shared screen with speaker view
salvador
01:27:00
robert.mcdougal@yale.edu
salvador
01:27:07
bill.lytton@downstate.edu
salvador
01:27:20
salvador.dura-bernal@downstate.edu
salvador
01:27:51
And yes, recordings will be made available after the tutorial
Prinz, Astrid (she/her/hers)
01:34:25
I don't see any specification of numerical method, time step, etc. Where does that happen?
Wouter Klijn
01:34:45
I installed NEURON using the DEB package from the homepage. When trying to load in Python3:ModuleNotFoundError: No module named 'neuron'You need to install from source to use the python interface? Ir should I add something to PYTHONPATH?
Wouter Klijn
01:34:48
https://www.neuron.yale.edu/neuron/static/py_doc/programming/python.html
Ashraya
01:35:41
how many neurons can I simulate using NEURON?
ted
01:36:57
how many neurons: as many as can fit into your computer's RAM. Depends on complexity of your model cells. Tens to hundreds of thousands are easy.
Dr Mainak Jas
01:37:14
was that olfactory plotting done with h.plotshape?
Bill Lytton
01:38:03
not sure actually; will have to ask Michele Migliore how that was done
ted
01:38:59
default numerical method, dt etc.: implicit Euler, 0.025 ms. Also available: Crank-Nicholson, and variable-order variable-timestep adaptive integration (you set an error criterion, and the integrator adjusts to meet your spec)
Bill Lytton
01:40:16
python3 is strongly encouraged ; python2 is gradually going away; 3.7 or 3.8 best
Adam Newton
01:41:22
Yeah, pip only works with python3
Ashraya
01:42:15
For Wouter, after installng the .deb file
Ashraya
01:42:34
please use nrniv -python to get the python shell and then importing neuron works
Rishika Mohanta
01:42:51
hey for windows, after installing the binary, is the python wrapper installed automatically?
Bill Lytton
01:46:28
if typing along here omit the 'cell=self' part -- that would only be relevant if within a cell Class
ted
01:46:51
If you are primarily a Python person, make sure NEURON is installed and configured so that you can just launch Python, then import neuron.
Angel
01:51:31
i cant import plotly for some reason. can u help?
Wouter Klijn
01:52:32
Do I need to redo the pip install?
Navid Hasanzadeh
01:53:16
What are the x_axis and y_axis?
Bill Lytton
01:53:34
pip install plotly
Bill Lytton
01:53:41
to get local plotly
Adam Newton
01:53:48
They are the positions in microns
Bill Lytton
01:53:51
x and y axis are microns
Minhaz Abedin
01:53:52
Hi joined just now. Anyone call help me with the commands?
Rozita Laghaei
01:53:57
Do you have a doc file containing all the commands you're typing?
Bill Lytton
01:54:05
do you have plotly running?
Bill Lytton
01:54:21
let me make a gdoc file now
Minhaz Abedin
01:54:54
Thanks Bill!
Alison Moss
01:55:07
Please share! thank you!!
Yunchang
01:55:25
Is that possible for us to have the access to the colab file? : )
Ziemowit Sławiński
01:55:49
ps.plot(plotly).show() returns NotImplementedError. What version of NEURON are you using?
Wouter Klijn
01:57:29
Could you leave the commands you type on the screen a little longer?
Wouter Klijn
01:57:40
I get to 50% of the command before you switch
Diego Alonso B. Q.
01:57:46
i don't see it yet
Robert McDougal
01:57:55
what do you mean?
Diego Alonso B. Q.
01:58:03
the link, sorry
Anu Aggarwal
01:58:14
link to colab
Yunchang
01:58:17
Could you share the colab link Rober now? Thank you
Rozita Laghaei
01:58:19
It seems that you have not shared the link in the chat
Robert McDougal
01:58:21
https://colab.research.google.com/drive/1g09N_uqiPLHjAN1Qpnbx8uKk08Q0QGwc?usp=sharing
Diego Alonso B. Q.
01:58:28
thanks
Yunchang
01:58:30
Thank you!
Nikolas Andreakos
01:58:36
Thank you
Benjamin Barlow
01:58:38
looks good!
Rozita Laghaei
01:58:44
thanks!
Carmen Pérez
01:59:11
Thank you
Dr Mainak Jas
01:59:34
is mV the default units?
Justas Birgiolas
01:59:47
yes
Pankaj
01:59:58
Thank you
Maliha A
02:00:19
Robert, your battery..
Alison Moss
02:00:21
Thank you!
Paris Doherty
02:00:44
I just downloaded neuron could I have the instructions?
Adam Newton
02:01:23
Did you try `pip install neuron` or are you on Windows?
Paris Doherty
02:02:06
Thank you
Alessio Buccino
02:02:24
Does the nrnivmodl gets installed also through the pip install neuron?
Bill Lytton
02:02:40
yes that gets installed
Alessio Buccino
02:02:47
Thanks!
Bill Lytton
02:03:11
i copied all the stuff from robert's colab to https://docs.google.com/document/d/1GCv6JVFX9Zm0wIAcsKaRFlppx9KMPhN7-1p25NqRdx8/edit
Bill Lytton
02:03:32
it's editable by everyone (in case i fall behind or someone wants to add a useful note or etc)
Maliha A
02:03:33
Can the HH parameters be changed?
Bill Lytton
02:03:44
yes HH params are accessible
Ashraya
02:03:56
pip install actually works to import neuron directly in python
ted
02:04:52
What Ashraya means is that if you pip install neuron, you can then launch python and inside python do
ted
02:05:01
from neuron import h
ted
02:05:14
That should make pythonistas happy.
Bill Lytton
02:07:24
mod files are compiled; then launch a version of NEURON with these linked; then access the params from the mod file in python
Dr Mainak Jas
02:07:41
are MOD files written for specific versions of Neuron?
Bill Lytton
02:07:47
no
Bill Lytton
02:08:30
also note that recompile if eg a different OS -- switching from ubuntu 19 to ubuntu 20 for instance
ted
02:09:18
If you update your installed NEURON you have to recompile your mod files.
Bill Lytton
02:09:42
PointProcess not to be confused with the same name stats concept
Bill Lytton
02:11:22
._ref_t is not standard python -- this is required since python does not have pointers and pointers are required for NEURON
Rishika Mohanta
02:11:44
/cygdrive/d/nrn/bin/nrnpyenv.sh: line 141: /cygdrive/c/Users/RM/AppData/Local/Microsoft/WindowsApps/python3: Permission denied
Rishika Mohanta
02:11:49
getting an error
Rishika Mohanta
02:12:06
on trying to run when trying to run Neuron
Bill Lytton
02:12:59
i'm not a Windows guy but aren't the \ different from unix / ??? -- maybe switch to colab for now?
Bill Lytton
02:13:45
(sorry, but i last used MS OS in the 80s .... - DOS)
Rishika Mohanta
02:14:22
its running on an Cygwin (a Linux kernel) within WIndows
Bill Lytton
02:14:36
uhoh
ted
02:14:48
Local machine issues we'll have to deal with individually after the tutorial.
Alison Moss
02:15:19
if you downloaded Anaconda use their powershell prompt it works better than Cygwin I was having issues with that as well
ted
02:15:50
Alison is absolutely right.
Wouter Klijn
02:16:36
(FYI Linux subsystem for windows 10 with xming window manager works like a charm)
ted
02:17:10
Re: continuerun and finitialize, why not just do h.tstop = 10 and then h.run()?? Much less typing, fewer typos.
ted
02:17:29
Wouter's approach is good too.
Rishika Mohanta
02:17:39
@Wouter thanks
Rishika Mohanta
02:17:46
ill try that
Ashraya
02:17:54
isn't pip there for windows? you can use pip and install neuron .. anaconda is the best for python, either windows or linux.. easy to install all packages needed..
Bill Lytton
02:18:10
pip install neuron # gives an old version
Bill Lytton
02:18:25
(problems with 'wheels' which is how these pip install things are built)
Angel
02:18:25
i get “notImplementedError” when I run ps.plot(plotly).show(). I have installed pip plotly
Alison Moss
02:18:31
me too!
Bill Lytton
02:19:07
hmm, guess notImplemented could have something to do with how graphics are hooked up on your machine? colab? :)
ted
02:19:20
For now stick with colab.
Angel
02:19:34
thank you! will try colab
ted
02:19:41
Otters like 6.3 deg.
ted
02:19:57
Whales and seals are ok with it too.
Wouter Klijn
02:20:27
Could you share it again?
Robert McDougal
02:20:45
https://colab.research.google.com/drive/1u8jDnCxHfV7E7zCWmAZAu-UEeeffIrcN?usp=sharing
Bill Lytton
02:20:46
whales and seals are not poikilothermic
ted
02:22:15
weren't you a seal once, wwl?
Bill Lytton
02:23:15
put colab pointers in the gdoc -- https://docs.google.com/document/d/1GCv6JVFX9Zm0wIAcsKaRFlppx9KMPhN7-1p25NqRdx8/edit
Yunchang
02:25:47
Is delay the sampling rate? sorry
ted
02:26:01
delay is when the Iclamp's current starts
Prinz, Astrid (she/her/hers)
02:26:05
Bill was mistaken for a seal by a shark. :o)
ted
02:26:23
tasteless
ted
02:27:04
h.dt is the "sampling rate"
Wouter Klijn
02:27:06
Typically underscore variables are hidden (pythonic)
ted
02:28:13
the underscore in _ref_ is not for the purpose of hiding anything. it's just syntactic sugar to tell NEURON that _ref_foo means "this is a pointer to foo"
ted
02:29:48
the storage of the time series t and v is implicit. where does it happen?
ted
02:30:03
ok, forgot about that.
Bill Lytton
02:30:18
the underscores for hidden stuff is actually double underscore eg __add__
ted
02:31:12
as i was saying, h.run()
Wouter Klijn
02:31:17
_ _ ( Indicates special methods defined by the Python language.)(Sometimes used as a name for temporary or insignificant variables (“don't care”).)_
Paris Doherty
02:31:22
Behind entering … any notes of current tut?
Bill Lytton
02:31:34
see google doc
Bill Lytton
02:31:47
https://docs.google.com/document/d/1GCv6JVFX9Zm0wIAcsKaRFlppx9KMPhN7-1p25NqRdx8/edit
Ismael Jaras
02:31:56
Hi, can someone share the link to the collar please
Ismael Jaras
02:32:06
I arrived little late, so can’t see it
Ismael Jaras
02:32:10
Thanks!
Minhaz Abedin
02:32:12
https://colab.research.google.com/drive/1u8jDnCxHfV7E7zCWmAZAu-UEeeffIrcN?usp=sharing
Dr Mainak Jas
02:32:13
the double underscore actually mangles method names, it’s not really recommended ...
Maliha A
02:32:18
Do you have to always type in the units for everything, or is there a way of defining your units in the beginning (if you are using anything other than the default units)?
Robert McDougal
02:32:27
https://colab.research.google.com/drive/1Ftrq_xQeT6GLMtkn7E_-YUu1wniQlPMY?usp=sharing
Maliha A
02:32:49
Thanks!
Minhaz Abedin
02:36:17
I am from a bit different background. This might be a very basic question but don't you need cell body to have the neuron to fire? Can axon "create" a spike from stimulus?
ted
02:36:56
all you need is excitable membrane and a current source
Nikolas Andreakos
02:37:04
An action potential can occur anywhere in a cell (body, axon, dendrites)
Prinz, Astrid (she/her/hers)
02:37:17
Minhaz you don't need a soma to make a spike as long as the axon has active currents.
ted
02:37:18
not so, nikolas.
Joe Graham
02:37:18
In modeling, a compartment is a compartment whether we call it ‘soma’ or ‘axon’. As long as a compartment has some (HH) mechanisms, it can spike.
Prinz, Astrid (she/her/hers)
02:37:41
What Joe said.
Minhaz Abedin
02:38:09
Thanks everyone :)
ted
02:40:05
note that "some HH mechanisms" or mere presence of "active currents" isn't sufficient for excitability.
Taylor Kahl
02:42:45
can you elaborate, Ted?
ted
02:43:05
always. but clarity is better than mere elaboration
Taylor Kahl
02:43:22
ok, pedant!
Joe Graham
02:43:36
Change my “some (HH) mechanisms” to “appropriate (HH) mechanisms”.
Prinz, Astrid (she/her/hers)
02:43:50
What ted means is that you need active currents, but they need to have the right constellation of parameters ti make the membrane excitable.
ted
02:44:24
strongly recommend study of nonlinear dynamics. richly rewarding.
Taylor Kahl
02:44:28
right, thanks Astrid
Robert McDougal
02:49:16
http://tinyurl.com/neuron-morphology-example
Wouter Klijn
02:53:39
Using the google collab, executing the 3rd cell freezes the page
Андрей Созыкин
02:57:04
When is the next Summer Neuron course planned?
arpit shrimankar
02:57:05
d lamda rule ?
Dr Mainak Jas
02:57:15
is there a list online somewhere with what is not recommended in new versions of Neuron?
Kelvin Jones
02:57:17
Can you demonstrate a space-time plot in plotly the way NEURON
Wouter Klijn
02:57:28
Freezing Problem does not occur in chrome. Might be firefox problem
ted
02:57:42
d_lambda rule chops each section into pieces that are no longer than a user-specified fraction of the local space constant.
Bill Lytton
02:57:42
dlambda rule is for determining how many compartment (segments) you need for transfer of a particular frequency
arpit shrimankar
02:58:13
thanks
Bill Lytton
02:58:20
generally py2 and hoc are not recommended; i may have missed what else robert said not recommended
Rozita Laghaei
03:01:53
I think you didn't share it with everyone
Collins Assisi
03:02:12
http://tinyurl.com/neuron-currents
Rozita Laghaei
03:02:19
awesome! thanks!
Robert McDougal
03:02:20
https://colab.research.google.com/drive/1u8jDnCxHfV7E7zCWmAZAu-UEeeffIrcN?usp=sharing
Robert McDougal
03:04:08
https://colab.research.google.com/drive/1GqkZmxznrZIWGyM85UynZw2HfSa0K5UR?usp=sharing
Kelvin Jones
03:06:36
Guess: Almost nothing?
Ashraya
03:06:52
can we perform bifurcation analysis in neuron?
Bill Lytton
03:07:38
can run a lot of sims and graph that but not a formal package for that -- want to write one? :)
Ashraya
03:08:23
will be interesting if there is a way to include xppaut in neuron
Shivangi Patel
03:08:29
That would be cool!
Ashraya
03:09:00
as far as I know, there is no tool like xppaut in python for bifurcation analysis..
Bill Lytton
03:09:05
i wrote an xpp2mod long time ago but nothing for the aut part
ted
03:09:06
For any desired X, find a Python library that does X, and import it into the same Python session in which you are using NEURON.
Ashraya
03:09:22
yeah that is understandable..
ted
03:09:52
for any Y that is easily said, actually doing Y may be laborious . . .
Taylor Kahl
03:10:16
lol
Ismael Jaras
03:11:41
whats the name of the article showing augmentation in firing rate based in history (under same stimuli=?
ted
03:12:01
WRT d_lambda rule, it's built into the CellBuilder. It is also doable programmatically, but right now I'm only seeing an old example for hoc in the FAQ lilst https://neuron.yale.edu/neuron/faq ("What's a good strategy for specifyingnseg"
ted
03:12:31
I should probbly update that for Python.
arpit shrimankar
03:15:39
how to plot gatting variables for na ,k like m.. ? in neuron
arpit shrimankar
03:15:54
m^3h ?
Bill Lytton
03:16:31
_ref_m
Bill Lytton
03:17:21
eg sec(0.5).hh._ref_m
Bill Lytton
03:17:52
vec.record(sec(0.5).hh._ref_m)
Bill Lytton
03:18:05
then can plot that vector after running sim
Bill Lytton
03:21:22
500e6 sec ~16 years
Wouter Klijn
03:23:58
Is the standard used by other simulators?
Bill Lytton
03:25:25
standard units??
ted
03:25:57
"whats the name of the article showing augmentation in firing rate based in history (under same stimuli=?" Winograd et al. PMID 18474856. See modeldb.yale.edu/144376.
Ismael Jaras
03:26:08
Thank you very much!!
ted
03:27:32
"Is the standard used by other simulators?" Wouter, what standard? You mean d_lambda rule? It's not a standard, it's a robust and effective rule of thumb that produces "sufficient" spatial accuracy in most cases.
Wouter Klijn
03:28:59
@ted: Robert talked about rxd being a standard. Hense my question what are other tools implementing the standard. Answer: Only implemented by NEURON
Dr Mainak Jas
03:30:35
is there a break at some point? or the lectures are back to back?
Bill Lytton
03:30:52
yes there is a break planned --
Robert McDougal
03:31:09
https://colab.research.google.com/drive/1ucFDBRABXJVqZ0OcNweqqNsySbd6lHTk?usp=sharing
Wouter Klijn
03:31:36
Looking at the agenda the break is between 19:00 and 19:00 (not a typo)
ted
03:32:47
concurrency
Ashraya
03:33:13
looking at the schedule for tomorrow, there is, hopefully, a typo that the session starts at 12am :D
Ashraya
03:33:18
tomorrow
Minhaz Abedin
03:34:09
Timezone please lol
Ashraya
03:34:17
berlin time
Wouter Klijn
03:34:33
https://cns2020online.sched.com
jamesbower
03:34:36
You can change the time zone on Sched
jamesbower
03:34:49
To wherever you are -
Ashraya
03:34:55
the irony is the first session starts at 12am and the second is at 1pm :D
jamesbower
03:35:21
Time in relative anyway, I understand :-)
Ashraya
03:35:32
:D
jamesbower
03:35:54
As are conduction values
ted
03:36:56
a real computational neuroscientist is impervious to irony
Wouter Klijn
03:37:53
Can the rdx concentrations be coupled between neurons?
ted
03:39:02
the usual coupling is nearest neighbor which you get for free
Taylor Kahl
03:39:47
Ashraya, I think that the 12am is not a typo! looks like it's actually the last event of today - 'today' being relative
Wouter Klijn
03:39:54
Almost neurons in a microcolumn are neighbours I understand. Could you define nearest neighbor in a 3d environment?
ted
03:40:07
adjacency
Wouter Klijn
03:40:22
So all neighbouring neurons in 3d?
ted
03:40:34
adjacency of compartments in space
Wouter Klijn
03:40:52
So the neurons have a shared coordinate frame?
Bill Lytton
03:41:40
yes
Adam Newton
03:42:11
You can use rxd.Extracellular to allow neurons to influence each other via diffusion of rxd.Species in the extracellular space
Wouter Klijn
03:42:37
Ok, then I can ask my original question. How would this work when neurons are distributed on multiple MPI nodes: are the borders transmitted? Is there some shared zone?
Bill Lytton
03:43:38
for extracellular full space is currently copied and resim'ed on every node -- this needs to be fixed in future
Bill Lytton
03:43:48
btw, also just in electrophysio world you can identify locations via pt3dadd for every section
Bill Lytton
03:44:15
MPI works for the electrophys since spikes are sent as events across cells
Wouter Klijn
03:44:48
@Bill lytton thanks
Robert McDougal
03:46:37
https://colab.research.google.com/drive/1PbQJu6Y66rsp2jhrMiB9V1sQKHZavfmb
Wouter Klijn
03:48:12
Might I suggest that in the end all links are shared in a single document?
Maria Psarrou
03:48:56
great idea
ted
03:48:57
if chat is persistent, does that count as a single document?
Ismael Jaras
03:49:10
lol
Wouter Klijn
03:49:11
I see what you did there.
arpit shrimankar
03:49:27
why other examples not open on rxd ?
Maria Psarrou
03:49:31
if connect and disconnect there is no access to the chat history
arpit shrimankar
03:49:38
that black one
Bill Lytton
03:49:49
i have been trying to keep up with all links in this gdoc
Bill Lytton
03:49:56
https://docs.google.com/document/d/1GCv6JVFX9Zm0wIAcsKaRFlppx9KMPhN7-1p25NqRdx8/edit#
Bill Lytton
03:50:01
not sure i caught all of them though
Wouter Klijn
03:50:27
Thanks
Maria Psarrou
03:50:27
thank you for sharing
ted
03:50:35
One of chat's options (see triple dots) is "save chat". Please please please save chat, Bill.
Bill Lytton
03:50:38
is editable by all so if i missed anything please add
Bill Lytton
03:50:54
save chat doesn't work if got kicked out and back in since lost all the early chat
Bill Lytton
03:51:09
anyone who has been on since beginning please save and then add that at bottom of gdoc
Bill Lytton
03:51:24
do you have it all ted?
ted
03:51:33
I have all chat, will save everything that now exists just in case I get dropped.
Bill Lytton
03:51:48
thx
Suranjana Gupta
03:52:45
Can we use RxD to model intra- and inter-cellular diffusion in a network model (cell-gap junction-cell)?
Bill Lytton
03:52:54
yes
ted
03:53:06
Be sure to remine me to save chat again at the very end, just so I'm not distracted by something else.
arpit shrimankar
03:53:16
why other examples not open on rxd ?(other than blue one)..were r their codes ?
Wouter Klijn
03:53:32
@ted remember to save the chat at the end!
Adam Newton
03:53:36
We are still in the process of providing tutorials for all the rxd examples, that's why some of the topics don't have links yet.
ted
03:53:52
not now, you mad fool . . .
Bill Lytton
03:54:05
we are happy to make all stuff public -- yes as adam says some stil cleaning up but if anything particularly interesting then ask us and we can give to you now
arpit shrimankar
03:55:31
I m just asking for information..thanks
ted
03:56:02
More information is always good. Thanks for asking.
Maliha A
03:58:30
Do you have any network stuff planned as well? :)
Maliha A
03:58:48
Great! thanks
Ismael Jaras
03:58:59
where are going to be the recording available?
Nikolas Andreakos
03:59:06
thanks a lot Robert
ted
03:59:10
I just saved chat up to this point. Passing the baton on to whoever follows the rest of the afternoon.
sidmitra
03:59:30
Thanks a lot
Nindy
04:00:26
thanks a lot!
Taylor Kahl
04:00:33
for anyone who is new to NEURON, I found this tutorial useful for learning the basics of the GUI, hoc and NMODL. it has 5 parts, first part starts here: http://web.mit.edu/neuron_v7.4/nrntuthtml/tutorial/tutA.html
Taylor Kahl
04:00:48
might not be as useful for people who want to work primarily in Python
Robert McDougal
04:01:20
I generally suggest https://www.neuron.yale.edu/neuron/docs/scripting-neuron-basics
Bill Lytton
04:01:22
ted -- can save chat now and then again at end of day?
Robert McDougal
04:01:30
in particular the scripting neuron basics and the ball and stick tutorials
Joe Graham
04:01:39
I have added a Links section to our tutorial website that will be updated with video/code/chat links: https://sites.google.com/neurosim.downstate.edu/cns2020-tutorial/
Alison Moss
04:01:50
thank you!!
Maria Psarrou
04:03:06
great ! thank you!
Maria Psarrou
04:03:11
great tutorial!
Rishika Mohanta
04:06:32
oof
Ismael Jaras
04:07:17
:O
Ismael Jaras
04:07:23
don’t die!
Rishika Mohanta
04:07:33
!
Wouter Klijn
04:08:35
No slides?
pramod.kumbhar@epfl.ch
04:08:37
no presentation window shared?
Wouter Klijn
04:15:13
Is the information added to model db curated or does anything go?
Wouter Klijn
04:16:34
Are models updated with neuron versions?
Wouter Klijn
04:18:20
Do I understand that NEURON does not make changes that would result in different results for modeldb models?
Collins
04:19:46
Thank you
Lakshmi
04:19:51
Thank you
Rozita Laghaei
04:19:59
thank you!
Nikolas Andreakos
04:20:02
Thanks a lot Robert
sidmitra
04:20:19
yes
Alison Moss
04:20:21
Awesome session thanks so much!
Robert McDougal
04:20:27
not breaking ModelDB NEURON entries: generally, yes, what worked before should continue to work, but there are occasional changes
Maliha A
04:20:29
Thank you, Robert!
sidmitra
04:20:34
yes
Rebekah Evans
04:20:55
Thanks! where will we be able to access the recording for this tutorial after it is over?
Wouter Klijn
04:20:57
@ RObert thank you for the answrs
Benjamin Barlow
04:21:09
Thanks Robert!
Tom Morse
04:21:31
ModelDB requires models to be associated with a peer reviewed publication. New NEURON versions are tested on a large subset of the NEURON models in Modeldb in an effort to retain backwards compatibility
Robert McDougal
04:21:53
we’ll put the link to the recording in the google doc and hopefully into sched
salvador
04:22:17
LINK TO NETPYNE SLIDES: bit.ly/cns20-netpyne
salvador
04:22:50
LINK TO NETPYNE SLIDES: http://bit.ly/cns20-netpyne
salvador
04:23:11
LINK TO ONLINE NETPYNE GUI: www.netpyne.org/gui
salvador
04:23:25
LINK TO ONLINE NETPYNE GUI: http://netpyne.org/gui
Joe Graham
04:27:19
@Rebekah We will post a link to the videos on the tutorial website: https://sites.google.com/neurosim.downstate.edu/cns2020-tutorial/home#h.x13r18wekjra
Wouter Klijn
04:32:09
These two code do the same thing?
Wouter Klijn
04:32:20
The information contains appears to be different.
Paris Doherty
04:33:19
yes
sidmitra
04:33:22
yes
Nikolas Andreakos
04:33:38
yes
Maliha A
04:33:39
yes
Afonso Pinto
04:33:39
yes
Shivangi Patel
04:33:40
yes
sidmitra
04:33:42
yes
Joe Graham
04:35:07
Let us know in chat if you have trouble getting the gun to run in your browser.
Joe Graham
04:35:13
gui
Rozita Laghaei
04:35:49
Are we going to have access to this gui after the workshop?
matteocantarelli
04:35:53
all good
arpit shrimankar
04:36:08
yes we have
arpit shrimankar
04:36:13
access
Joao Moreira
04:36:21
yes, netpyne and the gui is available to everyone already
Rozita Laghaei
04:36:50
thanks a lot!
Wouter Klijn
04:43:44
WHy only prototyping and beginners?
arpit shrimankar
04:44:06
awsome
Joe Graham
04:46:04
@Wouter The GUI is a great place to start, but it doesn’t have all of NetPyNE’s functionality. More advanced users tend to run everything from the command line.
Joe Graham
04:46:39
We are constantly expanding the GUI functionality, but it will always lag behind the codebase.
Robert McDougal
04:46:59
but note that everything that’s done in NetPyNE’s GUI (or NEURON’s GUI) can be exported to code so that you can always start in the GUI and switch to code
Dr Mainak Jas
04:48:31
but can we have access to the Neuron objects when we export? For e.g., if I want to code a more sophisticated rule
Robert McDougal
04:50:02
yes, you can get access to the underlying NEURON objects
Bill Lytton
04:53:00
https://www.biorxiv.org/content/10.1101/201707v4
Bill Lytton
04:54:37
https://arxiv.org/abs/2005.03764
Bill Lytton
04:55:52
bit.ly/CNS20-netpyne
Taylor Kahl
04:55:55
what are some advantages of NetPyNe over BMTK? better visualization tools?
Bill Lytton
04:57:05
perhaps better in some respects; also more scales -- down to reaction-diffusion
Dr Mainak Jas
04:58:58
I don’t see the arrow. Does it work on firefox?
Bill Lytton
04:59:33
should work on firefox but perhaps try chrome/chromium
Yunchang
05:00:27
Sorry could you repeat how to create a cell? Mine stops working
Bill Lytton
05:00:52
click on cell type
salvador
05:01:05
Netpyne vs bmtk - there are many similarities and both have pros and cons… some advantages of netpyne are: full declarative language, molecular scale (rxd), built-in parameter optimization methods, and the Graphical User Interface (GUI)
Yugarshi Mondal
05:02:08
are they randomly sized?
Yugarshi Mondal
05:02:19
automatically inside a population
Bill Lytton
05:02:38
all the neurons will be same size
Bill Lytton
05:02:56
population size will be defined by you as well
Yugarshi Mondal
05:02:58
ok thx
Bill Lytton
05:03:07
if anyone missed -- http://netpyne.org/gui to bring up the gui
salvador
05:03:23
And if you miss a step you can always check the slides, which contain step-by-step instructions - http://bit.ly/cns20-netpyne
arpit shrimankar
05:04:45
what is the effect of weight ?
Yunchang
05:04:53
If I want to add some inhomogeneity to the synaptic weights, what should I do?
Bill Lytton
05:04:54
strenght of the synapse
Maliha A
05:05:31
Weight = synaptic conductance?
Bill Lytton
05:05:47
will scale the synaptic conductance in general
Yugarshi Mondal
05:05:54
can custom models of synapses be integrated?
Bill Lytton
05:05:58
yes
Bill Lytton
05:06:23
most syn models will be written in NMODL (.mod) and would be included during nrnivmodl compilation
Dr Mainak Jas
05:07:36
it’s too quick ...
Alison Moss
05:07:56
need to catch up
Wouter Klijn
05:08:34
When I press enter at this location
Wouter Klijn
05:08:51
red roundish box with dend is created
Dr Mainak Jas
05:09:17
can I get access to the tutorial model so I can just load it? I missed a lot in the beginning ...
Wouter Klijn
05:09:18
press enter?
salvador
05:09:28
inhomogeneity in syn weights - you can use custom math expressions, see: http://www.netpyne.org/reference.html#function-string
salvador
05:10:25
Mainak - you can load the tutorial from the Tutorials menu -> Tutorial 1 (to avoid issues first do File -> New -> Blank)
Bill Lytton
05:10:27
access to the tutorial from Tutorial list at top
Bill Lytton
05:10:39
still on Tut 1
Yunchang
05:11:17
Thank you salvador : )
salvador
05:12:16
v_soma : { sec: soma, loc: 0.5, var: v}
salvador
05:12:52
v_dend : { sec: dend, loc: 0.5, var: v}
salvador
05:13:07
v_dend : { sec: dend, loc: 1.0, var: v}
Wouter Klijn
05:14:04
Error while instantiating the NetPyNE model
Wouter Klijn
05:14:10
Any way to find out what I did wrong?
Wouter Klijn
05:14:55
What are the debugging options?
salvador
05:15:27
We are working on providing feedback for errors; probably the best for now is click File->New->Blank and then load Tutorials -> Tutorial 1 from the menu
Bill Lytton
05:15:34
not yet a lot of error msgs .... working on that
salvador
05:16:10
you can try again later using the step slides or the tutorial recording
Paris Doherty
05:16:37
I can’t get Post-Synaptic Cells to be E Populatiion
Paris Doherty
05:16:52
How do I select E
Maliha A
05:17:24
The little arrow, and then click on E
sidmitra
05:17:30
Thanks, this was great!
Rozita Laghaei
05:17:49
it's AWESOME!
Wouter Klijn
05:17:58
Time line when the errors wlll be informative for users trying to debug their work?
salvador
05:18:29
Yes, thats the idea
salvador
05:18:41
thanks Sid and rozita
Bill Lytton
05:19:43
time line -- 3-6 mon i'd say
Taylor Kahl
05:19:55
what do the 3D points represent? many more than the beginning & end of a section
Bill Lytton
05:20:24
3Dpts give locations as sections curve
Bill Lytton
05:20:29
so many points to a section
Bill Lytton
05:20:44
and segments (cf nseg) are yet another measure along the section
Robert McDougal
05:20:45
the 3D points are the kind of data you get from NeuroMorpho.Org
Bill Lytton
05:21:31
so end up with 3 measures actually 0-1 along sec, loc of each seg, 3Dpts -- 3Dpts have no effect electrically but will make a difference in terms of molec diffusion
Yunchang
05:23:37
Could you explain what netstim means? Thank you
Robert McDougal
05:23:47
network stimulus
Robert McDougal
05:23:56
so like… here’s an artificial synaptic input
Yugarshi Mondal
05:23:57
is there some way to output the system of equations that are actually being simulated -- in case we want to check something
salvador
05:24:09
Netstim is an artificial spike generator that you can connect to cells
Robert McDougal
05:24:22
from outside of the modeled cell… you could have it generate according to a poisson train, or regular, or..
Yunchang
05:24:39
To every cell? Thank you Robert and salvador
Robert McDougal
05:24:57
you can feed input into your model however you want
salvador
05:25:20
yugarshi - yes, you can generate the python code from the GUI model
Yugarshi Mondal
05:25:34
ok thx!
Wouter Klijn
05:25:44
Is this connectivity generated on the backend? Or on the frontend?
Wouter Klijn
05:26:12
When hitting generate network does this result in resource utilization on a potential HPC system?
Facundo Luis Rodriguez
05:26:12
backend
Facundo Luis Rodriguez
05:26:28
Yes
Wouter Klijn
05:27:11
Any experience with punching firewall holes at HPC centers?
Wouter Klijn
05:28:12
'type arbitrary python code' and launch on a HPC node?
Facundo Luis Rodriguez
05:31:40
You could use the GUI to submit a job on a HPC, but the GUI does not have to run in a HPC.
Bill Lytton
05:35:19
Wouter -- but generally if you have access to an HPC and run python you can now run arbitrary code, right? so always a risk once someone can login; but you're saying that this will be used by students who normally wouln't have login
Michael Savage
05:35:50
Is the spacing scaled for mouse, what about larger animals like monkey etc?
Wouter Klijn
05:37:16
Correct, but this would be a logged in user. That accepted the usage contract. Has handed in his personal details.A webtool that is open can not be checked this way.
Bill Lytton
05:37:45
fair
Wouter Klijn
05:38:02
There are solutions: special accounts, but it shifts the responcibility to the front-end application.
Bill Lytton
05:38:08
can rescale spacing as needed for species
Michael Savage
05:38:19
thanks!
Wouter Klijn
05:38:36
And I would not take responcibility for arbitrary python code.
Wouter Klijn
05:39:27
Obviously you can still get around things, but the obviously security holes should be plugged.
pramod.kumbhar@epfl.ch
05:40:46
@Wouter - when netpyne will be integrated to HPC resource, I assume netpyne will be behind some authentication mechanism. Same as HBP collab discussions in the past.
Dr Mainak Jas
05:41:16
can you explain this figure a bit? What are we seeing? The wider cylinders are the soma?
Bill Lytton
05:42:13
current fig cylinder is a pump
Yugarshi Mondal
05:42:17
is there a verbose mode so that a user knows that something is actually running and not hanging?
Bill Lytton
05:42:21
SERCA pump from ER to cytoplasm
Dr Mainak Jas
05:42:37
sorry I meant the previous figure in the GUI, it’s not on screen anymore ...
Dr Mainak Jas
05:42:43
never mind
Bill Lytton
05:42:55
should be a little spinning thing but yeah hanging can be a problem
Bill Lytton
05:43:07
we should add some time updates
Wouter Klijn
05:43:49
@pramod. Both is possible: public access or with login.IMHO this tool is fancy and should be available for the general public.
Maliha A
05:44:19
When you run a new simulation with a different set of parameters, is there a way of storing the previous set of simulations for “easier” comparison?
Bill Lytton
05:44:59
can store the code to the netpyne files (simConfig.py netParam.py)
Bill Lytton
05:45:10
can output the results to files in pkl or json etc
Yugarshi Mondal
05:45:19
since connections are random -- can the same network be run multiple times so one can collect statistics on the same network run multiple times
Bill Lytton
05:45:29
yes
Paris Doherty
05:45:34
It turned blank
Wouter Klijn
05:45:42
Given that this is tool for teaching / prototyping. A third deployment option would be on the FENIX resources: These are fully public facing, not directly connected to the HPC data stores, You own the VM and data space that can be accessed. Any 'problems' would be your own.
Bill Lytton
05:45:52
we generally run 5 random wirings and 5 random input vectors (for driven sims)
Joe Graham
05:45:54
If it turns blank, refreshing usually works.
Paris Doherty
05:46:00
ok
Joe Graham
05:46:30
I added a Feedback section to the Google Doc (https://docs.google.com/document/d/1GCv6JVFX9Zm0wIAcsKaRFlppx9KMPhN7-1p25NqRdx8/edit#)
Paris Doherty
05:46:32
Still blank refreshed a couple times
Alison Moss
05:46:44
same for me just a blank black screen
Joe Graham
05:46:58
We would love feedback and suggestions for improvement.
Bill Lytton
05:47:05
usually reload works but worst case start again
Bill Lytton
05:47:15
feedback -- don't crash :)
Paris Doherty
05:47:27
:)
Wouter Klijn
05:47:54
Visualization is done on the frontend?
Facundo Luis Rodriguez
05:48:07
Backend also
Wouter Klijn
05:48:09
Analysis also?
Bill Lytton
05:48:11
i believe that that's all running backend?
Bill Lytton
05:48:30
most is backend -- calc backend -- facu?
Wouter Klijn
05:48:37
What is send? 2d pixels are preprocessed d3js objects?
Facundo Luis Rodriguez
05:48:42
Yes, all backend.
Yunchang
05:49:06
Is that possible to simulate different brain states such as slow wave sleep using the GUI? Or will that be possibly carried out using code?
Bill Lytton
05:49:22
this is js mystery to me -- not sure how js represents stuff - this html5 i think?
Dr Mainak Jas
05:49:23
can I run the GUI locally on my computer?
Paris Doherty
05:49:35
Still blank
Paris Doherty
05:49:40
:(
Bill Lytton
05:49:57
i think would be good idea to be able to get on individual computer or hpc but has proved hard to get a decent install script
Joe Graham
05:49:59
Try opening an incognito browser and going to netpyne.org/gui again.
Facundo Luis Rodriguez
05:50:04
We have three js for 3d and iframe for the plots
Alison Moss
05:50:06
same. I've restarted browser, itll say initializing Neypyne then just nothing
Paris Doherty
05:50:08
ok
Bill Lytton
05:50:15
brain states depend on changes in conductances so could do that all in GUI
Wouter Klijn
05:50:39
/cough containers /cough
Joe Graham
05:50:41
We’ve never had this many people using the GUI simultaneously. Sorry for any issues!
Bill Lytton
05:50:56
yes docker -- that's doable
Wouter Klijn
05:51:05
singularity
Robert McDougal
05:51:14
containers make a contained version work, but then it’s not integrated with your system
Alison Moss
05:51:14
incognito seems to be working, thanks!
Dr Mainak Jas
05:51:29
containers are not a good solution for software packages
Wouter Klijn
05:51:43
singularity is the HPC version that does tie in with the system
Paris Doherty
05:51:47
Thank yuo
Paris Doherty
05:51:52
you
Joe Graham
05:51:53
Thanks Alison, yeah, it froze for me on normal, but runs in incognito.
Bill Lytton
05:51:57
containers -- what's disadvantages?
Robert McDougal
05:52:04
they’er contained
Paris Doherty
05:52:04
yep
Wouter Klijn
05:52:07
versioning
Wouter Klijn
05:52:19
magic
Ziemowit Sławiński
05:52:26
Does the NetPyNE GUI work as well for the regular NEURON code written in Python?
Bill Lytton
05:52:28
the underlying software is contained but source files can come in and out
Wouter Klijn
05:52:33
storage of objects
Dr Mainak Jas
05:52:35
if I have two softwares using Neuron, they won’t use the same Neuron because they’re in different containers
Dr Mainak Jas
05:52:38
too much memory
Bill Lytton
05:52:51
ic
sidmitra
05:53:03
no
Dr Mainak Jas
05:53:09
avoid too many dependencies
sidmitra
05:53:15
y
Bill Lytton
05:53:33
"NetPyNE GUI work as well for the regular NEURON code written in Python? " -- will not extract things fully
Bill Lytton
05:53:56
for that can use ModelView in the old interviews GUI
Robert McDougal
05:54:23
(or ModelDB’s ModelView)
Bill Lytton
05:54:30
better
Maliha A
05:56:49
In defining the mechanism under cell section, are these predefined and only the parameters are allowed to be changed?
Ziemowit Sławiński
05:57:23
can you make an external NetConn input in NetPyNE, using make_event() method?
Bill Lytton
05:57:26
which mechanism? -- all can be selected for insertion
Bill Lytton
05:57:43
external -- use NetStim
Facundo Luis Rodriguez
05:58:37
You can load your own MOD files into the application
Paris Doherty
06:01:16
Got it
Michael Savage
06:03:45
All good for me
sidmitra
06:03:51
Works fine
Dr Mainak Jas
06:04:12
I get:
Dr Mainak Jas
06:04:14
There was an exception in plotRaster():matplotlib is required for plotting when the default backend "matplotlib" is selected.(<class 'ImportError'>, ImportError('matplotlib is required for plotting when the default backend "matplotlib" is selected.',), <traceback object at 0x7f3c7fddef08>)Plotting spike histogram...
Robert McDougal
06:04:21
me too
Shivangi Patel
06:04:43
me too
sidmitra
06:05:16
Raster plot gave an error but histogram and spectral was ok
sidmitra
06:05:22
Plotting raster...There was an exception in plotRaster():matplotlib is required for plotting when the default backend "matplotlib" is selected.
Paris Doherty
06:06:12
It says error for downloading netpyne and neuron
Alison Moss
06:06:20
same for the raster plot for me
Shivangi Patel
06:07:20
it worked after running everything
Shivangi Patel
06:07:30
after restart
Paris Doherty
06:07:44
here was an exception in plotRaster():matplotlib is required for plotting when the default backend "matplotlib" is selected.(<class 'ImportError'>, ImportError('matplotlib is required for plotting when the default backend "matplotlib" is selected.',), <traceback object at 0x7f63400ffe48>)Plotting spike histogram...
Tom Morse
06:08:37
I don’t know if it made a difference but it ran OK starting with an incognito browser and then signed into a google account
Paris Doherty
06:08:56
yeah
sidmitra
06:09:28
Still got error after running in order, will retry
Ziemowit Sławiński
06:09:46
could you once more share a link to the colab?
Shivangi Patel
06:09:59
try restart and run all
Maliha A
06:11:07
Thanks Shivangi- worked for me
Joe Graham
06:11:18
Click ‘Runtime’ in the CoLab File Menu and then click ‘Restart and run all’
Joe Graham
06:11:29
Thanks Shivagi.
sidmitra
06:14:22
Thanks, that worked for me now.
Maliha A
06:17:47
What is sync? How is it being measured?
Maliha A
06:18:06
I mean understand it as the strength of synchrony, but I mean how is it measured?
Rozita Laghaei
06:19:03
How can I load a model downloaded from ModelDB to NetPyNE?
Joe Graham
06:19:18
@Maliha see here: http://www.scholarpedia.org/article/Neuronal_synchrony_measures
Maliha A
06:19:37
Thanks, Joe!
Joe Graham
06:21:47
@Rozita We are collaborating with OSB (Open Source Brain) to make it easier to get models into NetPyNE.
Bill Lytton
06:22:19
in general a NEURON sim eg in modeldb will need to be ported to netpyne
Rozita Laghaei
06:23:11
That would be so great! thanks
Joe Graham
06:23:20
@Rozita: File -> Workspace -> Upload
Natalie Schieferstein
06:23:35
can you connect morphologically detailed units with gap junctions, specify their location and so on?
Bill Lytton
06:23:53
yes
Natalie Schieferstein
06:24:13
great, thanks!
Shivangi Patel
06:24:29
Can hoc and mod files which were used with NEURON be imported directly ?
Bill Lytton
06:24:47
hoc files for morph and all mod files yes
Joe Graham
06:25:10
@Natalie: see here: https://github.com/Neurosim-lab/netpyne/blob/development/doc/source/code/tut_gap.py
Bill Lytton
06:25:14
generic hoc code with eg loops creating cells can be imported but won't be in netpyne -- can't be parsed
sidmitra
06:27:21
@Joe for tut_gap.py we need development branch?
Kelvin Jones
06:28:28
It indicates that it plotted but there are no graphics?
Bill Lytton
06:28:30
this transfer works because we are starting wiht netpyne code not with arbitrary python code to define a network
Bill Lytton
06:28:53
you have to page down to see the graphics
Bill Lytton
06:29:06
but better yet is to do this copying salva is now doing
Maliha A
06:29:13
netpyne_geppetto.netParams = netParamsnetpyne_geppetto.simConfig = simConfig
Bill Lytton
06:29:17
so can see everything in the netpyne-GUI graphics
Joe Graham
06:29:19
@sidimtra Nope, it’s available in Master and also, we just released a new version of NetPyNE, so the pip3 install netpyne is identical to development.
Paris Doherty
06:29:56
Could someone past the code
sidmitra
06:30:27
@Joe Thanks!
Bill Lytton
06:34:16
joe where is all this code? - pointer?
Yugarshi Mondal
06:34:52
excellent, thx
Yugarshi Mondal
06:34:53
!
sidmitra
06:35:15
Maybe helpful to have a list of params that were modified during the demo
Ilaria Carannante
06:36:09
thank you!
sidmitra
06:36:12
Thanks!
Nima Dehghani
06:36:17
Thank you
Maliha A
06:36:23
This has been wonderful. Thank you!
Paris Doherty
06:36:24
Thank you
Ziemowit Sławiński
06:36:26
Thanks, great tutorial!
Maria Psarrou
06:36:26
thank you
Dr Mainak Jas
06:36:29
Thanks Salva
Alison Moss
06:36:32
This was fantastic thank you so much!!!
Shivangi Patel
06:36:32
@sidmitra The params list is at the end of code on collab
Michael Savage
06:36:32
Thanks a lot!
Afonso Pinto
06:36:38
Thank you. Very nice
Joao Moreira
06:36:40
Great job Salva!
John Carlo
06:36:41
Thank you very much.
Shivangi Patel
06:36:43
Thanksa lot!
Natalie Schieferstein
06:36:44
great tutorial, thanks a lot!!
Lakshmi
06:36:47
Thank you
Nindy
06:36:50
great tutorial! thank you
collins
06:36:52
thank you very much
Wouter Klijn
06:36:52
thank you so much!
Taylor Kahl
06:36:52
thanks - this was great!
pramod.kumbhar@epfl.ch
06:37:19
thank you!!!
Rozita Laghaei
06:37:20
thank you so much!
Carmen
06:37:24
fantastic workshop! thank you!!
Nima Dehghani
06:38:11
Thank you very much for a through tutorial. Just a quick q: how do you compare netpyne for net sims with Brian or NEST?
Paris Doherty
06:38:14
You’re still broadcasting
matteocantarelli
06:38:21
Thanks so much everyone, great session :)
Jai Grewal
06:39:14
Just wanted to ask: will the link for the recording be provided if someone missed a part of the workshop?
Joe Graham
06:39:31
Link will be posted to the tutorial website
Jai Grewal
06:39:42
Thanks!
Joe Graham
06:39:57
https://sites.google.com/neurosim.downstate.edu/cns2020-tutorial/home
salvador
06:40:42
Yes the link fro the recording will be available on Sched and the netpyne web
Wouter Klijn
06:44:24
Thank you again. See you at the next dev meeting
sidmitra
06:47:50
Thanks and bye
Adam Ponzi
06:47:59
thanks