Update optimization.py to run with neurotune instead of optimalneuron #18
Comments
Thanks for checking through these @VahidGh. Yes, neurotune (and pyelectro) have replaced optimalneuron. Unfortunately these files haven't been updated since that change. Also in that time, libNeuroML has become more stable, pyramidal hasn't been updated much & jNeuroML is the most well tested way for running NeuroML2 models. Now the preferred pipeline is: libNeuroML (create/edit model) -> NeuroML2 XML files -> jNeuroML (load) -> simulate -> check & optimise or libNeuroML (create/edit model) -> NeuroML2 XML files -> jNeuroML (load & export to NEURON) -> simulate -> check & optimise as opposed to: libNeuroML -> Pyramidal -> NEURON -> simulate -> check & optimise My suggestions for updating this code are:
Try my forks of neurotune and pyelectro, as I've retested & updated these recently. |
@pgleeson, Could you please explain what is the meaning of these gating parameters, and why do we choose these values? |
I wouldn't take any meaning from those particular values, they look like they are based on the HH model and probably were used just for testing. It's a long time since that code worked... |
@pgleeson, Thanks for your reply. I was going to look if I can do something with this code, regarding to the optimization case study issue. |
@pgleeson, another question related to the gating states of an ion channel: is there a way that I can represent a Markov model (gating dynamics) via NeuroML2/LEMS? |
For your 2nd question, see here an example of a kinetic scheme based channel specification in NeuroML2: https://github.com/NeuroML/NeuroML2/blob/development/LEMSexamples/LEMS_NML2_Ex4_KS.xml. This runs with jNeuroML (but not jNeuroML->NEURON), but I don't believe this channel type has been tested/used beyond this example... Re optimisation, I started this updated version of the optimiser code to work with c302, but it's not yet finished. Have a look if you like. Requires my forks of neurotune and pyelectro. Hope to get this more stable in the next week. |
Actually I needed that type of gating kinetics for other purposes (representing channel kinetics with Markov models I saw in some studies). Although here was not a right place to ask the question, but thank you for your explanation :) |
This issue is redundant, due to the work ongoing to use neurotune in c302, see https://github.com/openworm/CElegansNeuroML/blob/master/CElegans/pythonScripts/c302/tune/c302tuner.py, and ChannelWorm https://github.com/VahidGh/ChannelWorm/tree/cwFitter/cwFitter. The code in this repo using neurotune/optimalneuron probably won't be revived (sorry @vellamike)... |
@pgleeson, Now I'm much more familiar with all these stuff. I can also work on this if we need to. |
Based on the changes in the neurotune, I guess optimalneuron should be replaced with neurotune in the optimization.py.
The text was updated successfully, but these errors were encountered: